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

Hereda:
Objeto
  • Objeto
Mostrar todo
Definido en:
lib/mongo/crypt/kms/documento_de_clave_maestra.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 KMS contiene parámetros de clave maestra KMS que se utilizan para la creación de claves de datos.

Colapso delresumen constante

KMS_PROVIDERS =

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.

Nombres de proveedores de KMS conocidos.

%w(AWS azur gcp kmip local).freeze

Colapso del resumen del método de instancia

Detalles del constructor

#inicializar(kms_provider, 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:

  • proveedor_kms. (Cadena) -

    Nombre del proveedor de KMS.

  • opciones (Hash)

    Un hash que contiene las opciones de la clave maestra para el proveedor KMS. Los parámetros requeridos para los proveedores KMS se describen en las clases correspondientes del módulo Mongo::Crypt::KMS.

Aumentos:

  • (ArgumentError)

    Si faltan las opciones requeridas o son incorrectas.



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Archivo 'lib/mongo/crypt/kms/master_key_document.rb', línea 40

def inicializar(proveedor de kms, opciones)
  Si opciones.nil?
    propagar ArgumentError.Nuevo('Las opciones clave del documento no deben ser nulas')
  end
  llave maestra = opciones.Fetch(:llave maestra, {})
  @key_document = caso proveedor de kms.a_s
    Cuando 'aws' entonces KMS::AWS::Documento de clave maestra.Nuevo(llave maestra)
    Cuando 'azure' entonces KMS::Azure::Documento de clave maestra.Nuevo(llave maestra)
    Cuando 'gcp' entonces KMS::GCP::Documento de clave maestra.Nuevo(llave maestra)
    Cuando 'kmip' entonces KMS::KMIP::Documento de clave maestra.Nuevo(llave maestra)
    Cuando 'local ' entonces KMS::Local::Documento de clave maestra.Nuevo(llave maestra)
    else
      propagar ArgumentError.Nuevo("Elproveedor de KMS debe ser uno de #{KMS_PROVIDERS}")
  end
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)

    Documento clave maestra como documento BSON.



59
60
61
# Archivo 'lib/mongo/crypt/kms/master_key_document.rb', línea 59

def al_documento
  @key_document.al_documento
end