你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
适用范围:开发人员 | 基本 v2 | 标准 | 标准 v2 | 高级 | 高级 v2
Microsoft Entra 外部 ID 是一种云标识管理解决方案,允许外部标识安全地访问应用和资源。 您可以用它通过外部身份管理对 API 管理开发人员门户的访问权限。
在本文中,你将了解适用于 API 管理开发人员门户支持的下列场景的 Microsoft Entra ID 标识提供者配置:
- 与员工租户中的 Microsoft Entra 外部 ID 集成。 例如,如果员工租户面向 Contoso 组织,你可能希望将 Google 或 Facebook 配置为外部标识提供者,以便这些外部用户也可使用他们的帐户进行登录。
- 与单独的外部租户中的 Microsoft Entra 外部 ID 集成。 此配置仅允许来自该租户的外部用户登录到开发人员门户。
注释
目前,无法为开发人员门户配置多个Microsoft Entra ID 标识提供者。
有关保护对开发人员门户访问权限的选项的概述,请参阅 对 API 管理开发人员门户的安全访问。
注释
API 管理服务为作为外部标识提供者的 Azure Active Directory B2C 提供旧版支持。 但是,建议将 Microsoft Entra 外部 ID 用作标识提供者,而不是将 Azure Active Directory B2C 用于 API 管理开发人员门户的新部署。
重要
自 2025 年 5 月 1 日起,Azure AD B2C 将不再可供新客户购买。 在我们的常见问题解答中了解详细信息。
先决条件
- 其中启用外部访问的 Microsoft Entra ID 租户(员工租户),或者单独的外部租户
- 在员工租户中创建应用程序和配置用户流的权限。
- API 管理实例。 如果还没有 Azure API 管理实例,请创建一个 Azure API 管理实例。
- 如果在 v2 层级中创建了实例,请启用开发人员门户。 有关详细信息,请参阅教程:访问和自定义开发人员门户。
将外部标识提供者添加到租户
如果你正在使用员工租户,则必须在该员工租户中启用外部标识提供者。 配置外部标识提供者超出了本文的范围。 有关详细信息,请参阅员工租户中外部 ID 的标识提供者。
创建 Microsoft Entra 应用注册
在 Microsoft Entra ID 租户中创建应用注册。 应用注册表示 Microsoft Entra 中的开发人员门户应用程序,并使门户能够使用 Microsoft Entra ID 登录用户。
- 在 Azure 门户中,转到 Microsoft Entra ID。
- 在边栏菜单中的“ 管理”下,选择 “应用注册>+ 新建注册”。
- 在 “注册应用程序 ”页中,输入应用程序的注册信息。
- 在“ 名称” 部分中,输入所选的应用程序名称。
- 在 “支持的帐户类型 ”部分中, 仅选择此组织目录中的“帐户”。
- 在 重定向 URI 中,选择 “单页应用程序”(SPA) 并输入以下 URL:
https://{your-api-management-service-name}.developer.azure-api.net/signin其中 API{your-api-management-service-name}管理实例的名称。 - 选择“注册”以创建应用程序。 1.在“应用 概述 ”页上,找到 应用程序(客户端)ID 和 目录(租户)ID 并将这些值复制到安全位置。 稍后需要用到它们。
- 在边栏菜单中的“ 管理”下,选择“ 证书和机密”。
- 在“ 证书和机密 ”页的“ 客户端机密 ”选项卡上,选择“ + 新建客户端密码”。
- 输入“说明”。
- 选择过期中的任何选项。
- 选择 添加。
- 在离开页面之前,将客户端 机密值 复制到安全位置。 稍后需要用到此信息。
- 在边栏菜单中的“ 管理”下,选择“ 令牌配置>+ 添加可选声明”。
- 在 令牌类型中,选择 ID。
- 选择(勾选)以下声明:email、family_name、given_name。
- 选择 并添加。 如果出现提示,请选择“启用 Microsoft Graph电子邮件、配置文件权限”。
为租户启用自助注册
若要让外部用户注册以访问开发人员门户,必须完成以下步骤:
- 为租户启用自助注册。
- 将您的应用程序添加到自助注册流程中。
有关详细信息和详细步骤,请参阅以下文章,具体取决于使用的是员工还是外部租户:
- 企业租户:为 B2B 协作添加自助服务注册用户流程
- 外部租户: 为外部租户应用创建注册和登录用户流 ,并将 应用添加到用户流
将 Microsoft Entra ID 配置为开发人员门户的标识提供者
在 API 管理实例中,配置 Microsoft Entra ID 标识提供者。 需要上一部分从应用注册复制的值。
在 Azure 门户 选项卡中,导航到 API 管理实例。
在边栏菜单中的 “开发人员门户”下,选择“ 标识>+ 添加”。
在 “添加标识提供者 ”页中,选择 Microsoft Entra ID。 选择后,即可输入其他必要信息。
- 在 客户端 ID 中,输入应用注册中的 应用程序(客户端)ID 。
- 在 客户端机密中,输入应用注册中的 机密值 。
- 在 登录租户中,输入应用注册中的 目录(租户)ID 。
- 在 “客户端库 ”下拉列表中,选择 “MSAL”。
选择 并添加。
重新发布开发人员门户,使Microsoft Entra 配置生效。 在边栏菜单中的 “开发人员门户”下,选择 “门户概述>发布”。
重要
创建或更新标识提供者的配置设置以使更改生效时,需要 重新发布开发人员门户 。
使用 Microsoft Entra 外部 ID 登录到开发人员门户
在开发人员门户中,可以使用“登录按钮: OAuth”小组件通过 Microsoft Entra 外部 ID 进行登录。 该部件已包含在默认开发者门户网站内容的登录页面上。
若要使用 Microsoft Entra 外部 ID 登录,请打开新的浏览器窗口并转到开发人员门户。 选择“登录”。
在 “登录 ”页上,选择 “Azure Active Directory”。
在Microsoft Entra 租户的登录窗口中,选择 “登录”选项。 选择在 Microsoft Entra 租户中配置的标识提供者进行登录。 例如,如果将 Google 配置为标识提供者,请选择“ 使用 Google 登录”。
若要继续登录,请响应提示。 登录完成后,会重定向回开发人员门户。
现已登录到 API 管理服务实例的开发人员门户。 你已被添加为用户中新的 API 管理用户标识,并在 Microsoft Entra ID 中添加了新的外部租户用户。