Clase: Mongo::Crypt::KMS::Azure::CredentialsRetriever Privado

Hereda:
Objeto
  • Objeto
Mostrar todo
Definido en:
lib/mongo/crypt/kms/azure/credentials_retriever.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.

Esta clase recupera las credenciales de Azure mediante el host de metadatos de Azure. Debe usarse cuando el controlador se usa en el entorno de Azure.

Colapso delresumen constante

HOST_PREDETERMINADO =

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.

Host predeterminado para obtener metadatos de Azure.

'169.254.169.254'

Colapso delresumen del método de clase

Detalles del método de clase

.fetch_access_token(extra_headers: {}, metadata_host: nil, timeout_holder: nil) ⇒ KMS::Azure::AccessToken

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Obtiene las credenciales de Azure del host de metadatos de Azure.

Parámetros:

  • encabezados adicionales (Hash) (predeterminado: {})

    Encabezados adicionales para la solicitud. Se utilizan para pruebas.

  • metadata_host (String | nil) (predeterminado: nulo)

    Host de metadatos de Azure. Se utiliza para pruebas.

  • timeout_holder (CsotTimeoutHolder | nil) (predeterminado: nulo)

    CSOT timeout.

Devuelve:

Aumentos:

  • (KMS::CredencialesNoEncontradas)

    Si no se pudieron encontrar las credenciales.

  • Error::TimeoutError si no se pueden recuperar las credenciales dentro del tiempo de espera.



44
45
46
47
48
49
50
51
52
53
54
# Archivo 'lib/mongo/crypt/kms/azure/credentials_retriever.rb', línea 44

def yo.obtener_token_de_acceso(encabezados adicionales: {}, metadata_host: nulo, timeout_holder: nulo)
  uri, req = prepare_request(encabezados adicionales, )
  respuesta analizada = obtener_respuesta(uri, req, timeout_holder)
  Azure::AccessToken.Nuevo(
    respuesta analizada.Fetch('access_token'),
    entero(respuesta analizada.Fetch('caduca en '))
  )
rescate Error de clave, ArgumentError => e
  propagar KMS::Credenciales no encontradas,
        "Larespuesta de metadatos de Azure no es válida: '#{parsed_response}'; #{e.class}: #{e.message}"
end