Búsqueda de Atlas
El cifrado consultable es incompatible con MongoDB Atlas Search.
Limitaciones específicas de la vista previa
Nota
Las siguientes limitaciones se aplican durante la vista previa técnica del cifrado consultable.
Factor de contención
El factor de contención es una configuración que ayuda a ajustar el rendimiento en función de la cantidad de conexiones simultáneas.
El factor de contención es inmutable y solo se puede configurar al especificar un campo para cifrado. El valor predeterminado es 0.
Creación manual de clave de datos
Debe crear manualmente una clave de cifrado de datos única para cada campo que desee cifrar. En una versión futura, podrá omitir el campo keyId de su encryptedFieldsMap y un controlador compatible con el cifrado consultable creará el
DEK automáticamente.
Compactación manual
Necesitarás ejecutarlo manualmente Compactación de índices cuando las colecciones de metadatos superen los 1 GB durante la versión preliminar técnica. En una versión futura, la compactación se ejecutará automáticamente cuando las colecciones de metadatos superen un tamaño definido.
La compactación es un proceso que reduce el tamaño de las colecciones de metadatos asociadas con los campos cifrados y mejora el rendimiento.
encryptedFieldsMap Modificación
No modifique el encryptedFieldsMap pasado a su MongoClient durante la vista previa técnica. Esto podría provocar un comportamiento inesperado e incorrecto al realizar consultas.
Soporte para operaciones de lectura y escritura
El mongod solo almacena el valor cifrado y aplica cualquier expresión de agregación u operador de consulta que especifique un campo cifrado BinData al BinData valor. Si bien la expresión u operador puede admitir BinData campos, el valor resultante puede ser incorrecto o inesperado en comparación con la ejecución de la misma expresión u operador con el valor descifrado. El mongod genera un error si la expresión u operador no admite BinData valores.
Soporte de topología
Se admiten conjuntos de réplicas y clústeres fragmentados
No se admiten implementaciones independientes
No se admiten lecturas secundarias
particionado
Las colecciones de metadatos no deben fragmentarse
Las claves de fragmentos no deben ser campos cifrados
CRUD
El cifrado consultable no admite operaciones por lotes. Las siguientes operaciones no son compatibles: -
db.collection.insertMany()-db.collection.updateMany()-db.collection.deleteMany()El cifrado consultable limita argumentos.
db.collection.findAndModify()-fieldsno está permitido -newdebe ser falso
Colecciones
El cifrado consultable solo es compatible con colecciones nuevas. No se puede añadir ni eliminar el cifrado consultable de colecciones existentes.
No se pueden especificar
jsonSchemade a al crear una colección de cifrado consultabledb.createCollection()sijsonSchemacontiene laencryptpalabra clave. No se puede usar el cifrado a nivel de campo del lado del cliente con el cifrado consultable en la misma colección.Puede especificar tanto
encryptedFieldscomojsonSchemaa siempredb.createCollection()que su jsonSchema no contenga validación para campos cifrados.El cifrado consultable no admite la migración automática desde una colección sin cifrar. Debe importar los documentos uno por uno.
El cifrado consultable no admite la migración desde colecciones cifradas con cifrado de nivel de campo del lado del cliente. Debe descifrar sus documentos e importarlos uno por uno.
El cifrado consultable no admite vistas, colecciones de series temporales ni colecciones limitadas.
El cifrado consultable no admite índices TTL ni índices únicos.
No se puede cambiar el nombre de una colección con campos cifrados.
No puedes deshabilitar la validación
jsonSchema.Validación automática de documentos de cifrado cuando
encryptedFieldsestá presente en la información de la colección.No puedes establecer
validationLevelennone.No puedes establecer
validationActionenwarn.
Colección Drop
Si se eliminan colecciones de un
MongoClientque no está configurado para cifrado consultable,no se eliminarán las colecciones de metadatos asociadas. ``mongod`` registra una advertencia si se elimina una colección con campos cifrados antes de eliminar las colecciones de metadatos.
Tip
Los controladores compatibles con cifrado consultable eliminan las colecciones de metadatos cuando eliminan la colección cuando se utiliza un MongoClient configurado para cifrado consultable.
Crear colección
Siempre debe crear colecciones explícitamente para usarlas con el cifrado consultable. La creación implícita de colecciones no creará los índices ni las colecciones de metadatos necesarios, lo que resultará en un rendimiento deficiente de las consultas.
Tipos de consulta
El tipo de query que especifiques para un campo al crear la colección en encryptedFieldsMap es inmutable. No puedes añadir nuevos tipos de consulta a un campo existente, ni puedes cambiar el tipo de consulta existente.
Nombres de campos cifrados
Los nombres de campo cifrados son inmutables. Por ejemplo, si especifica ssn como campo a cifrar, no podrá convertir el nombre de $rename campo taxPayerID en.
Vistas
Las aplicaciones no pueden confiar en la validación de cifrado automático para evitar consultas no admitidas en vistas de colecciones con campos cifrados.
Las consultas a vistas de colecciones que contienen valores cifrados con Cifrado Consultable pueden devolver resultados inesperados o incorrectos si la canalización de agregación de vistas subyacente o la consulta hacen referencia a campos cifrados. Si crea una vista en una colección que contiene valores cifrados con Cifrado Consultable, evite operar en campos cifrados para mitigar el riesgo de resultados inesperados o incorrectos.
Para obtener más información sobre las vistas, consulte vistas.
Intercalación
El cifrado consultable ignora las intercalaciones especificadas por el usuario o las predeterminadas de la colección. El cifrado oculta el valor del campo e impide el comportamiento normal de la intercalación. Las consultas sensibles a la intercalación en campos cifrados pueden devolver resultados inesperados o incorrectos.
Para obtener más información sobre las intercalaciones, consulte Documento de intercalación.
Si bien 6.0 los controladores compatibles con MongoDB versión o posteriores configurados para cifrado automático admiten operaciones de cifrado automático, para operaciones de lectura y escritura no compatibles, la biblioteca de soporte subyacente no puede introspeccionar el catálogo de colecciones para identificar la intercalación predeterminada. Por lo tanto, las aplicaciones no pueden confiar en la validación de cifrado consultable para evitar consultas en campos cifrados con valores de intercalación predeterminados.
Unique Indexes
Unique indexes No se puede garantizar la unicidad si la clave de índice especifica algún campo cifrado.
El cifrado consultable siempre produce un valor cifrado diferente para una entrada específica. El servidor considera que cada valor cifrado es único, aunque el valor descifrado no lo sea. Por lo tanto, la colección podría contener varios documentos con valores de texto sin formato duplicados para campos con una restricción única impuesta por el índice.
Aunque los controladores de MongoDB versión o posteriores 6.0 compatibles, configurados para el cifrado automático, admiten operaciones de cifrado automático para operaciones de lectura y escritura no compatibles, la biblioteca de soporte subyacente no puede introspeccionar el catálogo de índices para identificar un campo determinado como único. Las aplicaciones no pueden confiar en la validación automática del cifrado para evitar violaciones de la restricción única en campos cifrados aleatoriamente.
El campo _id
No se puede indicar a Queryable Encryption que cifre el campo _id porque depende del valor autogenerado por MongoDB.
Soporte de consultas de lectura y escritura
El cifrado automático admite un subconjunto de comandos, operadores de consulta, operadores de actualización, etapas de agregación y expresiones de agregación. Para obtener la documentación completa, consulte Operaciones compatibles con el cifrado automático.