Clase: Mongo::Crypt::KMS::AWS::Credentials Private

Hereda:
Objeto
  • Objeto
Mostrar todo
Ampliado por:
Reenviable
Incluye:
Validaciones
Definido en:
lib/mongo/crypt/kms/aws/credentials.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.

El objeto Credenciales de AWS KMS contiene credenciales para utilizar el proveedor de AWS KMS.

Colapso delresumen constante

SUGERENCIA_DE_FORMATO =

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.

"Lasopciones del proveedor de AWS KMS deben tener elformato:" +
"{ access_key_id: 'ID DE SU CLAVE DE ACCESO', secret_access_key: 'CLAVE DE ACCESO SECRETA' }"

Colapso delresumen de atributos de instancia

Colapso del resumen del método de instancia

Métodos incluidos de Validaciones

#validate_param, validate_tls_options

Detalles del constructor

#inicializar(opciones) ⇒ Credenciales

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

Crea un objeto de credenciales de AWS KMS a partir de un hash de parámetros.

Parámetros:

  • opta (Hash)

    Un hash que contiene credenciales para el proveedor de AWS KMS

Opciones Hash (opts):

  • :id_de_clave_de_acceso (Cadena)

    ID de clave de acceso de AWS.

  • :clave de acceso secreta (Cadena)

    Clave de acceso secreta de AWS.

  • :session_token (String | nil)

    Token de sesión de AWS, opcional.

Aumentos:

  • (ArgumentError)

    Si faltan las opciones requeridas o están formateadas incorrectamente.



55
56
57
58
59
60
61
62
# Archivo 'lib/mongo/crypt/kms/aws/credentials.rb', línea 55

def inicializar(opta)
  @opts = opta
  a no ser que ¿vacío?
    @access_key_id = validate_param(:id_de_clave_de_acceso, opta, SUGERENCIA DE FORMATO)
    @clave_de_acceso_secreta = validate_param(:clave de acceso secreta, opta, SUGERENCIA DE FORMATO)
    @session_token = validate_param(:session_token, opta, SUGERENCIA DE FORMATO, requerido: false)
  end
end

Detalles de los atributos de instancia

#access_key_idCadena (solo lectura)

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

Devuelve la clave de acceso de AWS.

Devuelve:

  • (Cadena) -

    Clave de acceso de AWS.



31
32
33
# Archivo 'lib/mongo/crypt/kms/aws/credentials.rb', línea 31

def id de clave de acceso
  @access_key_id
end

#secret_access_keyCadena (solo lectura)

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

Devuelve la clave de acceso secreta de AWS.

Devuelve:

  • (Cadena) -

    Clave de acceso secreta de AWS.



34
35
36
# Archivo 'lib/mongo/crypt/kms/aws/credentials.rb', línea 34

def clave de acceso secreta
  @clave_de_acceso_secreta
end

#session_tokenString | nil (solo lectura)

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

Devuelve el token de sesión de AWS.

Devuelve:

  • ( Cadena| nulo ) —

    AWS session token.



37
38
39
# Archivo 'lib/mongo/crypt/kms/aws/credentials.rb', línea 37

def session_token
  @session_token
end

Detalles del método de instancia

#to_documentBSON::Document

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

Convierte el objeto de credenciales en un documento BSON en formato libmongocrypt.

Devuelve:

  • (BSON::Documento)

    Credenciales de AWS KMS en formato libmongocrypt.



67
68
69
70
71
72
73
74
75
76
77
# Archivo 'lib/mongo/crypt/kms/aws/credentials.rb', línea 67

def al_documento
  return BSON::Documento.Nuevo Si ¿vacío?
  BSON::Documento.Nuevo({
    accessKeyId: id de clave de acceso,
    secretAccessKey: clave de acceso secreta,
  }).grifo hacer |BSON|
    a no ser que session_token.nil?
      BSON.update({ sessionToken: session_token })
    end
  end
end