Overview
您可以配置 MongoDB Agent(包括自动化、监控和备份),以使用 OIDC 工作负载身份联合向 MongoDB 部署进行身份验证。使用 OIDC 时,代理使用来自身份提供程序 (身份提供程序) 的短期令牌,而不是长期数据库凭证。代理会在这些令牌过期之前自动刷新它们。
本教程介绍如何:
在 MongoDB Ops Manager 中为您的 MongoDB 部署启用 OIDC 身份验证。
注册 OIDC 身份提供程序 配置。
配置 MongoDB Agent 以使用 OIDC 连接。
Considerations
不可逆的身份验证方法
为工作负载联合配置MongoDB 助手后,无法恢复为本地身份验证。
令牌刷新
MongoDB Agent 会在 OIDC 令牌过期前自动刷新它们。令牌的有效期取决于您的 身份提供程序 配置,通常范围为 5 到 60 分钟。
共享代理配置
OIDC 配置适用于所有代理功能:自动化、监控和备份。您无需单独配置每项功能。
先决条件
在为 OIDC 身份验证配置 MongoDB Agent 之前,请为您的 MongoDB 部署启用 OIDC 工作负载 Identity Federation。要了解更多信息,请参阅 使用 OAuth 2.0 设置 工作负载 Identity Federation。
步骤
要为 MongoDB Agent 配置 OIDC 身份验证:
添加 OIDC 身份提供商配置。
在 OIDC Connection and Authorization 部分中,单击 + OIDC IdP Configuration。
在 OIDC Protocol Settings窗口中,选择 Workload Identity Federation。
输入 身份提供程序 详细信息:
字段说明Configuration Name在 MongoDB Ops Manager 中标识此 身份提供程序 配置的前缀。
Issuer URI颁发访问令牌的 身份提供程序 的 URI。
Audience必须与您的 身份提供程序 颁发的 JWT 中的
aud声明相匹配。Authorization Method根据您的 身份提供程序 设置,选择 User ID 或 Group Membership。
Customize User Claim用于标识用户身份的声明。默认为
sub。单击 Save Configuration(连接)。
配置与部署的代理连接。
在 MongoDB Agent Connections to Deployment 部分,选择 Workload Federation。
重要
使用工作负载联合部署后,无法将MongoDB 助手恢复为本地身份验证。
输入代理身份验证详细信息:
字段说明OIDC IdP ConfigurationMongoDB Agent 用于身份验证的 身份提供程序配置。选择您在上一个步骤中创建的配置。
User Identifier用户主体声明值。Ops Manager将MongoDB用户创建为
[configuration name]/[user identifier]。Authentication Method代理的 身份提供程序 连接的身份验证方法。为 Okta 等标准 身份提供程序 集成选择 Client Credentials,或为 Azure 或 GCP 上的云原生工作负载身份选择 Built-in。
Client ID分配给代理的OAuth 2.0客户端ID 。使用 Client Credentials 时必需。
Client Secret分配给代理的 OAuth 2.0客户端密钥。使用 Client Credentials 时必需。
提示
如果您的 身份提供程序 使用云原生工作负载身份(例如 Azure 或 GCP),请选择 Built-in。您无需提供 Client ID 或 Client Secret。
单击 Save Settings(连接)。
零停机时间轮换代理凭证
要在不重启 MongoDB Agent 的情况下轮换代理的 OIDC 客户端密钥,请执行以下操作: