A criptografia em uso consiste em dois recursos:
Instalação
O uso da criptografia em execução em execução no driver C requer a dependência libmongocrypt. Consulte o Manual do MongoDB para obter instruções de instalação da libmongocrypt.
Após a instalação do libmongocrypt, configure o driver C com -DENABLE_CLIENT_SIDE_ENCRYPTION=ON
para exigir que a criptografia em uso seja ativada.
$ cd mongo-c-driver $ mkdir cmake-build && cd cmake-build $ cmake -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF -DENABLE_CLIENT_SIDE_ENCRYPTION=ON .. $ cmake --build . --target install
API
mongoc_client_encryption_t is used for explicit encryption and key management. mongoc_client_enable_auto_encryption and mongoc_client_pool_enable_auto_encryption is used to enable automatic encryption.
Os Queryable Encryption e CSFLE compartilham grande parte da mesma API com algumas exceções.
The supported algorithms documented in mongoc_client_encryption_encrypt_opts_set_algorithm do not apply to both features.
mongoc_auto_encryption_opts_set_encrypted_fields_map only applies to Queryable Encryption.
mongoc_auto_encryption_opts_set_schema_map only applies to CSFLE.
Análise de Query
Para oferecer suporte ao recurso de criptografia automática, uma das seguintes dependências é necessária:
O executável
mongocryptd
. Consulte a documentação do Manual do MongoDB : Instalar e configurar o mongocryptdA biblioteca
crypt_shared
. Consulte a documentação do Manual do MongoDB : Biblioteca compartilhada de criptografia automática
A mongoc_client_t or mongoc_client_pool_t configured with auto encryption will automatically try to load the crypt_shared
library. If loading the crypt_shared
library fails, the mongoc_client_t or mongoc_client_pool_t will try to spawn the mongocryptd
process from the application's PATH
. To configure use of crypt_shared
and mongocryptd
see mongoc_auto_encryption_opts_set_extra.