MongoDB utiliza la biblioteca compartida de cifrado automático (recomendada) o la mongocryptd proceso ejecutable para traducir consultas en consultas cifradas y para cifrar o descifrar datos.
Antes de comenzar
Para utilizar CSFLE con cifrado automático, primero debes elegir el componente de análisis de consultas que quieres que MongoDB use para cifrar los campos.
crypt_shared, la biblioteca CSFLE recomendada.
mongocryptd, que se incluye en las instalaciones de MongoDB Enterprise Server.
La biblioteca libmongocrypt y los controladores de MongoDB requieren la biblioteca compartida de cifrado automático o mongocryptd para interpretar las consultas cifradas. Para obtener más información, consulte Instalar libmongocrypt para CSFLE.
Biblioteca compartida de cifrado automático
La Biblioteca Compartida de Cifrado Automático es una biblioteca dinámica que permite a su aplicación cliente realizar cifrado automático. Una biblioteca dinámica es un conjunto de funciones a las que una aplicación accede en tiempo de ejecución, en lugar de en tiempo de compilación. La Biblioteca Compartida de Cifrado Automático realiza las siguientes tareas:
Lee el esquema de cifrado para determinar qué campos cifrar o descifrar
Evita que su aplicación ejecute operaciones no admitidas en campos cifrados
La biblioteca compartida de cifrado automático no realiza ninguna de las siguientes acciones:
Realizar el cifrado o descifrado de datos
Acceder al material de la clave de cifrado
Escuchar datos a través de la red
La biblioteca compartida de cifrado automático es una alternativa preferida a mongocryptd y no requiere que usted genere otro proceso para realizar el cifrado automático.
Nota
Si bien recomendamos utilizar la librería compartida de cifrado automático, todavía se admite mongocryptd.
Para aprender más sobre el cifrado automático, consulta Funcionalidades de CSFLE.
mongocryptd
mongocryptd se instala con MongoDB Enterprise Server.
Cuando crea un cliente MongoDB habilitado para CSFLE, el proceso mongocryptd se inicia automáticamente de forma predeterminada.
El proceso mongocryptd:
Utiliza las reglas de cifrado automático especificadas para marcar campos en operaciones de lectura y escritura para el cifrado.
Evita que se ejecuten operaciones no admitidas en campos cifrados.
Analiza el esquema de cifrado especificado para la conexión a la base de datos. Las reglas de cifrado automático utilizan un subconjunto estricto de la sintaxis del esquema JSON. Si las reglas contienen una sintaxis de cifrado automático no válida o cualquier
schema validationsintaxis,mongocryptddevuelve un error.
mongocryptd sólo realiza las funciones anteriores y no realiza ninguna de las siguientes:
mongocryptdNo realiza cifrado ni descifradomongocryptdno accede a ninguna llave de cifradomongocryptdno escucha a través de la red
Para realizar el cifrado de campo y el descifrado automático, los controladores utilizan libmongocrypt con licencia Apache. biblioteca.
Los controladores oficiales de MongoDB requieren acceso al proceso mongocryptd en el host del cliente. Estos clientes buscan el proceso mongocryptd en el sistema PATH de forma predeterminada.
Pasos
Seleccione el componente de análisis de consultas que desee utilizar y siga los pasos para instalar y configurar un componente de análisis de consultas CSFLE.