sql >> Base de Datos >  >> NoSQL >> MongoDB

Rails:almacenamiento de datos cifrados en la base de datos

Obtuve attr_encrypted trabajando con Mongo y Mongoid. Solo se necesitan unos pocos ajustes.

Asegúrese de que todos los campos encriptados que attr_encrypted crea automáticamente se creen explícitamente en el modelo. Por ejemplo, si tiene:

    attr_encrypted :email, :key => 'blah blah blah', :encode => true

necesitas tener:

    field :email, :type => String
    field :encrypted_email, :type => String

También tenga en cuenta que debe indicarle que codifique la cadena cifrada; de lo contrario, Mongo se quejará en voz alta.

Por último, si está encriptando un hash, haga esto:

    field :raw_auth_hash, :type => Hash
    field :encrypted_raw_auth_hash, :type => String

    attr_encrypted :raw_auth_hash, :key => 'blah', :marshal => true, :encode => true