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

从 Otka 配置联合身份验证

本指南介绍在使用 Okta 作为 IdP 时如何配置联合身份验证。

集成 Okta 和 Atlas 后, 您可以使用公司档案登录 Atlas 和其他 MongoDB 云服务。

注意

Atlas现在通过 OIDC/OAuth 2.0 进行身份验证和授权,支持数据库用户进行 SSO。

如果您使用的是 Okta 内置的 MongoDB Cloud 应用,您可以使用 Okta 的文档。

如果要创建自己的 SAML 应用,请按照此处所述的步骤操作。

如需管理联合身份验证,必须拥有 Organization Owner 访问权限,能够访问一个或多个将联合设置委托给实例的组织。

如需将 Okta 用作 Atlas 的 IdP,必须具备:

在如下过程中,为您的 Atlas 联合管理控制台和 Okta 帐户分别打开一个浏览器标签页会很有帮助。

使用 Okta 帐户将 Okta 配置为 SAML IdP。

1

下载 Okta 源证书。

  1. 在 Okta 帐户中,单击右上角的 Admin,进入管理员环境。

  2. 在左侧窗格中,导航到 Applications(应用程序)-> Applications (应用程序)。

  3. 单击 Create App Integration。为 Sign-in method 选择 SAML 2.0,然后点击 Next。

  4. 在 App name(应用名称)文本字段中填写所需的应用程序名称。

  5. 可选:添加徽标图片并设置应用可见性。单击 Next(下一步)。

  6. 在 Configure SAML(配置 SAML)屏幕上输入以下信息:

    字段
    值

    Single sign-on URL

    http://localhost

    Audience URI

    urn:idp:default

    重要

    这些都是占位符值,不用于生产环境。您将在后面的步骤中予以更换。

    将其他字段留空或者设置为它们的默认值,然后单击页面底部的 Next(下一步)。

  7. 在 Feedback 界面选择 I'm an Okta customer adding an internal app,然后单击 Finish。

  8. 在页面底部的 SAML Signing Certificates(SAML 签名证书)标题下方,找到 Status(状态)为 Active(活动)的最新证书,也就是您刚刚创建的证书。

    单击 Actions(操作),然后从下拉菜单中选择 Download certificate(下载证书)。生成的证书是一个 .cert 文件。您必须将其转换为 .pem 证书,才能稍后在此过程中使用。要执行此操作,请打开您选择的终端并运行以下命令:

    openssl x509 -in path/to/mycert.crt -out path/to/mycert.pem -outform PEM
2
  1. 如果尚未显示,组织从导航栏中的Organizations菜单。

  2. 在侧边栏中,单击 Identity & Access 标题下的 Federation。

  3. 单击 Open Federation Management App(连接)。

显示“联合”页面。

3
  1. 单击左侧窗格中的 Identity Providers。如果您以前已配置 IdP,请单击页面右上角的 Add Identity Provider,然后单击 Setup Identity Provider。如果您以前未配置 IdP,请单击 Setup Identity Provider。

  2. 在 Configure Identity Provider(配置 SAML)屏幕上输入以下信息:

    字段
    值

    Configuration Name

    用于标识配置的描述性标签

    Issuer URI

    Fill with Placeholder Values

    Single Sign-On URL

    Fill with Placeholder Values

    Identity Provider Signature Certificate

    您在上一步从 Okta 收到的证书

    Request Binding

    HTTP POST

    Response Signature Algorithm

    SHA-256

  3. 单击 Next(下一步)按钮,以查看 Okta 配置的值。

  4. 单击 Finish(连接)。

4
  1. 在 Okta 帐户中,返回到 SAML 应用程序页面,并确保选择 General(常规)标签页。

  2. 在 SAML Settings(SAML 设置)窗格中,单击 Edit(编辑)。

  3. 在 General Settings 页面上,单击 Next。

  4. 在 Configure SAML(配置 SAML)屏幕上输入以下信息:

    Okta 数据字段
    值

    Single sign on URL

    Assertion Consumer Service URL 来自 Atlas FMC。

    复选框:

    • Check Use this for Recipient URL and Destination URL.

    • 清除 Allow this app to request other SSO URLs(允许此应用请求其他 SSO URL)。

    Audience URI (SP Entity ID)

    Audience URI 来自 Atlas FMC。

    Default RelayState

    可选择在 IdP 中添加 RelayState URL,将用户发送到您选择的 URL,避免登录后不必要的重定向。您可以使用:

    目的地
    RelayState URL

    MongoDB Atlas

    Login URL 在 Atlas Federation Management 应用程序中为身份提供程序配置生成的。

    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

    Name ID format

    未指定

    Application username

    电子邮件

    Update application username on

    创建和更新

  5. 单击 Okta 配置页面中的 Click Show Advanced Settings(单击显示高级设置)链接,确保设置了以下值:

    Okta 数据字段
    值

    Response

    Signed

    Assertion Signature

    Signed

    Signature Algorithm

    RSA-SHA256

    Digest Algorithm

    SHA256

    Assertion Encryption

    Unencrypted

  6. 将剩余的 Advanced Settings(高级设置)字段保留为它们的默认状态。

  7. 向下滚动到 Attribute Statements (optional)(属性语句)部分,并创建四个具有以下值的属性:

    名称
    名称格式
    值

    名

    未指定

    user.firstName

    姓

    未指定

    user.lastName

    重要

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

    注意

    如果 Okta 连接到 Active Directory,则这些值可能会有所不同。 对于适当的值,请使用包含用户的名字、 姓氏和完整电子邮件地址的 Active Directory 字段。

  8. (可选)如果计划使用角色映射,请向下滚动到 Group Attribute Statements (optional) 部分,然后创建具有以下值的属性:

    名称
    名称格式
    Filter
    值

    memberOf

    未指定

    匹配正则表达式

    .*

    此过滤器会匹配与用户关联的所有群组名。要进一步过滤发送到 Atlas 的群组名,请调整 Filter(过滤器)和 Value(值)字段。

  9. 单击页面底部的 Next(下一步)。

  10. 在 Feedback 屏幕上,单击 Finish。

5

替换 Atlas FMC 中的占位符值。

  1. 在 Okta 应用程序页面上,单击页面中间的 View Setup Instructions(查看设置说明)。

  2. 在Atlas FMC 中,导航到 Identity Providers 页面。找到 Okta,然后单击 Edit。

  3. 替换以下字段中的占位符值:

    FMC 数据字段
    值

    Issuer URI

    Identity Provider Issuer 值来自 Okta 设置说明页面。

    Single Sign-on URL

    Identity Provider Single Sign-On URL 值来自 Okta 设置说明页面。

    Identity Provider Signature Certificate

    从 Okta 设置说明页面复制 X.509 Certificate(X.509 正数)并直接粘贴内容。

  4. 单击 Next(连接)。

  5. 单击 Finish(连接)。

6

将用户分配到 Okta 应用程序。

  1. 在 Okta 应用程序页面上,单击 Assignments(分配)标签页。

  2. 确保所有将使用 Okta 的 Atlas 组织用户 均已注册。

通过将域映射到 IdP, Atlas可以知道域中的用户应被定向到 Login URL 以进行身份提供商程序配置。

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

重要

当您将单个域映射到多个身份提供程序时,使用 MongoDB Cloud 控制台登录的用户会自动重定向到与为 Atlas 配置的第一个 SAML IdP 应用程序关联的 IdP 。

要使用备用身份提供程序,用户必须通过 SP 启动或身份提供程序启动的URL登录。

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

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

  2. 在侧边栏中,单击 Identity & Access 标题下的 Federation。

  3. 单击 Open Federation Management App(连接)。

显示“联合”页面。

2

输入域 映射信息。

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

  2. 在 Domains 屏幕上,单击 Add Domain。

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

    字段
    说明

    显示名称

    用于轻松识别域的标签。

    域名

    要映射的域名。

  4. 单击 Next(连接)。

3

选择域验证方法。

注意

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

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

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

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

  2. 单击 Next(连接)。

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

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

  5. 单击 Finish(连接)。

在您的域提供商系统中创建 DNS TXT 记录,以验证您是否拥有自己的域。每个 DNS 记录都会将特定的 Atlas 组织与特定的域关联起来。

  1. 单击 DNS Record(连接)。

  2. 单击 Next(连接)。

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

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

  5. 将 Atlas 提供的 TXT 记录添加到域。

  6. 返回 Atlas 并单击 Finish(完成)。

4

验证域。

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

5

重要

为避免潜在的安全漏洞,请在验证完成后删除提供的记录文件。

成功验证域后,使用 Federation Management Console 将域与 Otka 关联:

1

单击左侧导航栏中的 Identity Providers。

2

对于要与域关联的 IdP,请单击 Associated Domains 旁边的 Edit。

3

选择要与 IdP 关联的域。

4

单击 Confirm(连接)。

重要

开始测试前,复制并保存 IdP 的 Bypass SAML Mode URL。使用此 URL 可在您被 Atlas 组织锁定时绕过联合身份验证。

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

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

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

1

在专用浏览器窗口中,导航到 Atlas 登录页面。

2

输入用户名(通常是电子邮件地址)和已验证的域名。

例子

如果验证的域是 mongodb.com,请使用 username@mongodb.com 形式的电子邮件地址。

3

单击 Next。如果您正确映射了域,您将被重定向到 IdP 进行身份验证。身份验证成功后,您将被重定向回 Atlas。

注意

您可以直接导航到 IdP Login URL,绕过Atlas登录页面。

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

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

  2. 在侧边栏中,单击 Identity & Access 标题下的 Federation。

  3. 单击 Open Federation Management App(连接)。

显示“联合”页面。

2
  1. 单击 Link Organizations(连接)。

    Atlas 显示您属于 Organization Owner(组织所有者)的所有组织。

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

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

3
  1. 在 Identity Provider 屏幕上,单击 Connect Identity Provider。

    Atlas 会将您引导至 Identity Providers(身份提供程序)页面,显示您已链接 Atlas 的所有 IdP。

  2. 对于要应用组织的IdP,请单击 Connect。

  3. 在 Apply Identity Provider to Organizations 模态窗口中,选择此 IdP 适用的组织。

  4. 单击 Confirm(连接)。

4
  1. 单击左侧导航栏中的 Linked Organizations。

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

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

注意

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

您分配给 Okta应用程序的所有用户都可以使用其在 Login URL 上的 Okta凭证登录Atlas 。用户可以访问权限您映射到 IdP 的组织。

重要

当您将单个域映射到多个身份提供程序时,使用 MongoDB Cloud 控制台登录的用户会自动重定向到与为 Atlas 配置的第一个 SAML IdP 应用程序关联的 IdP 。

要使用备用身份提供程序,用户必须通过 SP 启动或身份提供程序启动的URL登录。

如果您选择默认组织角色,则使用 Login URL(登录 URL)登录 Atlas 的新用户将拥有您指定的角色