对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。
Docs 菜单

针对后端数据库的 OIDC 身份验证

Ops Manager和备份守护程序可以使用 OIDC 对所有支持的后端数据库进行身份验证。这包括Ops Manager 应用程序数据库、快照存储、 oplog存储和同步存储,其中包括 S3 支持的快照和oplog存储的元数据数据库。除了Ops Manager支持的现有身份验证机制之外,还可以使用 OIDC身份验证。为后端数据库启用 OIDC 不会禁用或替换已配置的任何其他身份验证机制。

本页介绍Ops Manager支持的后端数据库OIDC身份验证模式、启用 OIDC 的先决条件以及此功能的限制。本页介绍的 OIDC身份验证仅适用于Ops Manager和备份守护程序与后端数据库建立的连接。它不涵盖Ops Manager本身的最终用户身份验证。

Ops Manager支持两种用于后端数据库的OIDC身份验证模式。

模式
说明

自定义回调

使用客户端凭证流向任何符合 OIDC IdP(例如 Keycloak、Okta 或Azure)请求访问权限令牌。此模式需要客户端ID和客户端密钥。

内置环境身份验证

使用Azure、 GCP或Kubernetes的部署环境提供的工作负载标识。 MongoDB驾驶员自动从环境中获取工作负载身份令牌,并且此模式不需要客户端密钥。

在为后端数据库启用OIDC身份验证之前,请确认以下先决条件。

  • 后端数据库必须运行MongoDB 7.0.11 或更高版本。

  • 必须将MongoDB配置为允许MONGODB-OIDC 身份验证机制,并为要使用的oidcIdentityProviders IdP 定义 。

  • 对于自定义回调模式,您需要一个启用了客户端凭证流的 IdP客户端,并且 IdP 的令牌和 JWKS 端点必须可通过 HTTPS 访问。

  • 对于内置环境身份验证,部署环境必须已为Azure、 GCP或Kubernetes提供有效的工作负载身份。

  • Ops Manager服务器托管和备份守护程序托管必须都信任Java虚拟机(JVM)或操作系统信任存储中的 IdP 的 TLS 证书。如果 IdP 端点使用私有证书颁发机构或自签名证书,并且该证书不受信任,Ops Manager和备份守护程序将无法获取令牌,并显示 TLS 握手错误。

  • Ops Manager仅通过 公开Ops Manager 应用程序数据库的 OIDCconf-mms.properties 配置。管理界面不包括用于Ops Manager 应用程序数据库 OIDC 配置的用户界面。

  • 本页描述的 OIDC身份验证仅适用于Ops Manager和备份守护程序与后端数据库建立的连接。它不适应用针对Ops Manager的最终用户身份验证。

Ops Manager会在应用 OIDC 配置之前验证目标MongoDB版本。验证因连接类型而异:

  • 对于后端存储,通过管理界面或API使用早于 7.0.11 的目标MongoDB版本创建或更新存储会失败。

  • 对于Ops Manager 应用程序数据库,如果已启用 OIDC 并且Ops Manager 应用程序数据库运行早于 的MongoDB版本,Ops Manager会阻止初创企业。7.0.11

重要

更改Ops Manager 应用程序程序数据库 OIDC 设置需要重新启动Ops Manager。由于备份守护程序在初创企业时会读取相同的conf-mms.properties 文件,因此也要重新启动备份守护程序。

更改后端存储(例如快照存储、 oplog存储或同步存储)的 OIDC 设置还需要重新启动Ops Manager和备份守护程序。这与更改后端存储的用户名或密码时的现有行为一致。

如果需要回滚后端数据库的 OIDC身份验证,请执行适用的程序。

  • 对于Ops Manager 应用程序数据库,在mms.oidcEnabled false中将 设立为conf-mms.properties ,在连接配置中恢复非 OIDC身份验证机制,然后重新启动Ops Manager和备份守护程序。

  • 对于后端存储,通过管理界面或API禁用 OIDC。如果您使用API,提交带有该存储的非oidc: {enabled: false} OIDC身份验证配置的 ,然后重新启动Ops Manager和备份守护程序。