Classe: Mongo::Crypt::KMS::GCP::CredentialsRetriever Private
- Herda:
-
Objeto
- Objeto
- Mongo::Crypt::KMS::GCP::CredentialsRetriever
- Definido em:
- lib/mongo/crypt/KMS/GCP/credentials_retriever.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.
Esta classe recupera credenciais GPC usando o host de metadados do Google Compute Engine. Deve ser usado quando o driver for usado na instância do Google Compute Engine.
Colapsode resumo constante
- METADATA_HOST_ENV =
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.
'GCE_METADATA_HOST'
- DEFAULT_HOST =
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.
'metadata.google.internal'
Recolhimento do Resumo do método de classe
-
.fetch_access_token(timeout_holder = nil) ➤ string
privado
Buscar token de acesso GCP.
Detalhes do método de classe
.fetch_access_token(timeout_holder = nil) ➤ string
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.
Buscar token de acesso GCP.
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/mongo/crypt/KMS/GCP/credentials_retriever.rb', linha 40 def auto.fetch_access_token(timeout_holder = nada) Anfitrião = ENV.buscar(METADATA_HOST_ENV) { DEFAULT_HOST } uri = URI("http://#{host}/computeMetadata/v1/instance/service-accounts/default/token") req = Líquido::HTTP::obter.Novo(uri) req['Metadata-Flabor'] = 'Google' res = fetch_response(uri, req, timeout_holder) se res.código != '200' aumentar KMS::CredentialsNotFound, "O host de metadados GCE reagiu com o código #{res.code}" end parsed_resp = JSON.parse(res.corpo, corpo) parsed_resp.buscar('access_token') salvar JSON::AnalisarError, KeyError => e aumentar KMS::CredentialsNotFound, "A resposta de metadados GCE é inválida: '#{res.body}'; #{e.classe}: #{e.}" salvar ::Tempo-limite::Erro, IOError, SystemCallError, Erro de soquete => e aumentar KMS::CredentialsNotFound, "Não foi possível receber a resposta de metadados do GCP; #{e.classe}: #{e.}" end |