Classe: Mongo::Crypt::KMS::MasterKeyDocument Private

Herda:
Objeto
  • Objeto
mostrar tudo
Definido em:
build/ruby-driver-v2.19/lib/mongo/crypt/KMS/master_key_document.rb

Visão geral

Esta classe faz parte de uma API privada. Evite usar essa classe, se possível, pois ela pode ser removida ou alterada no futuro.

O objeto de documento de chave mestra KMS contém parâmetros de chave mestra KMS que são usados para a criação de chaves de dados.

Colapsode resumo constante

KMS_providers =

Essa constante faz parte de uma API privada. Você deve evitar usar essa constante, se possível, pois ela pode ser removida ou alterada no futuro.

Nomes de provedores KMS conhecidos.

%w(AWS Azure GCP KMIP Local).congelar

Recolhimento do Resumo do método de instância

Detalhes do construtor

#initialize(kms_provider, options) ➤ MasterKeyDocument

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Cria um objeto de documento de chave mestra a partir de um hash de parâmetros.

Parâmetros:

  • kms_provider. (string)

    Nome do provedor KMS.

  • opções (Hash)

    Um hash que contém opções de chave mestre para o provedor de KMS. Os parâmetros necessários para provedores de KMS são descritos em classes correspondentes dentro do módulo Mongo::Crypt::KMS.

Aumenta:

  • (ArgumentError)

    Se as opções necessárias estiverem ausentes ou incorretas.



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/master_key_document.rb', linha 40

def inicializar(kms_provider, opções)
  se opções.nada?
    aumentar ArgumentError.Novo('As principais opções de documentos não devem ser nulas')
  end
  master_key = opções.buscar(:master_key, {})
  @key_document = caso kms_provider.to_s
    quando 'aws' então KMS::AWS::Documento MasterKey.Novo(master_key)
    quando 'azure' então KMS::Azure::Documento MasterKey.Novo(master_key)
    quando 'gcp' então KMS::GCP::Documento MasterKey.Novo(master_key)
    quando 'kmip' então KMS::KMIP::Documento MasterKey.Novo(master_key)
    quando 'local' então KMS::Local::Documento MasterKey.Novo(master_key)
    mais
      aumentar ArgumentError.Novo("O provedor de KMS deve ser um dos #{KMS_providers}")
  end
end

Detalhes do método de instância

#to_document ➤ BSON::Document

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Converta o objeto de documento de chave mestra em um documento BSON no formato libmongocrypt.

Retorna:

  • (BSON::Document)

    documento de chave mestra como documento BSON.



59
60
61
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/master_key_document.rb', linha 59

def to_document
  @key_document.to_document
end