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

Herda:
Objeto
  • Objeto
mostrar tudo
Inclui:
Validações
Definido em:
build/ruby-driver-v2.19/lib/mongo/crypt/KMS/Amazon Web Services/master_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.

Amazon Web Services KMS O objeto de documento de chave mestra contém KMS parâmetros de chave mestra .

Colapsode resumo constante

FORMAT_HINT =

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.

"O documento de chaveAmazon Web Services deve estar no formato: " +
"{ region: 'REGION', key: 'KEY' }"

Recolhimento do Resumo do atributo de instância

Recolhimento do Resumo do método de instância

Métodos incluídos nas Validações

#validate_param, validate_tls_options

Detalhes do construtor

#initialize(opts) ➤ 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:

  • opciona (Hash)

    Um hash que contém opções de chave mestra para o fornecedor do Amazon Web Services KMS .

Hash de opções (opts):

  • :region (string)

    Região Amazon Web Services .

  • :key (string)

    Amazon Web Services KMS Chave .

  • :endpoint (string | nil)

    Endpoint Amazon Web Services KMS , opcional.

Aumenta:

  • (ArgumentError)

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



49
50
51
52
53
54
55
56
57
58
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/Amazon Web Services/master_document.rb', linha 49

def inicializar(opciona)
  a menos que opciona.is_a?(Hash)
    aumentar ArgumentError.Novo(
      'As opções de documento chave devem conter uma chave chamada :master_key com um valor de Hash'
    )
  end
  @region = validate_param(:region, opciona, FORMAT_HINT)
  @key = validate_param(:key, opciona, FORMAT_HINT)
  @endpoint = validate_param(:endpoint, opciona, FORMAT_HINT, necessário: false)
end

Detalhes do atributo da instância

#endpointstring | nil (somente leitura)

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.

Amazon Web Services KMS Retorna o endpoint .

Retorna:

  • (string | nil)

    Endpoint do Amazon Web Services KMS .



35
36
37
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/Amazon Web Services/master_document.rb', linha 35

def endpoint
  @endpoint
end

#chavestring (somente leitura)

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.

Retorna a chave KMS do Amazon Web Services.

Retorna:

  • (string)

    Amazon Web Services KMS Chave .



32
33
34
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/Amazon Web Services/master_document.rb', linha 32

def chave
  @key
end

#regionstring (somente leitura)

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.

Retorna a região do Amazon Web Services.

Retorna:

  • (string)

    Região Amazon Web Services .



29
30
31
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/Amazon Web Services/master_document.rb', linha 29

def região
  @region
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 Amazon Web Services KMS no formato libmongocrypt.



63
64
65
66
67
68
69
70
71
72
73
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/Amazon Web Services/master_document.rb', linha 63

def to_document
  BSON::Documento.Novo({
    fornecedor: 'aws',
    região: região,
    chave: chave,
  }).toque fazer |BSON|
    a menos que endpoint.nada?
      BSON.update({ ponto de conexão: endpoint })
    end
  end
end