Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /
Fundamentals

Queryable Encryption con cifrado explícito

Aprenda a utilizar el mecanismo de encriptación explícita de Queryable Encryption.

El cifrado explícito es un mecanismo en el que se especifica cómo se desea cifrar y descifrar los campos en el documento durante cada operación que se realice en la base de datos.

El cifrado explícito está disponible en los siguientes productos de MongoDB utilizando la versión 6.0 o posterior:

  • MongoDB Community Server

  • MongoDB Enterprise Advanced

  • MongoDB Atlas

Las siguientes secciones proporcionan una visión general del uso de cifrado explícito en tu aplicación habilitada para Queryable Encryption:

ClientEncryption es una abstracción utilizada en varios drivers y mongosh que encapsula la Colección de Bóvedas de Llaves y KMS operaciones involucradas en el cifrado explícito.

Para crear una instancia de ClientEncryption, especifique:

  • Un objeto kmsProviders configurado con acceso a KMS que aloja su clave maestra del cliente

  • El espacio de nombres de tu Colección de Bóvedas de Llaves

  • Si utiliza MongoDB Community servidor, configure la opción bypassQueryAnalysis en True

  • Una MongoClient instancia con acceso a tu Colección de Bóvedas de Llaves

Para más opciones de ClientEncryption, consulte Opciones de MongoClient para Queryable Encryption.

Nota

Ejemplos de código no están disponibles actualmente, pero llegarán pronto.

Debe actualizar las operaciones de lectura y guardado en toda su aplicación para que esta cifre los campos antes de realizar operaciones de lectura y guardado.

Para cifrar campos, utiliza el método encrypt de tu instancia de ClientEncryption. Especifica lo siguiente:

  • El valor a cifrar

  • El algoritmo utilizado, ya sea Indexed o Unindexed

  • El ID de la llave de cifrado de datos

  • El factor de congestión (si se utiliza el algoritmo Indexed)

  • En caso de realizar una operación de lectura, configura el tipo de query definido para tu campo (si estás usando el algoritmo Indexed)

Nota

Tipos de consulta

El tipo de query solo se aplica a las operaciones de lectura.

Para aprender más sobre los tipos de consultas, ver Tipos de consultas.

Use el algoritmo Indexed si especifica un queryType en el campo.

Indexed admite queries de igualdad. Los campos de Indexed requieren un índice en el servidor. El índice se crea especificando la opción encryptedFields en db.createCollection().

Para descifrar tus campos automáticamente, debes configurar tu instancia de MongoClient de la siguiente manera:

  • Especifica un objeto kmsProviders

  • Especifique su Colección de Bóvedas de Llaves

  • Si utiliza MongoDB Community servidor, configure la opción bypassQueryAnalysis en True

Nota

El descifrado automático está disponible en MongoDB Community Server

Aunque el cifrado automático requiere MongoDB Enterprise o MongoDB Atlas, el descifrado automático está disponible en los siguientes productos de MongoDB que utilizan la versión 6.0 o superior:

  • MongoDB Community Server

  • MongoDB Enterprise Advanced

  • MongoDB Atlas

Especificar Campos para Cifrado para aplicar el cifrado de campos específicos en una colección.

Indexed los campos requieren un índice en el servidor. El índice se crea especificando la opción encryptedFields en db.createCollection().

Un cliente que realiza Queryable Encryption con el mecanismo de cifrado explícito en una instancia de MongoDB configurada para hacer cumplir el cifrado de ciertos campos debe cifrar esos campos según lo especificado en la instancia de MongoDB.

Para aprender a configurar la ejecución de Queryable Encryption del lado del servidor, consulta Field Encryption and Queryability.

Para obtener más información sobre las Colecciones de Bóvedas de Llaves, las llaves de cifrado de datos y las llaves maestras de cliente, consulta Claves y Key Vaults.

Para obtener más información sobre los proveedores KMS y objeto{s kmsProviders, consulte Proveedores KMS.

Volver

Colecciones

En esta página