Clase: Mongo::Crypt::ExplicitEncryptionContext Privado

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

Un objeto Context inicializado para un cifrado explícito

Subclases conocidas directas

ExplicitEncryptionExpressionContext

Resumen del atributo de la instancia

Atributos heredados de Context

#ctx_p

Resumen del método de instancia colapsar

Métodos heredados de Contexto

#bson_mode, #run_state_machine, #estado

Detalles del Constructor

#initialize(mongocrypt, io, doc, options = {}) ⇒ ExplicitEncryptionContext

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.

Nota:

El algoritmo de rango es únicamente experimental. No está destinado para

Crear un nuevo objeto ExplicitEncryptionContext

uso público.

Parámetros:

  • mongocrypt (Mongo::Crypt::Handle)

    un Handle que envuelve un objeto mongocrypt_t usado para crear un nuevo mongocrypt_ctx_t

  • io (ClientEncryption::IO)

    Una instancia de la clase IO que implementa los métodos de entrada/salida de controlador necesarios para ejecutar la máquina de estado

  • doc (BSON::Document)

    Un documento para encriptar

  • opciones (encriptada) (por defecto a: {})

Opciones Hash (options):

  • :key_id (BSON::Binary)

    Un objeto BSON::Binary de tipo :uuid que representa el UUID de la clave de datos para utilizar en el cifrado.

  • :key_alt_name (string)

    El nombre alternativo de la clave de datos que se utilizará para cifrar el valor.

  • algoritmo (string)

    El algoritmo utilizado para cifrar el valor. Los algoritmos válidos son "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic", "AEAD_AES_256_CBC_HMAC_SHA_512-Random", "Indexed", "Unindexed", "Range".

  • :contention_factor (Integer | nil)

    Factor de contención que se aplicará si el algoritmo de cifrado está configurado en "Índice". Si no se proporciona, el valor por defecto será 0. El factor de contención debe establecerse solo si el algoritmo de cifrado está configurado como «Indexado».

  • query_type (String | nil)

    Tipo de consulta que se aplicará si el algoritmo de cifrado está configurado como "Indexado" o "Por rango". Los valores permitidos son "igualdad" y "rango".

  • Opciones de rango (Hash | nil)

    Especifica las opciones de índice para un campo de Queryable Encryption que admite consultas de "rango". Las opciones permitidas son:

    • :min
    • max:
    • trim_factor
    • escasez
    • La :precisión min, max, trim_factor, sparsity y precisión deben coincidir con los valores definidos en encryptedFields de la colección de destino. Para double y decimal128, min/máx/precisión deben estar todos activados o todos desactivados.

Aumenta:



64
65
66
67
68
69
# Archivo 'lib/mongo/crypt/explicit_encryption_context.rb', línea 64

def inicializar(mongocrypt, io, doc, opciones = {})
  super(mongocrypt, io)
  set_key_opts(opciones)
  set_algorithm_opts(opciones)
  init(doc)
end

Detalles del método de instancia

#init(doc) ⇒ objeto

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.



71
72
73
# Archivo 'lib/mongo/crypt/explicit_encryption_context.rb', línea 71

def init(doc)
  Vinculante.ctx_explicit_encrypt_init(sí mismo, doc)
end