在国家/地区云环境中使用 MSAL

国家/地区云又称为主权云,是 Azure 的物理独立实例。 Azure 的这些区域可帮助确保数据驻留、主权及合规性要求在地理边界内得到遵从。

除了 Microsoft 全球云以外,Microsoft 身份验证库 (MSAL) 使得国家/地区云中的应用程序开发人员能够获取令牌,以便进行身份验证并调用受保护的 Web API。 这些 Web API 可以是 Microsoft Graph 或其他 Microsoft API。

包括全球 Azure 云在内,Microsoft Entra ID 在以下国家/地区云中部署:

本指南演示了如何登录到工作和学校帐户、获取访问令牌,并在 Azure 政府云环境中调用 Microsoft Graph API。

Azure 德国(Microsoft 云德国版)

警告

Azure 德国(Microsoft 云德国版)将于 2021 年 10 月 29 日关闭。 你选择不在该日期之前将其迁移到全球 Azure 中的某个区域的服务和应用程序将变得不可访问。

如果尚未从 Azure 德国迁移应用程序,请按有关如何从 Azure 德国进行迁移的 Microsoft Entra 信息中的说明开始迁移。

先决条件

在开始之前,请确保满足以下先决条件。

选择合适的标识

Azure 政府版应用程序可以使用 Microsoft Entra 政府版标识和 Microsoft Entra 公共版标识对用户进行身份验证。 因为任意这些标识都可以使用,所以需决定应为方案选择哪个颁发机构终结点:

  • Microsoft Entra 公共版:如果组织已有 Microsoft Entra 公共版租户,支持 Microsoft 365(公共或 GCC)或其他应用程序,则通常使用此标识。
  • Microsoft Entra 政府版:如果组织已有 Microsoft Entra 政府版租户,支持 Office 365(GCC High 或 DoD),或者正在 Microsoft Entra 政府版中创建新的租户,则通常使用此标识。

确定之后,还需特别考虑在哪里执行应用注册。 如果为 Azure 政府版应用程序选择了 Microsoft Entra 公共版标识,则必须在 Microsoft Entra 公共版租户中注册该应用程序。

获取 Azure 政府版订阅

若要获取 Azure 政府版订阅,请参阅管理和连接 Azure 政府版订阅

如果没有 Azure 政府版订阅,请在开始之前创建一个免费帐户

若要详细了解如何使用特定编程语言的国家/地区云,请选择与语言相匹配的选项卡:

可以使用 MSAL.NET 登录用户、获取令牌并在国家/地区云中调用 Microsoft Graph API。

以下教程演示了如何生成 ASP.NET Core Web 应用。 此应用使用 OpenID Connect,通过隶属于某个国家/地区云的组织中的工作和学校帐户来登录用户。

后续步骤

有关每种云对应的 Azure 门户 URL 和令牌终结点的列表,请参阅国家/地区云身份验证终结点

国家云文档: