Classe: Mongo::Crypt::KMS::Credentials Private

Herda:
Objeto
  • Objeto
mostrar tudo
Definido em:
build/ruby-driver-v2.19/lib/mongo/crypt/KMS/credentials.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 Credenciais KMS contém credenciais para usar provedores KMS.

Recolhimento do Resumo do atributo de instância

Recolhimento do Resumo do método de instância

Detalhes do construtor

#initialize(kms_providers) ➤ Credenciais

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.

Observação:

Pode haver mais de um fornecedor de KMS especificado.

Cria um objeto de credenciais KMS a partir de um hash de parâmetros.

Parâmetros:

  • kms_providers (Hash)

    Um hash que contém credenciais para provedores de KMS. O hash deve ter nomes de provedor KMS como chaves e parâmetros exigidos para cada provedor como valores. 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 formatadas incorretamente.



54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/credentials.rb', linha 54

def inicializar(kms_providers)
  se kms_providers.nada?
    aumentar ArgumentError.Novo("As opções do fornecedor de KMS não devem ser nulas")
  end
  se kms_providers.chave?(:aws)
    @aws = AWS::Credenciais.Novo(kms_providers[:aws])
  end
  se kms_providers.chave?(:azure)
    @azure = Azure::Credenciais.Novo(kms_providers[:azure])
  end
  se kms_providers.chave?(:gcp)
    @gcp = GCP::Credenciais.Novo(kms_providers[:gcp])
  end
  se kms_providers.chave?(:kmip)
    @kmip = KMIP::Credenciais.Novo(kms_providers[:kmip])
  end
  se kms_providers.chave?(:local)
    @local = Local::Credenciais.Novo(kms_providers[:local])
  end
  se @aws.nada? && @azure.nada? && @gcp.nada? && @kmip.nada? && @local.nada?
    aumentar ArgumentError.Novo(
      "As opções do fornecedor de KMS devem ter uma das seguintes chaves: " +
      ":aws, :azure, :gcp, :kmip, :local"
    )
  end
end

Detalhes do atributo da instância

#Amazon Web ServicesCredenciais::AWS | 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.

Retorna credenciais do Amazon Web Services KMS .

Retorna:

  • (Credenciais::AWS | nil)

    Credenciais do Amazon Web Services KMS .



28
29
30
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/credentials.rb', linha 28

def AWS
  @aws
end

#azureCredenciais::Azure | 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.

Retorna credenciais do Azure KMS.

Retorna:

  • (Credenciais::Azure | nil)

    Credenciais Azure KMS.



31
32
33
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/credentials.rb', linha 31

def Azure
  @azure
end

#gcp ➤ Credenciais::GCP | 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.

Retorna credenciais GCP KMS.

Retorna:

  • (Credenciais::GCP | nil)

    Credenciais GCP KMS.



34
35
36
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/credentials.rb', linha 34

def GCP
  @gcp
end

#kmip ➤ Credenciais::KMIP | 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.

Retorna credenciais KMIP KMS.

Retorna:

  • (Credenciais::KMIP | nil)

    Credenciais KMIP KMS.



37
38
39
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/credentials.rb', linha 37

def KMIP
  @kmip
end

#localCredenciais::Local | 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.

Retorna credenciais locais do KMS.

Retorna:

  • (Credenciais::Local | nil)

    Credenciais KMS locais.



40
41
42
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/credentials.rb', linha 40

def Local
  @local
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 credenciais em um documento BSON no formato libmongocrypt.

Retorna:

  • (BSON::Document)

    Credenciais como documento BSON.



84
85
86
87
88
89
90
91
92
# File 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/credentials.rb', linha 84

def to_document
  BSON::Documento.Novo.toque fazer |BSON|
    BSON[:aws] = @aws.to_document se @aws
    BSON[:azure] = @azure.to_document se @azure
    BSON[:gcp] = @gcp.to_document se @gcp
    BSON[:kmip] = @kmip.to_document se @kmip
    BSON[:local] = @local.to_document se @local
  end
end