Automatic Encryption Shared Library for Queryable Encryption
Overview
The Automatic Encryption Shared Library is a dynamic library that enables your client application to perform automatic Queryable Encryption. A dynamic library is a set of functionality accessed by an application at runtime rather than compile time. The Automatic Encryption Shared Library performs the following tasks:
Reads the encryption schema to determine which fields to encrypt or decrypt
Prevents your application from executing unsupported operations on encrypted fields
The Automatic Encryption Shared Library does not do any of the following:
Perform data encryption or decryption
Access the encryption key material
Listen for data over the network
Important
Supported MongoDB Server Products
Automatic Queryable Encryption is only available in the following MongoDB server products:
MongoDB Atlas 7.0 or later clusters
MongoDB Enterprise 7.0 or later
Automatic Queryable Encryption is not available in any version of MongoDB Community Server.
The Automatic Encryption Shared Library is a preferred alternative to mongocryptd
and does
not require you to spawn another process to perform automatic encryption.
Tip
While we recommend using the Automatic Encryption Shared Library, mongocryptd
is still supported.
To learn more about mongocryptd
, see Install and Configure mongocryptd for Queryable Encryption.
To learn more about automatic encryption, see Features.
Download the Automatic Encryption Shared Library
Download the Automatic Encryption Shared Library from the MongoDB Download Center by selecting the version and platform, then the library:
In the Version dropdown, select the version labeled as "current."
In the Platform dropdown, select your platform.
In the Package dropdown, select
crypt_shared
.Click Download.
Tip
To view an expanded list of available releases and packages, see MongoDB Enterprise Downloads.
Configuration
You can configure how your driver searches for the Automatic Encryption Shared Library through the following parameters:
Name | Description |
---|---|
cryptSharedLibPath | Specifies the absolute path to the Automatic Encryption Shared Library package, crypt_shared .Default: undefined |
cryptSharedLibRequired | Specifies if the driver must use the Automatic Encryption Shared Library. If true ,the driver raises an error if the Automatic Encryption Shared Library is unavailable. If false , the driver performs the following sequence of actions:
Default: false |
To view an example demonstrating how to configure these parameters, see the Quick Start.