ClientEncryption.encryptExpression(keyId, expression, encOptions)ClientEncryption.encryptExpressionencripta un Expresión MQL para consultar un índice de rango, utilizando elkeyIddel campo consultado y el tipo de consulta y algoritmo del documentoencOptions. Devuelve el resultado cifrado de la query.Devuelve: El resultado cifrado de la query como un objeto
binary datacon subtipo 6.
Compatibilidad
Este comando está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB
MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.
Sintaxis
clientEncryption = db.getMongo().getClientEncryption() clientEncryption.encryptExpression( keyId, expression, encOptions )
Parameter | Tipo | Descripción |
|---|---|---|
|
| La clave de cifrado de datos para el campo consultado en la expresión. La UUID es un objeto BSON |
| Documento | |
| Documento | Un documento con los campos:
|
Comportamiento
Los métodos mongosh de cifrado a nivel de campo del lado del cliente y Queryable Encryption requieren una conexión de base de datos configurada para el cifrado del lado del cliente. Si la conexión actual a la base de datos no se inició con el cifrado a nivel de campo del lado del cliente habilitado, entonces:
Utilice el constructor
Mongo()demongoshpara establecer una conexión con las opciones de cifrado de campo requeridas del lado del cliente. ElMongo()método admite los siguientes proveedores de Servicios de Gestión de Claves (KMS) para la gestión de la Clave Maestra del Cliente (CMK):
or
Utilice las
mongoshopciones de línea de comandos para establecer una conexión con las opciones requeridas. Estas opciones solo son compatibles con el proveedor KMS de Amazon Web Services para la gestión de CMK.
Ejemplos
clientEncryption.encryptExpression( UUID("64e2d87d-f168-493c-bbdf-a394535a2cb9"), { $and: [{ val: { $gt: Int32('100') } }, { val: { $lt: Int32('150') } }] }, { algorithm: 'range', queryType: 'range', rangeOptions: { min: Int32('0'), max: Int32('200') }, contentionFactor: 8 })
Si tiene éxito, ClientEncryption.encryptExpression devuelve el resultado de la consulta cifrado.
Obtén más información
Para obtener documentación completa sobre el inicio de conexiones de MongoDB con el cifrado a nivel de campo del lado del cliente o Queryable Encryption habilitado, consulte Mongo().