Docs 菜单

Docs 主页MongoDB Ops Manager

为 Ops Manager 项目启用 LDAP 身份验证

在此页面上

  • 考虑因素
  • 步骤

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

MongoDB Enterprise支持将身份验证请求代理到轻量级目录访问协议 (LDAP) 服务。

LDAP 仅适用于 MongoDB Enterprise 版本。 如果现有部署在 MongoDB Community 版本上运行,则必须将其升级到 MongoDB Enterprise ,然后才能为 Ops Manager 项目启用LDAP

MongoDB Enterprise 支持通过saslauthd和操作系统库以简单 SASL 方式绑定到轻量级目录访问协议 (LDAP) 服务器:

  • MongoDB Enterprise for Linux 可以通过saslauthd绑定到 LDAP 服务器,或者(从 MongoDB 3.4 开始)通过操作系统库绑定到 LDAP 服务器。

  • 从 MongoDB 版本 3.4 开始,MongoDB Enterprise for Windows 可以通过操作系统库绑定到 LDAP 服务器。

MongoDB 手册中的LDAP 代理身份验证LDAP 授权部分提供了有关 LDAP 和 MongoDB 的更多信息。设置 LDAP 和 SASL 超出了本文档的范围。

此操作步骤介绍如何在使用自动化时配置和启用 LDAP 身份验证。 如果 Ops Manager 不托管监控或备份,您必须手动将其配置为使用 LDAP 。 要配置LDAP ,请参阅为 LDAP 配置 MongoDB 助手

注意

如果要重置项目的身份验证和 TLS 设置,请先取消 Ops Manager 在项目中托管的任何 MongoDB 部署

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 助手使用相同的证书颁发机构文件连接到部署中的每个项目。

在运行 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 部署。

警告

建议将 TLS(安全传输层)/SSL(安全套接层)与 LDAP(轻量级目录访问协议)结合使用

默认情况下, LDAP流量以纯文本形式发送。 这意味着凭证(用户名和密码)会受到基本网络威胁,例如嗅探器和重放。 使用LDAPS ( LDAP over TLS / SSL ) 对身份验证进行加密。 许多现代目录服务(例如 Active Directory)都需要加密连接。

3
  1. MongoDB Agent Connections to Deployment 部分,选择 LDAP

  2. 选择适当的LDAP身份验证类型。

    重要

    • 如果您使用 LDAP 授权,则必须选择Native LDAP Authentication

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

4

重要

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

如果您在上一步中选择了Saslauthd ,请跳过此步骤。

如果选择了Native LDAP Authentication ,请完成以下步骤:

  1. 提供以下值:

    设置
    服务器 URL
    指定一个或多个 LDAP 服务器的hostname:port组合。
    transportSecurity
    选择TLS加密 LDAP 查询。 如果您不需要加密 LDAP 查询,请选择None
    超时(毫秒)
    指定身份验证请求在超时之前应等待的时间。
    绑定方法

    选择SASLSimple

    重要

    如果您选择Simple绑定方法,请从Transport Security中选择TLS ,因为Simple绑定方法以纯文本形式传递密码。

    SASL 机制
    指定 MongoDB 在 LDAP 服务器中使用哪种 SASL 身份验证服务。
    查询用户(LDAP 绑定 标识名)
    指定连接到 LDAP 服务器时 MongoDB 绑定到的 LDAP 标识名。
    查询密码(LDAP 绑定 标识名)
    指定连接到 LDAP 服务器时 MongoDB 绑定的密码。
    LDAP 用户缓存失效间隔
    指定 MongoDB 等待刷新 LDAP 用户缓存的时间。 默认为30秒。
    用户到标识名的映射
    指定 JSON 文档数组,这些文档提供 MongoDB 对经过身份验证的 MongoDB 用户名执行的有序转换。 然后,MongoDB 将转换后的用户名与 LDAP DN 进行匹配。
    验证 LDAP 服务器配置

    选择ON验证 LDAP 服务器配置,或选择OFF跳过验证。

    如果为ON且配置无效,则 MongoDB 部署将不会启动。

  2. LDAP Authorization部分中,输入以下字段的值:

    设置
    LDAP Authorization
    切换到ON以启用 LDAP 授权。
    Authorization Query Template
    为 LDAP 查询 URL 指定模板,以检索 LDAP 用户的 LDAP 群组列表。
    User to Distinguished Name Mapping
    指定 JSON 文档数组,这些文档提供 MongoDB 对经过身份验证的 MongoDB 用户名执行的有序转换。 然后,MongoDB 将转换后的用户名与 LDAP DN 进行匹配。
5

注意

记住

Ops Manager 限制代理在每个部署中只能使用一种机制

  1. Agent Auth Mechanism部分选择LDAP选项。

  2. 为 MongoDB 助手提供档案:

    设置
    MongoDB Agent Username
    输入LDAP用户名。
    MongoDB Agent Password
    输入助手的LDAP用户名密码。
    MongoDB Agent LDAP Group 标识名
    如果已启用 LDAP 授权,请输入 MongoDB Agent 用户所属群组的标识名
6
7
8

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

9

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

← 为您的 Ops Manager 项目启用用户名和密码身份验证

在此页面上