管理和监视 Microsoft Entra 应用

已完成

你已经实现了自己的第一个 Microsoft Entra 集成应用程序,现在打算深入了解其功能的各个方面,重点是管理和维护任务。 你还希望确保确定有关多租户应用程序的其他注意事项。

实现 Microsoft Entra 集成应用需要考虑下列特殊注意事项,其中一些可能需要执行额外的管理和维护任务:

  • 跟踪与应用程序关联的所有重定向统一资源标识符 (URI),包括相应的域名服务 (DNS) 记录。

  • 通过确保重定向 URI 对应于加密终结点来保护 Web 应用。

  • 维护 Web 应用、Web API 和守护程序应用的凭据。

  • 使用机密时,考虑实现管理自动化,包括机密轮换。

  • 在配置应用程序的权限范围时,应用最低特权原则。 应用程序应仅在需要时请求其他权限。

  • 尽可能使用委托的权限,而不是应用程序权限。

  • 在开发过程中,使用 Microsoft 身份验证库,而不是直接针对 OAuth 2.0 和 Open ID 等协议进行编程。

    备注

    Microsoft 身份验证库提供了一种易于使用的方法来实现各种身份验证方案,包括条件访问、设备范围的单一登录 (SSO) 和令牌缓存。

    注意

    本模块不会提供有关将云原生应用程序与 Microsoft Entra ID 集成的完整指导和最佳做法,而旨在介绍 Microsoft Entra 身份验证和多租户的概念。

实现 Microsoft Entra 多租户方案时,需要将应用程序配置为接受来自任何 Microsoft Entra 租户的登录。 在这些租户中的用户授予应用请求的相关许可后,就能够访问该应用。

实现多租户应用需要四个主要元素:

  • 将应用注册为多租户
  • 配置应用以将请求发送到 /common 终结点
  • 添加代码以管理多个颁发者值
  • 包括响应用户和管理员许可的规定

将应用注册为多租户

若要将应用注册为多租户,请执行以下操作:

  1. 使用“搜索资源、服务和文档”文本框来搜索“应用注册”,然后在结果列表中,在“Azure 服务”部分选择“应用注册”。

  2. 选择“所有注册”,然后选择“cna-app”。

  3. 选择“支持的帐户类型”选项,然后在“支持的帐户类型”下,选择“任何组织目录中的帐户(任何 Microsoft Entra 目录 - 多租户)”,再选择“保存”。

Microsoft Entra ID 要求应用的应用 ID URI 是全局唯一的。 对于单租户应用,应用 ID URI 在该租户中必须是唯一的。 对于多租户应用,它必须是全局唯一的。 为满足此要求,应用 ID URI 的主机名需要匹配 Microsoft Entra 租户的已验证域。

配置应用以将请求发送到 /common 终结点

在单租户应用中,登录请求将发送到租户的登录终结点。 例如,对于 contoso.com,相应的终结点为 https://login.microsoftonline.com/contoso.com。 实际上,针对该终结点的请求允许用户或来宾登录到相应的 Microsoft Entra 租户。 对于多租户应用,无法提前确定将使用哪个租户,因此将使用 https://login.microsoftonline.com/common 终结点,它为所有 Microsoft Entra 租户提供服务。

添加代码以管理多个颁发者值

Web 应用程序和 Web API 必须能够验证 Microsoft 标识平台发送的令牌。 这需要实现以下逻辑:根据颁发者值的租户 ID 部分确定哪些颁发者值有效,哪些无效。 有关更多详细信息,请参阅本课程总结单元中引用的文档。

对于多租户应用程序,应用的初始注册发生在应用开发人员使用的 Microsoft Entra 租户中。 当来自不同 Microsoft Entra 租户的单独用户首次登录应用时,系统会提示每位用户同意应用程序请求的权限。 这反过来又会导致在其各自的租户中创建服务主体。 有关满足此要求的规定的详细信息,请参阅本课程总结单元中引用的文档。