Menu Docs

Página inicial do DocsDesenvolver aplicaçõesManual do MongoDB

Como o CSFLE descriptografa documentos

Nesta página

  • Metadados usados para descriptografia
  • Processo de descriptografia automática
  • Comportamento de leitura criptografada automaticamente
  • Saiba mais

Esta página descreve como o CSFLE usa metadados do seu diretório de dados e da chave mestra do cliente para descriptografar dados.

Quando você criptografa dados usando o CSFLE, os dados criptografados são armazenados como um objeto BinData subtipo 6 que inclui os seguintes metadados:

  • O _id do diretório de dados usado para criptografar os dados

  • O algoritmo de criptografia usado para criptografar os dados

O diretório de dados contém metadados que descrevem qual chave mestra do cliente foi usada para criptografá-las.

Os drivers e mongosh usam esses metadados para tentar descriptografar automaticamente seus dados.

Para descriptografar automaticamente seus dados, seu cliente habilitado para CSFLE executa o seguinte procedimento:

  1. Verifique os metadados blob do BinData do campo que você pretende descriptografar para a Chave de criptografia de dados e o algoritmo de criptografia usados para criptografar o valor.

  2. Verifique a collection de cofre de chaves configurada na conexão de reconhecimento de data center atual para o diretório de dados especificado. Se a collection de cofre de chaves não contiver a chave especificada, a descriptografia automática falhará e o driver retornará um erro.

  3. Verifique os metadados da Chave de criptografia de dados para a Chave mestra do cliente (CMK) usada para criptografar o material da chave.

  4. Descriptografe a chave de criptografia de dados. Este processo varia de acordo com o provedor de KMS:

  5. Descriptografe o valor BinData usando a chave de criptografia de dados descriptografada e o algoritmo apropriado.

Os aplicativos com acesso ao servidor MongoDB que também não têm acesso ao CMK e às Chaves de criptografia de dados necessárias não podem descriptografar os valores BinData .

Para operações de leitura, o driver criptografa os valores de campo no documento de query usando seu esquema de criptografia antes de emitir a operação de leitura.

Em seguida, seu aplicativo cliente usa os metadados BinData para descriptografar automaticamente o documento que você recebe do MongoDB.

Para saber mais sobre esquemas de criptografia, consulte Esquemas de criptografia.

Para saber como configurar o reconhecimento de data center para criptografia no nível do campo do lado do cliente, consulte Opções do MongoClient específicas do CSFLE.

Para saber mais sobre o relacionamento entre diretório de dados e chave mestra do cliente, consulte Chaves e cofres de chaves.

← Componentes de criptografia CSFLE