Clase: Mongo::Crypt::KMS::GCP::MasterKeyDocument Privado

Hereda:
Objeto
  • Objeto
Mostrar todo
Incluye:
Validaciones
Definido en:
lib/mongo/crypt/kms/gcp/master_document.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 del documento de la clave maestra de GCP KMS contiene los parámetros de la clave maestra de 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.

"Eldocumento clave de GCP debe tener elformato:" +
"{ project_id: 'ID_PROYECTO', location: 'UBICACIÓN', " +
"key_ring: 'KEY-RING', key_name: 'KEY-NAME' }"

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) ⇒ MasterKeyDocument

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 documento de clave maestra a partir de un hash de parámetros.

Parámetros:

  • opta (Hash)

    Un hash que contiene opciones de clave maestra para el proveedor GCP KMS.

Opciones Hash (opts):

  • :id_del_proyecto (Cadena)

    Identificación del proyecto GCP.

  • :ubicación (Cadena)

    Ubicación de GCP.

  • :llavero (Cadena)

    Llavero GCP KMS.

  • :key_name (Cadena)

    Nombre de clave KMS de GCP.

  • :key_version (String | nil)

    Versión de la clave KMS de GCP, opcional.

  • :punto final (String | nil)

    Punto final de clave KMS de GCP, opcional.

Aumentos:

  • (ArgumentError)

    Si faltan las opciones requeridas o son incorrectas.



62
63
64
65
66
67
68
69
70
71
72
73
# Archivo 'lib/mongo/crypt/kms/gcp/master_document.rb', línea 62

def inicializar(opta)
  Si opta.¿vacío?
    @vacío = true
    return
  end
  @id_del_proyecto = validate_param(:id_del_proyecto, opta, SUGERENCIA DE FORMATO)
  @ubicación = validate_param(:ubicación, opta, SUGERENCIA DE FORMATO)
  @llavero = validate_param(:llavero, opta, SUGERENCIA DE FORMATO)
  @key_name = validate_param(:key_name, opta, SUGERENCIA DE FORMATO)
  @key_version = validate_param(:key_version, opta, SUGERENCIA DE FORMATO, requerido: false)
  @punto final = validate_param(:punto final, opta, SUGERENCIA DE FORMATO, requerido: false)
end

Detalles de los atributos de instancia

#punto finalCadena | nulo (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 punto final de GCP KMS.

Devuelve:

  • ( Cadena| nulo ) —

    Punto final de GCP KMS.



44
45
46
# Archivo 'lib/mongo/crypt/kms/gcp/master_document.rb', línea 44

def punto final
  @punto final
end

#key_nameCadena (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 nombre de la clave KMS de GCP.

Devuelve:

  • (Cadena) -

    Nombre de clave KMS de GCP.



38
39
40
# Archivo 'lib/mongo/crypt/kms/gcp/master_document.rb', línea 38

def key_name
  @key_name
end

#key_ringCadena (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 llavero KMS de GCP.

Devuelve:

  • (Cadena) -

    Llavero GCP KMS.



35
36
37
# Archivo 'lib/mongo/crypt/kms/gcp/master_document.rb', línea 35

def llavero
  @llavero
end

#key_versionString | 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 la versión de la clave KMS de GCP.

Devuelve:

  • ( Cadena| nulo ) —

    Versión de la clave KMS de GCP.



41
42
43
# Archivo 'lib/mongo/crypt/kms/gcp/master_document.rb', línea 41

def key_version
  @key_version
end

#ubicaciónCadena (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 ubicación de GCP.

Devuelve:

  • (Cadena) -

    Ubicación de GCP.



32
33
34
# Archivo 'lib/mongo/crypt/kms/gcp/master_document.rb', línea 32

def ubicación
  @ubicación
end

#project_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 el ID del proyecto de GCP.

Devuelve:

  • (Cadena) -

    Identificación del proyecto GCP.



29
30
31
# Archivo 'lib/mongo/crypt/kms/gcp/master_document.rb', línea 29

def id del proyecto
  @id_del_proyecto
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 documento de clave maestra en un documento BSON en formato libmongocrypt.

Devuelve:

  • (BSON::Documento)

    Credenciales de GCP KMS en formato libmongocrypt.



78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# Archivo 'lib/mongo/crypt/kms/gcp/master_document.rb', línea 78

def al_documento
  return BSON::Documento.Nuevo({}) Si @vacío
  BSON::Documento.Nuevo({
    proveedor: 'gcp',
    ID del proyecto: id del proyecto,
    ubicación: ubicación,
    llavero: llavero,
    keyName: key_name
  }).grifo hacer |BSON|
    a no ser que key_version.nil?
      BSON.update({ Versión de clave: key_version })
    end
    a no ser que punto final.nil?
      BSON.update({ punto final: punto final })
    end
  end
end