ClientEncryption.encryptExpression(keyId, expression, encOptions)ClientEncryption.encryptExpressioncriptografa uma expressão MQL para consultar um índice de faixa, usando o campo querykeyIde o tipo de query e o algoritmo do documentoencOptions. Retorna o resultado criptografado da query.Retorna: O resultado codificado da query como um objeto
binary datacom subtipo 6.
Compatibilidade
Esse comando está disponível em implantações hospedadas nos seguintes ambientes:
- MongoDB Atlas: The fully managed service for MongoDB deployments in the cloud
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Sintaxe
clientEncryption = db.getMongo().getClientEncryption() clientEncryption.encryptExpression( keyId, expression, encOptions )
Parâmetro | Tipo | Descrição |
|---|---|---|
|
| A chave de criptografia de dados para o campo consultado na expressão. The UUID is a BSON |
| documento | A expressão de query de intervalo a ser criptografada, como um dos seguintes:
|
| documento | Um documento com os campos:
|
Comportamento
The mongosh client-side field level and queryable encryption methods require a database connection configured for client-side encryption. If the current database connection was not initiated with client-side field level encryption enabled, either:
Utilize o construtor
Mongo()domongoshpara estabelecer uma conexão com as opções de criptografia do nível do campo do lado do cliente exigido. O métodoMongo()suporta os seguintes fornecedores de serviço de gerenciamento de chaves (KMS) para gerenciamento da chave mestra do cliente (CMK):
ou
- Use the
mongoshcommand line options to establish a connection with the required options. The command line options only support the Amazon Web Services KMS provider for CMK management.
Exemplos
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 })
Se for bem-sucedido, ClientEncryption.encryptExpression retornará o resultado da query criptografada.
Saiba mais
Para obter a documentação completa sobre o início de conexões MongoDB com o Client-Side Field Level Encryption ou o Queryable Encryption ativado, consulte Mongo().