本页介绍了与客户端字段级加密兼容的 MongoDB 和驱动程序版本。
➤ 使用选择语言下拉菜单选择您的驱动程序,并查看其与客户端字段级加密的兼容性。
MongoDB 版本和版本兼容性
使用Client-Side 字段级加密的自动加密仅适用于 MongoDB Enterprise 4.2 或更高版本。
MongoDB Community 和企业版 4.2 或更高版本提供使用客户端 Field Level Encryption 的显式加密。
驱动程序兼容性
要通过.NET/ C#驾驶员使用客户端字段级加密,请安装驾驶员版本.. 2100或更高版本。要使用密钥轮换API,请安装驾驶员版本..2 171或更高版本。
如果您使用的是驱动程序版本 3.0 或更高版本,则还必须完成以下步骤:
安装MongoDB。来自 NuGet 的驱动程序.Encryption包。该包支持自动加密。
如果您的应用程序在Linux上运行,请手动安装 libmongocrypt。然后,将
LIBMONGOCRYPT_PATH环境变量设立为libmongocrypt文件的绝对路径。如果您的应用程序在 64 位Linux上运行,并且您使用的是 3.4.3 或更早版本的驱动程序,请将以下几行 XML 添加到
.csproj文件中。更改<MongoDriverEncryptionVersion>元素的值以匹配您已安装的MongoDB.Driver.Encryption包的版本。
<PropertyGroup> <!-- replace the version here with your package version --> <MongoDriverEncryptionVersion>3.4.2</MongoDriverEncryptionVersion> <MongoDriverEncryptionPath>$(NuGetPackageRoot)mongodb.driver.encryption\$(MongoDriverEncryptionVersion)</MongoDriverEncryptionPath> </PropertyGroup> <PropertyGroup> <!-- Suppresses the duplicate file error --> <ErrorOnDuplicatePublishOutputFiles>false</ErrorOnDuplicatePublishOutputFiles> </PropertyGroup> <!-- Ensures the correct library after build or publish --> <Target Name="EnsureCorrectMongoEncryption" AfterTargets="Build;Publish" Condition="'$(RuntimeIdentifier)' != ''"> <!-- Determine paths based on current operation --> <PropertyGroup> <_TargetDir Condition="Exists('$(PublishDir)')">$(PublishDir)</_TargetDir> <_TargetDir Condition="'$(_TargetDir)' == ''">$(OutputPath)</_TargetDir> </PropertyGroup> <!-- Copy the correct library based on runtime identifier (RID) --> <ItemGroup> <_CorrectMongoLib Include="$(MongoDriverEncryptionPath)/runtimes/linux/native/x64/libmongocrypt.so" Condition="'$(RuntimeIdentifier)' == 'linux-x64'" /> <_CorrectMongoLib Include="$(MongoDriverEncryptionPath)/runtimes/linux/native/arm64/libmongocrypt.so" Condition="'$(RuntimeIdentifier)' == 'linux-arm64'" /> <_CorrectMongoLib Include="$(MongoDriverEncryptionPath)/runtimes/linux/native/alpine/libmongocrypt.so" Condition="'$(RuntimeIdentifier)' == 'linux-musl-arm64'" /> </ItemGroup> <!-- Copy with overwrite --> <Copy SourceFiles="@(_CorrectMongoLib)" DestinationFolder="$(_TargetDir)" Condition="'@(_CorrectMongoLib)' != ''" OverwriteReadOnlyFiles="true" /> <Message Text="Fixed MongoDB encryption library for $(RuntimeIdentifier)" Condition="'@(_CorrectMongoLib)' != ''" /> </Target>
要将客户端字段级加密、显式加密或密钥轮换API与Go驾驶员一起使用,请安装Go驾驶员版本.1 2或更高版本,并安装 libmongocrypt 1版本.5 。2 或更高版本。
要将客户端字段级加密与Java Sync 或Java Reactive Streams驾驶员一起使用,请安装驾驶员版本.. 3100或更高版本。要使用密钥轮换API,请安装mongodb-crypt 17版本..3 或更高版本。
要将客户端字段级加密与Java Reactive Streams驾驶员结合使用,请安装驾驶员版本.. 1120或更高版本。要使用密钥轮换API,请安装mongodb-crypt 17版本..3 或更高版本。
要将客户端字段级加密与 Node.js驾驶员结合使用,请安装驾驶员版本.. 340或更高版本。要使用密钥轮换API,请安装 mongodb-client-encryption 22版本..0 2-.x。
如果您使用的是 6.0 或更高版本的 Node.js 驱动程序,则还必须使用 mongodb-client-encryption 6.0 或更高版本。
要在PyMongo中使用客户端字段级加密,请安装驾驶员版本.. 3100或更高版本。要使用密钥轮换API,请安装 pymongocrypt 13版本..1 或更高版本。
要将客户端字段级别加密与 Rust 驱动程序配合使用,请安装驱动程序版本 2.4.0或更新版本。要使用密钥轮换 API,请安装 libmongocrypt 版本 1.8.0或更高版本。
要学习;了解有关密钥轮换API 的更多信息,请参阅轮换和重新包装加密密钥。