Docs 菜单
Docs 主页
/
MongoDB Cloud Manager
/ /

从 Microsoft Entra ID 中配置联合身份验证

在此页面上

  • 限制
  • 先决条件
  • 步骤
  • 添加域用户
  • 将 Microsoft Entra ID 配置为身份提供程序
  • 在Cloud Manager中将Microsoft Entra ID添加为身份提供者
  • (可选)映射组织
  • (可选)配置高级联合身份验证选项
  • 使用登录 URL 登录 Cloud Manager

本指南介绍如何将 Microsoft Entra ID 作为 IdP 以配置联合身份验证。

将 Microsoft Entra ID 和 Cloud Manager 集成后,您可以使用公司的档案登录 Cloud Manager 和其他 MongoDB 云服务。

Cloud Manager 不支持数据库用户的单点登录集成。

要将 Microsoft Entra ID 用作 Cloud Manager 的IdP ,必须具备:

  • Azure订阅。 要获取订阅,请访问 Microsoft Azure 门户。

  • 与您的订阅关联的 Microsoft Entra ID 租户。有关设置 Microsoft Entra ID 租户的信息,请参阅 Microsoft Entra ID 文档

  • Global Administrator 权限(在您的 Microsoft Entra ID 租户中)。

  • 自定义的可路由域名。

如果还没有这些用户,请使用 Azure 控制台将您的自定义域名添加到 Microsoft Entra ID 并创建用户:

1

将您的自定义域名添加到 Microsoft Entra ID 中,以创建属于您的域的用户。在添加您的域后,还必须将 Microsoft Entra ID DNS 信息添加到 DNS 提供程序的 TXT 记录中并验证配置。

要将您的自定义域添加到 Microsoft Entra ID 中,请参阅 Azure 文档

2

如果此类用户不存在,则在要授予数据库访问权限的 Microsoft Entra ID 中创建用户。 用户必须属于添加到 Microsoft Entra ID 的自定义域。

要创建 Microsoft Entra ID 用户,请参阅 Azure 文档。

使用 Azure 控制台将 Microsoft Entra ID 配置为 SAML IdP。您可以从 Gallery 中添加 MongoDB Cloud 应用,也可以手动配置应用程序。

1

要将 MongoDB Cloud 应用添加到您的 Microsoft Entra ID 租户中,请参阅 Azure 文档

提示

另请参阅:

2

将用户分配给应用程序。 完成本教程后,这些用户将可以访问 Cloud Manager 和其他 MongoDB 云服务。

要将 Microsoft Entra ID 用户分配给应用程序,请参阅 Azure 文档

3

要导航到 SAML 配置页面,请参阅 Azure 文档

4

要生成有效的 SAML 签名证书,您必须为适用于 Microsoft Entra ID 企业应用程序的 IdentifierReply URL 分配临时值。如果在设置这些值之前下载证书,下载的证书将不是唯一的,您必须在设置这些值后重新下载证书。

要设置临时值:

  1. 单击第 1 部分中的 Edit

  2. 删除任何现有的默认值,并设置以下临时值:

    设置
    临时值

    Identifier (Entity ID)

    https://www.okta.com/saml2/service-provider/MongoDBCloud

    Reply URL (Assertion Consumer Service URL).

    https://auth.mongodb.com/sso/saml2/

  3. 单击 Save(连接)。

  4. 刷新浏览器页面,确保重新生成证书。

    临时性标识符和回复 URL 首次更新后,证书的指纹和有效期也会随之更改。

5

SAML Signing Certificate 部分中,单击 Certificate (Base64) 旁边的 Download

您可以在本教程的后面将此签名证书上传到 MongoDB Federation Management Console

6

如果不使用角色映射,请跳过此步骤。

要使用角色映射,请将以下群组声明添加到Microsoft Entra ID发送到Cloud Manager的SAML令牌中:

  1. 单击 Add a group claim。Azure 显示 Group Claims 面板。

  2. Which groups associated with the user should be returned in the claim?中,单击Security groups 。 可以选择的群组取决于在 Azure 环境中配置的群组类型。 您可能需要选择不同类型的群组来发送相应的群组信息。

  3. Source attribute下拉列表中选择Group Id 。 如果选择Group Id , Azure将发送安全群组的对象ID ,而不是人类可读的群组名称。 根据您的Azure环境,您可以选择不同的源属性来发送群组名称。 在Cloud Manager中创建角色映射时,请将SAML响应中发送的Azure群组数据与配置的MongoDB Atlas角色映射名称进行匹配。

  4. 单击 Advanced options 部分中的 Customize the name of the group claim

  5. Name 设置为 memberOf

  6. Namespace 留空。

  7. 清除 Emit groups as role claims(允许此应用请求其他 SSO URL)。

  8. 单击 Save(连接)。

7

将这些值粘贴到文本编辑器或其他易于访问的位置。

您可以在本教程后面的 MongoDBFederation Management Console 中输入这些值。

1

为应用程序指定一个描述性名称,例如 MongoDB-Cloud-Manager

要将非图库应用程序添加到 Microsoft Entra ID,请参阅 Azure 文档

2

将用户分配给应用程序。 完成本教程后,这些用户将可以访问 Cloud Manager 和其他 MongoDB 云服务。

要将 Microsoft Entra ID 用户分配给应用程序,请参阅 Azure 文档

3

要导航到 SAML 配置页面,请参阅 Azure 文档

4

要生成有效的 SAML 签名证书,您必须为适用于 Microsoft Entra ID 企业应用程序的 IdentifierReply URL 分配临时值。如果在设置这些值之前下载证书,下载的证书将不是唯一的,您必须在设置这些值后重新下载证书。

要设置临时值:

  1. 单击第 1 部分中的 Edit

  2. 删除任何现有的默认值,并设置以下临时值:

    设置
    临时值

    Identifier (Entity ID)

    https://www.okta.com/saml2/service-provider/MongoDBCloud

    Reply URL (Assertion Consumer Service URL).

    https://auth.mongodb.com/sso/saml2/

  3. 单击 Save(连接)。

  4. 刷新浏览器页面,确保重新生成证书。

    临时性标识符和回复 URL 首次更新后,证书的指纹和有效期也会随之更改。

5

为了简化 SAML 配置,您可以删除默认 Additional claims

  1. User Attributes & Claims 部分中,单击 Edit 图标。

  2. 对于 Additional claims 部分中的每个声明,展开 Context menu,然后单击 Delete

6

使用以下值:

  • Choose name identifier format: Unspecified

  • Source: Attribute

  • Source attribute: user.userprincipalname

    注意

    根据您的 Active Directory 配置,您使用的源属性可能会有所不同。 使用包含用户完整电子邮件解决的来源属性。

要编辑 Unique User Identifier 必需声明,请参阅 Azure 文档

7

将以下用户声明添加到Microsoft Entra ID发送到Cloud Manager的SAML令牌:

重要

Name(名称)列中的值区分大小写。严格按照所示输入。

对于所有用户索赔,必须将 Namespace 字段留空。

名称
源属性

firstName

属性

user.givenname

lastName

属性

user.surname

email

属性

user.userprincipalname

注意

根据您的 Active Directory 配置,您使用的源属性可能会有所不同。 将包含用户名字、姓氏和完整电子邮件解决的源属性用于适当的声明。

要添加用户声明,请参阅 Azure 文档

8

如果不使用角色映射,请跳过此步骤。

要使用角色映射,请将以下群组声明添加到Microsoft Entra ID发送到Cloud Manager的SAML令牌中:

  1. 单击 Add a group claim。Azure 显示 Group Claims 面板。

  2. Which groups associated with the user should be returned in the claim?中,单击Security groups 。 可以选择的群组取决于在 Azure 环境中配置的群组类型。 您可能需要选择不同类型的群组来发送相应的群组信息。

  3. Source attribute下拉列表中选择Group Id 。 如果选择Group Id , Azure将发送安全群组的对象ID ,而不是人类可读的群组名称。 根据您的Azure环境,您可以选择不同的源属性来发送群组名称。 在Cloud Manager中创建角色映射时,请将SAML响应中发送的Azure群组数据与配置的MongoDB Atlas角色映射名称进行匹配。

  4. 单击 Advanced options 部分中的 Customize the name of the group claim

  5. Name 设置为 memberOf

  6. Namespace 留空。

  7. 清除 Emit groups as role claims(允许此应用请求其他 SSO URL)。

  8. 单击 Save(连接)。

9

要验证 SAML 签名证书是否使用 SHA-256 签名算法,请参阅 Azure 文档

10

SAML Signing Certificate 部分中,单击 Certificate (Base64) 旁边的 Download

您可以在本教程的后面将此签名证书上传到 MongoDB Federation Management Console

11

将这些值粘贴到文本编辑器或其他易于访问的位置。

您可以在本教程后面的 MongoDBFederation Management Console 中输入这些值。

使用 Federation Management ConsoleAzure 控制台将 Microsoft Entra ID 添加为 IdP

1
  1. 如果尚未显示,组织从导航栏中的Organizations菜单。

  2. 单击 Organizations 菜单旁边的 Organization Settings 图标。

    显示“组织设置”页面。

2

Manage Federation Settings 中,单击 Visit Federation Management App

3
  1. 单击 Add Identity Providers

  2. 如果您尚未配置任何身份提供程序,单击 Setup Identity Provider(设置身份提供程序)。否则,在 Identity Providers(身份提供程序)屏幕上,单击 Add Identity Provider(配置身份提供程序)。

  3. 输入或选择以下 SAML 协议设置。所有字段均为必填项:

    字段
    说明

    Configuration Name

    输入描述性名称,例如Microsoft Entra ID。

    IdP Issuer URI

    粘贴您在教程前面从Azure复制的Microsoft Entra ID Identifier

    IdP Single Sign-On URL

    粘贴您在教程前面从Azure复制的Login URL

    IdP Signature Certificate

    上传您在本教程前面从 Azure Base64下载的 编码的 SAML 签名证书。

    您可以执行以下任一操作:

    • 从您的计算机上传证书,或者

    • 将证书内容粘贴到文本框中。

    Request Binding

    选择 HTTP POST

    Response Signature Algorithm

    选择 SHA-256

  4. 单击 Next(连接)。

4
  1. 单击 Download metadata(下载元数据)。您在下一步中将该文件上传到 Microsoft Entra ID 中。

  2. 单击 Finish(连接)。

5

要上传文件,请参阅3 为应用启用单点登录的 步骤 中的屏幕截图 在 Azure 文档中。在 SSO 配置页面上单击Upload metadata file ,如链接的Azure文档中的屏幕截图所示。

(可选)将一个 RelayState URL 添加到您的 IdP 以将用户转到所选的 URL,并在登录后避免不必要的重定向。您可以使用:

目的地
RelayState URL

MongoDB MongoDB Cloud Manager

在 MongoDB Cloud Manager Federation Management App中为提供商配置生成的Login URL

MongoDB 支持门户

https://auth.mongodb.com/app/salesforce/exk1rw00vux0h1iFz297/sso/saml

MongoDB University

https://auth.mongodb.com/home/mongodb_thoughtindustriesstaging_1/0oadne22vtcdV5riC297/alndnea8d6SkOGXbS297

MongoDB 社区论坛

https://auth.mongodb.com/home/mongodbexternal_communityforums_3/0oa3bqf5mlIQvkbmF297/aln3bqgadajdHoymn297

MongoDB 反馈引擎

https://auth.mongodb.com/home/mongodbexternal_uservoice_1/0oa27cs0zouYPwgj0297/aln27cvudlhBT7grX297

MongoDB JIRA

https://auth.mongodb.com/app/mongodbexternal_mongodbjira_1/exk1s832qkFO3Rqox297/sso/saml

将您的域映射到IdP可以让 Cloud Manager 知道您域中的用户应定向到身份提供商配置的Login URL

用户访问 Cloud Manager 登录页面时,需要输入自己的电子邮件地址。如果电子邮件域与 IdP 关联,则会被发送到该 IdP 的登录 URL。

重要

您可以将单个域映射到多个身份提供程序。如果这样做,使用 MongoDB Cloud 控制台登录的用户将自动重定向到第一个映射到该域的匹配 IdP

要使用备用身份提供程序登录,用户必须:

  • 通过所需的 IdP 启动 MongoDB Cloud 登录,或

  • 使用与所需 IdP 关联的 Login URL 登录。

使用 Federation Management Console 将您的域映射到 IdP

1
  1. 如果尚未显示,组织从导航栏中的Organizations菜单。

  2. 单击 Organizations 菜单旁边的 Organization Settings 图标。

    显示“组织设置”页面。

2

Manage Federation Settings 中,单击 Visit Federation Management App

3
  1. 单击 Add a Domain(连接)。

  2. Domains 屏幕上,单击 Add Domain

  3. 为域映射输入以下信息:

    字段
    说明

    显示名称

    便于识别域的名称。

    域名

    要映射的域名

  4. 单击 Next(连接)。

4

注意

您可以选择一次验证方法。不能修改。 如需选择不同的验证方法,请删除域映射,然后重新创建。

根据您是通过上传 HTML 文件还是创建 DNS TXT 记录来验证域,选择相应的标签页:

上传包含验证密钥的 HTML 文件,验证您是否拥有自己的域。

  1. 单击 HTML File Upload(连接)。

  2. 单击 Next(连接)。

  3. 下载 Cloud Manager 提供的mongodb-site-verification.html文件。

  4. HTML文件上传到域中的站点。 您必须能够访问权限位于<https://host.domain>/mongodb-site-verification.html的文件。

  5. 单击 Finish(连接)。

与您的域提供商一起创建DNS TXT记录,以验证您是否拥有自己的域。 每条DNS记录将特定的Cloud Manager组织与特定的域相关联。

  1. 单击 DNS Record(连接)。

  2. 单击 Next(连接)。

  3. 复制所提供的 TXT 记录。TXT 记录具有以下格式:

    mongodb-site-verification=<32-character string>
  4. 登录您的域名提供商(例如 GoDaddy.com 或 networksolutions.com)。

  5. 添加Cloud Manager为您的域提供的 TXT记录。

  6. 返回 Cloud Manager 并单击Finish

5

Domains屏幕显示您已映射到IdP的未验证域和已验证域。 要验证您的域,请单击目标域的Verify按钮。 Cloud Manager 在屏幕顶部的横幅显示验证是否成功。

在成功验证您的域后,使用 Federation Management Console(联合管理控制台)将该域与 Microsoft Entra ID 相关联:

1
2
3
4

重要

在开始测试之前,复制并保存 IdP 的 旁路 SAML 模式 URL 。使用此 URL 在您被 Cloud Manager 组织锁定的事件中绕过联合身份验证。

测试时,请将会话登录到 Federation Management Console,进一步防止锁定。

要了解有关 Bypass SAML Mode 的详情,请参阅旁路 SAML 模式

使用 Federation Management Console(联合管理控制台)测试您的域与 Microsoft Entra ID 之间的集成:

1
2

例子

如果已验证的域是mongodb.com ,请输入alice@mongodb.com

3

如果域映射正确,则重定向到IdP进行身份验证。 如果与IdP成功进行身份验证,则重定向回 Cloud Manager。

注意

您可以直接导航到IdPLogin URL ,绕过 Cloud Manager 登录页面。Login URL会直接向IdP进行身份验证。

使用Federation Management Console为域用户分配对特定 Cloud Manager 组织的访问权限:

1
  1. 如果尚未显示,组织从导航栏中的Organizations菜单。

  2. 单击 Organizations 菜单旁边的 Organization Settings 图标。

    显示“组织设置”页面。

2

Manage Federation Settings 中,单击 Visit Federation Management App

3
  1. 单击 View Organizations(连接)。

    Cloud Manager 显示您属于Organization Owner的所有组织。

    尚未连接到联合应用程序的组织在 Actions(操作)列中具有 Connect(连接)按钮。

  2. 单击所需组织的 Connect(连接)按钮。

4

从管理控制台的 Organizations 屏幕:

  1. 单击要映射到一个 IdP 的组织的 Name(名称)。

  2. Identity Provider 屏幕上,单击 Apply Identity Provider

    Cloud Manager 将引导您进入Identity Providers屏幕,其中显示您已链接到 Cloud Manager 的所有IdP

  3. 对于要应用到组织的 IdP,请单击 Modify

  4. Edit Identity Provider表单底部,选择此IdP适用的组织。

  5. 单击 Next(连接)。

  6. 单击 Finish(连接)。

5
  1. 单击左侧导航栏中的 Organizations

  2. Organizations列表中,确保所需的组织现在具有所需的Identity Provider

您可以为联合身份验证配置以下高级选项, 以便更好地控制联邦用户和身份验证流程:

注意

以下联合身份验证高级选项要求您映射一个组织

您分配给Azure应用程序的所有用户都可以使用Login URL上的 Microsoft Entra ID 档案登录 Cloud Manager。 用户可以访问您映射到IdP的组织。

重要

您可以将单个域映射到多个身份提供程序。如果这样做,使用 MongoDB Cloud 控制台登录的用户将自动重定向到第一个映射到该域的匹配 IdP

要使用备用身份提供程序登录,用户必须:

  • 通过所需的 IdP 启动 MongoDB Cloud 登录,或

  • 使用与所需 IdP 关联的 Login URL 登录。

如果您选择了默认组织角色,则使用Login URL登录到 Cloud Manager 的新用户将拥有您指定的角色。

后退

Cloud Manager角色映射