为 Ops Manager 项目启用 Kerberos 身份验证
Overview
Ops Manager 允许您配置所有客户端(包括 Ops Manager 代理)用于连接到 MongoDB 部署的身份验证机制。 您可以为每个项目启用多种身份验证机制,但必须为代理仅选择一种机制。
MongoDB Enterprise支持使用 Kerberos 服务进行身份验证。 Kerberos 是一种适用于大型客户端/服务器系统的行业标准身份验证协议。
重要
设置和配置 Kerberos 部署超出了本文档的范围。 本教程假设您已为每个代理配置了 Kerberos 主体,并且每个代理都有一个有效的文件。
要使用 Kerberos 对 MongoDB 进行身份验证,您必须:
具有正确配置的 Kerberos 部署,
为 MongoDB 配置Kerberos 服务主体,以及
为代理添加Kerberos 用户主体。
MongoDB 手册的Kerberos 身份验证部分提供了有关将 MongoDB 与 Kerberos 结合使用的更多详细信息。
Considerations
Kerberos (GSSAPI)
仅适用于MongoDB Enterprise版本。 如果您有在MongoDB Community构建上运行的现有部署,则必须先将其升级到MongoDB Enterprise ,然后才能为MongoDB Ops Manager项目启用Kerberos (GSSAPI)
。
本教程介绍如何为 Ops Manager 项目之一启用 Kerberos,以及如何配置 Ops Manager 代理以连接到启用 Kerberos 的部署。
注意
如果要重置项目的身份验证和 TLS 设置,请先取消 Ops Manager 在项目中托管的任何 MongoDB 部署。
步骤
这些过程描述了如何在使用自动化时配置和启用 Kerberos 身份验证。 如果 Ops Manager不托管您的监控或备份,您必须手动将其配置为使用 Kerberos 进行身份验证。
有关说明,请参阅为 Kerberos 配置 MongoDB Agent。
为基于 Kerberos 的身份验证配置现有 Linux 部署
如果您使用 Ops Manager 托管项目中 Linux 上的现有部署,则必须为项目中的所有 MongoDB 部署配置 Kerberos 身份验证,然后才能为项目启用 Kerberos 身份验证。
为每个部署配置好 Kerberos 选项后,您可以继续为 Ops Manager 项目启用 Kerberos。
为 Ops Manager 项目启用 Kerberos
可选:指定 TLS 设置。
字段 | 操作 |
---|---|
MongoDB 部署传输层安全 (TLS) | 将此滑块切换至 ON(开启)。 |
TLS CA 文件路径 | TLS 证书颁发机构文件是
在运行 MongoDB 进程的每个主机上键入 TLS 证书颁发机构文件的文件路径:
这将为项目中的 MongoDB 进程启用 单击 Validate(验证)测试部署中每个主机在您指定的路径上是否都有 TLS 证书颁发机构。 |
集群 TLS CA 文件路径 | 包含来自证书授权机构的根证书链的 如果不指定
|
客户端证书模式 |
与Kerberos (GSSAPI)身份验证一起使用不需要 TLS。
选择身份验证机制。
在 MongoDB Agent Connections to Deployment 部分,选择 Kerberos (GSSAPI)。
输入您的 SASL 服务名称 。
SASL Service Name是mongod或mongos 的 Kerberos 服务主体名称。
重要
如果您不使用 LDAP 授权,则必须将用户添加到 MongoDB 部署中的$external
数据库。 有关示例,请参阅Kerberos 身份验证。
配置 LDAP 授权设置。
重要
从 MongoDB 3.4 开始,只要先启用 LDAP 授权,就可以使用 LDAP、Kerberos 和 X.509 证书对用户进行身份验证,而无需$external
数据库中的本地用户文档。 当此类用户成功进行身份验证时,MongoDB 会对 LDAP 服务器执行查询以检索该 LDAP 用户拥有的所有群组,并将这些群组转换为等效的 MongoDB 角色。
如果您不想启用 LDAP 授权,请跳过此步骤。
输入以下字段的值:
设置值LDAP Authorization
切换到ON以启用 LDAP 授权。
Authorization Query Template
为 LDAP 查询 URL 指定模板,以检索 LDAP 用户的 LDAP 群组列表。
为代理配置Kerberos (GSSAPI) 。
您可以为 MongoDB 部署启用多种身份验证机制,但 Ops Manager 代理只能使用一种身份验证机制。 选择Kerberos (GSSAPI)连接到 MongoDB 部署。
从Agent Auth Mechanism部分选择Kerberos (GSSAPI)选项。
为 MongoDB 助手提供档案:
如果使用 Linux,请配置:
设置值MongoDB Agent Kerberos Principal
Kerberos 主体。
MongoDB Agent Keytab Path
代理的 Keytab 路径。
如果使用 Windows,请配置:
设置值MongoDB Agent Username
Active Directory 用户名。
MongoDB Agent Password
Active Directory 密码。
Domain
Active 目录 域服务中域的 NetBIOS 名称。 必须全部大写。
为 LDAP 群组创建 MongoDB 角色。 (可选)
启用 LDAP 授权后,您需要为指定用于 LDAP 授权的每个 LDAP 群组创建自定义 MongoDB 角色。