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. Evita usar esta clase si es posible, ya que puede ser eliminada o modificada en el futuro.

Esta clase recupera las credenciales de Azure utilizando el host de metadatos de Azure. Esto debe utilizarse cuando el controlador se utilice en el entorno de Azure.

Resumen de constantes colapsar

DEFAULT_HOST =

Esta constante es parte de una API privada. Deberías evitar usar esta constante si es posible, ya que podría ser retirada o cambiada en el futuro.

Host por defecto para obtener metadatos de Azure.

'169.254.169.254'

Resumen del método de clase colapsar

Detalles del método de clase

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

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Obtiene las credenciales de Azure desde el host de metadatos de Azure.

Parámetros:

  • cabeceras_extras (encriptada) (por defecto: {})

    Cabeceras extra que se añadirán a la solicitud. Esto se usa para pruebas.

  • metadata_host (String | nil) (valor por defecto: nil)

    Host de metadatos de Azure. Esto se utiliza para pruebas.

  • timeout_holder (CsotTimeoutHolder | nil) (valor por defecto: nil)

    CSOT timeout.

Devuelve:

Aumenta:

  • (KMS::CredentialsNotFound)

    Si no se encontraron las credenciales.

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



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

def sí mismo.fetch_access_token(cabeceras_adicionales: {}, metadata_host: nulo, timeout_holder: nulo)
  uri, req = prepare_request(cabeceras_extras, )
  parsed_response = fetch_response(uri, req, timeout_holder)
  Azure::AccessToken.Nuevo(
    parsed_response.obtener('access_token'),
    entero(parsed_response.obtener('expira_en'))
  )
rescate KeyError, ArgumentError => e
  propagar KMS::CredentialsNotFound,
        "La respuesta de metadatos de Azure no es válida: '#{parsed_response}'; #{e.clase}: #{e.message}"
end