Clase: Mongo::Crypt::KMS::Azure::MasterKeyDocument Privado

Hereda:
Objeto
  • Objeto
Mostrar todo
Incluye:
Validaciones
Definido en:
lib/mongo/crypt/kms/azure/master_document.rb

Overview

Esta clase forma parte de una API privada. Debe evitar usarla siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.

El objeto de documento de clave maestra de Azure KMS contiene parámetros de clave maestra de KMS.

Colapso delresumen constante

SUGERENCIA_DE_FORMATO =

Esta constante forma parte de una API privada. Debe evitar usarla siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.

"Eldocumento de clave de Azure debe tener elformato:" +
"{ key_vault_endpoint: 'KEY_VAULT_ENDPOINT', key_name: 'KEY_NAME' }"

Colapso delresumen de atributos de instancia

Colapso del resumen del método de instancia

Métodos incluidos de Validaciones

#validate_param, validate_tls_options

Detalles del constructor

#inicializar(opciones) ⇒ MasterKeyDocument

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Crea un objeto de documento de clave maestra a partir de un hash de parámetros.

Parámetros:

  • opta (Hash)

    Un hash que contiene opciones de clave maestra para el proveedor de Azure KMS.

Opciones Hash (opts):

  • :punto final de la bóveda de claves (Cadena)

    Punto de conexión del almacén de claves de Azure.

  • :key_name (Cadena)

    Nombre de la clave KMS de Azure.

  • :key_version (String | nil)

    Versión de la clave KMS de Azure, opcional.

Aumentos:

  • (ArgumentError)

    Si faltan las opciones requeridas o son incorrectas.



49
50
51
52
53
54
55
56
57
58
# Archivo 'lib/mongo/crypt/kms/azure/master_document.rb', línea 49

def inicializar(opta)
  a no ser que opta.is_a?(Picadillo)
    propagar ArgumentError.Nuevo(
      'Las opciones clave del documento deben contener una clave llamada:master_key con un valor Hash'
    )
  end
  @punto final de la bóveda de claves = validate_param(:punto final de la bóveda de claves, opta, SUGERENCIA DE FORMATO)
  @key_name = validate_param(:key_name, opta, SUGERENCIA DE FORMATO)
  @key_version = validate_param(:key_version, opta, SUGERENCIA DE FORMATO, requerido: false)
end

Detalles de los atributos de instancia

#key_nameCadena (solo lectura)

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve el nombre de la clave KMS de Azure.

Devuelve:

  • (Cadena) -

    Nombre de la clave KMS de Azure.



32
33
34
# Archivo 'lib/mongo/crypt/kms/azure/master_document.rb', línea 32

def key_name
  @key_name
end

#key_vault_endpointCadena (solo lectura)

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve el punto de conexión del almacén de claves de Azure.

Devuelve:

  • (Cadena) -

    Punto de conexión del almacén de claves de Azure.



29
30
31
# Archivo 'lib/mongo/crypt/kms/azure/master_document.rb', línea 29

def punto final de la bóveda de claves
  @punto final de la bóveda de claves
end

#key_versionString | nil (solo lectura)

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve la versión de la clave de Azure KMS.

Devuelve:

  • ( Cadena| nulo ) —

    Versión de clave KMS de Azure.



35
36
37
# Archivo 'lib/mongo/crypt/kms/azure/master_document.rb', línea 35

def key_version
  @key_version
end

Detalles del método de instancia

#to_documentBSON::Document

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Convierte el objeto de documento de clave maestra en un documento BSON en formato libmongocrypt.

Devuelve:

  • (BSON::Documento)

    Credenciales de Azure KMS en formato libmongocrypt.



63
64
65
66
67
68
69
70
71
72
73
# Archivo 'lib/mongo/crypt/kms/azure/master_document.rb', línea 63

def al_documento
  BSON::Documento.Nuevo({
    proveedor: 'azure',
    Punto final de keyVault: punto final de la bóveda de claves,
    keyName: key_name,
  }).grifo hacer |BSON|
    a no ser que key_version.nil?
      BSON.update({ Versión de clave: key_version })
    end
  end
end