Docs 菜单
Docs 主页
/
MongoDB Manual
/ / / / /

配置外部身份提供者

在此页面上

  • 关于此任务
  • 开始之前
  • 步骤

要使用 OAuth 2.0 配置 Workload Identity Federation,请向Microsoft Azure或Google Cloud Platform (GCP ) 等外部身份提供商注册您的 OAuth 2.0应用程序。这样可以实现安全身份验证并简化用户管理。

Workload Identity Federation 使用 OAuth 2.0访问权限令牌。这些令牌可以由任何外部身份提供商颁发。

以下过程将Microsoft Azure Entra ID和Google Cloud Platform配置为MongoDB的外部身份提供者。

  • To use Microsoft Azure as an identity 提供商, you must have a Microsoft Azure account.

  • 要将 Google Cloud 作为身份提供商,您必须拥有 Google Cloud 帐号。

为了使用Azure托管身份或Azure服务主体访问权限自管理MongoDB实例,您需要注册Azure Entra ID应用程序。如果您现有的应用程序已注册用于 Workforce(人类用户)访问权限,我们建议您注册一个单独的应用程序用于工作负载访问权限。

1
  1. 导航至 App registrations

    1. Azure 门户 中 帐户、 ,然后单击Atlas Search Microsoft Entra ID

    2. 在左侧导航栏的 Manage 部分,单击 App registrations

  2. 单击 New registration(连接)。

  3. 应用以下值。

    字段

    Name

    MongoDB - Workload

    Supported Account Types

    Accounts in this organizational directory only (single tenant)

    Redirect URI

    Web

2

对于应用程序访问权限,最佳实践是使用服务主体标识符作为MongoDB用户标识符,同时在自管理MongoDB部署中定义访问权限权限。如果您计划使用这种常用方法,请跳过此步骤。但是,如果您更愿意使用群组标识符(例如Azure AD 安全群组标识符),则可以通过以下步骤在应用程序注册中设立群组声明。

  1. 导航至 Token Configuration

    在左侧导航栏的 Manage 部分,单击 Token Configuration

  2. 单击 Add groups claim(连接)。

  3. Edit groups claim 模式中,选择 Security

    所选择的群组取决于您在 Azure 环境中配置的群组类型。 您可能需要选择不同类型的群组 来发送相应的群组信息。

  4. Customize token properties by type(按类型自定义令牌属性)部分,确保仅选择Group ID(群组 ID)。

    当您选择 Group ID 时,Azure 将发送安全组的对象 ID。

  5. 单击 Add(连接)。

    要了解有关添加群组声明的更多信息,请参阅 Azure 文档。

3
  1. 导航到左侧边栏中的Expose an API ,然后启用应用程序ID URI。

  2. 启用应用程序ID URI。

    保留Azure分配的默认应用程序ID URI,即 <application_client_id>。复制并存储此值,因为自管理MongoDB部署和所有MongoDB驱动程序都需要此值来进行 Workload Identity Federation 配置。

4
  1. 在左侧导航栏的 Manage 部分,单击 Manifest

  2. accessTokenAcceptedVersionnull 更新为 2

    数字 2 代表 Microsoft访问权限令牌的版本 2。其他应用程序可将其用作 Active Directory 托管用户的身份证明。版本 2 确保令牌是MongoDB可理解的JSON Web 令牌。

  3. 单击 Save(连接)。

要了解有关添加可选声明的更多信息,请参阅 Azure 文档。

5
  1. 在左侧导航栏中单击 Overview

  2. 在顶部导航栏中,单击 Endpoints

    复制 OpenID Connect metadata document 值,不包括 /.well-known/openid-configuration

    您还可以通过访问 OpenID Connect metadata document URL并复制 issuer 的值来检索此值。

下表显示了这些Microsoft Entra ID 用户界面值在MongoDBoidcIdentityProviders 参数中的映射:

Microsoft Entra ID UI
MongoDB oidcIdentityProviders 参数字段

OpenID Connect metadata document (without /.well-known/openid-configuration)

issuer

Application ID URI

audience

您无需在 Google Cloud 服务帐号中进行任何配置更改。

后退

工作负载(应用程序)