Docs 菜单
Docs 主页
/
MongoDB Ops Manager
/ /

为 Ops Manager 项目启用 x.509 身份验证

在此页面上

  • 先决条件
  • 步骤

Ops Manager 允许您配置所有客户端(包括 Ops Manager 代理)用于连接到 MongoDB 部署的身份验证机制。 您可以为每个项目启用多种身份验证机制,但必须为代理仅选择一种机制。

MongoDB支持 x. 509客户端和成员证书身份验证,用于安全的 TLS/SSL 连接。 x。 509身份验证允许用户和其他成员使用证书而不是用户名和密码向服务器进行身份验证。

重要

传输层安全 性 的完整说明 公钥基础设施 , X。509 证书和 证书颁发机构 超出了本教程的范围。本教程假定您事先了解 TLS并可以访问有效的 X. 509证书。

这些过程描述了如何在使用自动化时配置和启用 x.509 身份验证。 如果 Ops Manager托管您的代理,您必须手动将其配置为使用 x.509 身份验证。

注意

要了解更多信息,请参阅为 X.509 身份验证配置 MongoDB Agent。

重要

使用 x.509 客户端证书身份验证需要TLS / SSL 。 如果 Ops Manager 托管一个或多个现有部署,则在启用 x.509 身份验证之前,必须在 MongoDB 部署中的每个进程上启用TLS / SSL

注意

如果已启用TLS / SSL ,则可以跳过此过程。

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示该页,请从导航栏的 Projects(项目)菜单中选择所需的项目。

  3. 如果尚未出现,请单击侧边栏中的 Deployment(部署)。

  1. 单击 Clusters(集群)视图。

2
3
4
  1. 单击Add Option添加以下每个选项:

    选项
    必需
    必需
    选择 requireTLS
    必需
    提供服务器证书的绝对路径。
    必需

    如果已加密,请提供 PEM 密钥文件密码。

    重要

    如果.pem 证书文件的加密私钥采用 PKCS #8 格式,则必须使用 PBES2 加密操作。MongoDB Agent不支持将 PKCS #8 与其他加密操作结合使用。

    Optional
    如果要启用 FIPS 模式,请选择true
  2. 添加每个选项后,单击Add

  3. 添加所需选项后,单击Save

5
6
7

否则,请单击 Cancel,您可以进行其他更改。

注意

此过程是可选的。 它还允许副本集或分片集群的成员使用 x.509 证书相互进行身份验证。 如果未配置,副本集和分片集群成员仍可使用keyFile身份验证相互进行身份验证。

警告

此过程不可逆

如果为项目中的任何部署启用 x.509 成员证书身份验证,则无法为该部署禁用 x.509 成员证书身份验证,也无法在项目级别禁用 x.509 客户端身份验证。

为项目中的部署启用 x.509 成员证书身份验证不会为项目中的其他部署启用或要求 x.509 成员证书身份验证。 您可以选择启用项目中的每个其他部署以使用 x.509 成员证书身份验证。

重要

如果您配置了MongoDB Agent PEM并将security.clusterAuthMode : 设置为 x509Client connecting with server's own TLS certificate 会在 mongod 日志文件中显示警告,表明客户端正在使用服务器自己的 TLS 证书进行连接。

这是预期行为,因为 MongoDB Agent 使用内部授权配置连接到 Ops Manager。无需执行任何操作。

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示该页,请从导航栏的 Projects(项目)菜单中选择所需的项目。

  3. 如果尚未出现,请单击侧边栏中的 Deployment(部署)。

  1. 单击 Clusters(集群)视图。

2
3
4
  1. 单击Add Option添加每个选项。

    选项
    clusterAuthMode
    选择 x509
    clusterFile
    提供成员 PEM 密钥文件的路径。
  2. 在每个选项后,单击Add

5
6
7

否则,请单击 Cancel,您可以进行其他更改。

为每个部署的进程配置TLS / SSL选项后,您可以继续为 Ops Manager 项目启用 x.509 身份验证。

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示该页,请从导航栏的 Projects(项目)菜单中选择所需的项目。

  3. 如果尚未出现,请单击侧边栏中的 Deployment(部署)。

  1. 单击 Security 标签页。

  2. 单击 Settings 标签页。

  3. 执行以下操作之一:

    • 如果这是您第一次为此项目配置 TLS、身份验证或授权设置,请单击 Get Started(开始使用)。

    • 如果已经为此项目配置 TLS 身份验证或授权设置,请单击 Edit(编辑)。

2
字段
操作
MongoDB 部署传输层安全 (TLS)
将此滑块切换至 ON(开启)。
TLS CA 文件路径

TLS 证书颁发机构文件是 .pem 格式的证书文件,其中包含来自证书颁发机构的根证书链。MongoDB 助手使用相同的证书颁发机构文件连接到部署中的每个项目。

.pem证书文件的加密私钥必须采用 PKCS #1 格式。MongoDB Agent不支持 PKCS #8 格式。

在运行 MongoDB 进程的每个主机上键入 TLS 证书颁发机构文件的文件路径:

  • 在第一个框中键入所有 Linux 主机上的文件路径。

  • 在第二个框中键入所有 Windows 主机上的文件路径。

这将为项目中的 MongoDB 进程启用net.tls.CAFile设置。

单击 Validate(验证)测试部署中每个主机在您指定的路径上是否都有 TLS 证书颁发机构。

客户端证书模式

选择在连接到启用 TLS 的 MongoDB 部署时客户端应用程序或 MongoDB 助手是否必须提供 TLS 证书。每个 MongoDB 部署都会在这些客户端主机尝试连接时检查来自这些客户端主机的证书。如果选择要求客户端 TLS 证书,请确保它们有效。

接受的值为:

Optional
连接到 MongoDB 部署时,每个客户端都可以提供有效的TLS证书。 如果您mongodtlsMode 设置为 ,MongoDB 助手可能会使用 TLSNone 证书。
必需
此项目中的每个 MongoDB 部署都从 TLS 加密的网络连接开始。所有助手都必须使用 TLS 连接到任何 MongoDB 部署。
3

MongoDB Agent Connections to Deployment 部分,选择 X.509 Client Certificate (MONGODB-X509)

重要

如果您不使用 LDAP 授权,则必须将用户添加到 MongoDB 部署中的$external数据库。 有关示例,请参阅x。 509客户端证书身份验证。

4

重要

从 MongoDB 3.4 开始,只要先启用 LDAP 授权,就可以使用 LDAP、Kerberos 和 X.509 证书对用户进行身份验证,而无需$external数据库中的本地用户文档。 当此类用户成功进行身份验证时,MongoDB 会对 LDAP 服务器执行查询以检索该 LDAP 用户拥有的所有群组,并将这些群组转换为等效的 MongoDB 角色。

如果您不想启用 LDAP 授权,请跳过此步骤。

  1. 输入以下字段的值:

    设置
    LDAP Authorization
    切换到ON以启用 LDAP 授权。
    Authorization Query Template
    为 LDAP 查询 URL 指定模板,以检索 LDAP 用户的 LDAP 群组列表。
5

您可以为 MongoDB 部署启用多种身份验证机制,但 Ops Manager 代理只能使用一种身份验证机制。 选择X.509 Client Certificate (MONGODB-X509)连接到 MongoDB 部署。

  1. Agent Auth Mechanism部分选择X.509 Client Certificate (MONGODB-X509)选项。

  2. 为 MongoDB 助手提供档案:

    设置
    MongoDB Agent Username
    输入从代理的 PEM 密钥文件派生的 LDAPv3 标识名。
    MongoDB Agent Certificate File
    在相应操作系统的线路上提供代理的 PEM 密钥文件在服务器上的路径和文件名。
    MongoDB Agent Certificate Password
    如果 PEM 密钥文件已加密,请提供该文件的密码。
6
7
8

否则,请单击 Cancel,您可以进行其他更改。

9

启用 LDAP 授权后,您需要为指定用于 LDAP 授权的每个 LDAP 群组创建自定义 MongoDB 角色

后退

Kerberos

在此页面上