Docs 菜单

Docs 主页开发应用程序MongoDB Manual

安装和配置 mongocryptd 以实现 Queryable Encryption

在此页面上

  • 概述
  • 安装
  • 配置
  • 举例

提示

使用自动加密共享库

MongoDB 发布了新的加密助手 crypt_shared称为“共享库” )。 共享库取代了mongocryptd ,并且不需要生成新进程。

注意

Enterprise 版功能

字段级加密的自动功能仅在 MongoDB Enterprise 4.2 或更高版本以及 MongoDB Atlas 4.2 或更高版本集群中可用。

mongocryptdMongoDB Enterprise Server(版本4 、 2及更高版本)一起安装。

当您创建启用了 Queryable Encryption 的 MongoDB 客户端时,默认情况下会自动启动mongocryptd进程并处理以下职责:

  • 使用指定的自动加密规则对读写操作中的字段进行标记,以便加密。

  • 防止对加密字段执行不支持的操作。

  • 解析为数据库连接指定的加密模式。 自动加密规则使用严格的 JSON schema 语法子集。 如果自动加密规则包含无效的自动加密语法任何文档验证语法, mongocryptd将返回错误。

mongocryptd 仅负责上述功能,不执行以下操作:

  • mongocryptd 本身不执行加密或解密

  • mongocryptd 访问任何加密密钥材料

  • mongocryptd 侦听网络

与 MongoDB42 兼容的驱动程序。 及更高版本使用 Apache 许可的 libmongocrypt 用于执行客户端字段级加密和自动解密的库。

官方 MongoDB 4 . 2 + 兼容驱动程序、 mongosh和4 。 2或更高版本的旧版mongo Shell 需要访问客户端主机上的mongocryptd进程。默认情况下,这些客户端在系统 PATH 中搜索mongocryptd进程。

对于支持的 Linux 操作系统,按照在 Linux 上安装教程安装 Server 包,遵循安装文档说明并安装 mongodb-enterprise Server 包。或者,指定 mongodb-enterprise-cryptd,仅安装 mongocryptd 二进制文件。包管理器将二进制文件安装到系统 PATH 的某个位置(例如 /usr/bin/

对于 OSX,请按照在 MacOS 上安装教程安装 Server 包。包管理器将二进制文件安装到系统 PATH 的某个位置。

对于 Windows,请按照在 Windows 上安装教程安装 Server 包。安装后,您必须将 mongocryptd 包添加到系统 PATH。有关将 mongocryptd 二进制文件添加到系统 PATH 的说明,遵循 Windows 安装文档的最佳实践。

如果通过官方 Tarball 或 ZIP 存档进行安装,请遵循操作系统所记录的最佳实践,向系统路径添加 mongocryptd 二进制文件。

如果 4.2+ 兼容驱动程序可以访问mongocryptd进程,则默认,驱动程序会托管mongocryptd进程的生成。

注意

mongocryptd 端口正在使用中

如果mongocryptd进程已在驱动程序指定的端口上运行,则驱动程序可能会记录警告并继续运行,而不会生成新进程。 驱动程序指定的任何设置仅在现有进程退出并且新的加密客户端尝试连接时适用。

您可以通过以下参数配置驱动程序启动mongocryptd的方式:

名称
说明
端口
mongocryptd 侦听消息的端口。
AutoEncryptionSettings中指定此值。
默认27020
idleShutdownTimeoutSecs
mongocryptd进程在退出之前应等待的空闲秒数。
AutoEncryptionSettings中指定此值。
默认60

重要

引导时启动

如果可能,我们建议在引导时启动mongocryptd ,而不是按需启动。

要查看如何配置 mongocryptd 进程的示例,请单击与应用程序中使用的驱动程序对应的标签页:

← 安装 libmongocrypt