Módulo: Mongoid::Config::cifrado Privado

Ampliado por:
Encriptación
Incluido en:
Mongoid::Config, cifrado
Definido en:
lib/mongoid/config/encryption.rb

Overview

Este módulo forma parte de una API privada. Debe evitar su uso siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.

Este módulo contiene la lógica para configurar el cifrado automático a nivel de campo del lado del cliente.

Resumen del método de instancia colapsar

Detalles del método de instancia

#encryption_schema_map(default_database, models = ::Mongoid.models) ⇒ encriptada

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

Generar el mapa del esquema de cifrado para los modelos proporcionados.

Parámetros:

  • default_database (string)

    El nombre por defecto de la base de datos.

  • modelos (arreglo<Mongoid::documento>) (predeterminado:::Mongoid.models)

    Los modelos para generar el mapa de esquemas. Por defecto, se aplica a todos los modelos de la aplicación.

Devuelve:

  • (encriptada)

    El mapa de esquemas de cifrado.



23
24
25
26
27
28
29
30
31
32
33
34
35
36
# Archivo 'lib/mongoid/config/cifrado.rb', línea 23

def mapa de esquema de cifrado(default_database, modelos = ::Mongoid.modelos)
  visitado = Configura.Nuevo
  modelos.each_with_object({}) hacer |Modelo, map|
    siguiente si visitado.incluir?(Modelo)
    visitado << Modelo
    siguiente si Modelo.¿Incorporado?
    siguiente a menos que Modelo.cifrado?

    database = Modelo.opciones_de_almacenamiento.obtener(:database) { default_database }
    llave = "#{base de datos}.#{modelo. nombre_colección}"
    props = (Modelo).fusionar(propiedades_para(Modelo, visitado))
    map[llave] = props a menos que props.¿vacío?
  end
end