向 Azure 应用服务上运行的 Web 应用添加身份验证
了解如何为 Azure 应用服务上运行的 Web 应用启用身份验证,并仅限组织中的用户访问应用。
应用服务提供内置的身份验证支持,因此只需在 Web 应用中编写少量代码或根本无需编写代码,就能让用户登录和访问数据。 使用应用服务身份验证模块不是必须的,但使用该模块有助于简化应用的身份验证。 本文介绍如何将 Microsoft Entra ID 用作标识提供者来使用应用服务身份验证模块保护 Web 应用。
身份验证模块可通过 Azure 门户和应用设置进行启用和配置。 不需要任何 SDK、特定语言,或者对应用程序代码进行更改。支持各种标识提供者,其中包括 Microsoft Entra ID 和 Microsoft 帐户。 启用身份验证模块后,每个传入的 HTTP 请求将通过此模块,然后再由应用代码处理。若要了解详细信息,请参阅 Azure 应用服务中的身份验证和授权。
本教程介绍如何执行下列操作:
- 为 Web 应用配置身份验证。
- 仅限组织中的用户访问 Web 应用。
先决条件
如果没有 Azure 订阅,可在开始前创建一个 Azure 试用版。
在应用服务上创建并发布一个 Web 应用
对于本教程,你需要一个部署到应用服务的 Web 应用。 可使用现有的 Web 应用,也可按照 ASP.NET Core、Node.js、Python 或 Java 快速入门创建新的 Web 应用并将其发布到应用服务。
无论是使用现有的 Web 应用还是创建新的 Web 应用,都请注意以下几项:
- Web 应用名称
- 在其中部署了 Web 应用的资源组名称
在本教程中,需要用到这些名称。
配置身份验证
现在,你有一个在应用服务上运行的 Web 应用。 接下来,为 Web 应用启用身份验证。 使用 Microsoft Entra ID 作为标识提供程序。 有关详细信息,请参阅为应用服务应用程序配置 Microsoft Entra 身份验证。
在 Azure 门户菜单上,选择“资源组”,或在任意页面中搜索并选择“资源组” 。
在“资源组”中,查找并选择资源组。 在“概述”中,选择应用的管理页。
在应用程序的左侧菜单中,选择“身份验证”,然后单击“添加标识提供者”。
在“添加标识提供者”页上,选择“Microsoft”作为“标识提供者”以登录 Microsoft 和 Microsoft Entra 标识。
对于“租户类型”,请选择“员工”。
对于“应用程序注册”>“应用程序注册类型”,请选择“新建应用程序注册”。
对于“应用程序注册”>“支持的帐户类型”,请选择“当前租户-单租户”。
在“应用服务身份验证设置”部分中,将“身份验证”设置为“要求身份验证”,并将“未验证请求”设置为“HTTP 302 Found 重定向:建议网站选用”。
在“添加标识提供者”页的底部,单击“添加”为 Web 应用启用身份验证。
现在,你已拥有受应用服务身份验证保护的应用。
注意
若要允许来自其他租户的帐户,请从“身份验证”边栏选项卡编辑“标识提供者”,将“颁发者 URL”更改为“https://login.partner.microsoftonline.cn/common/v2.0”。
验证对 Web 应用的受限访问
启用应用服务身份验证模块后,系统会在 Microsoft Entra 租户中创建应用注册。 应用注册的显示名称与 Web 应用的相同。 若要检查设置,请至少以应用程序开发人员的身份登录到 Microsoft Entra 管理中心,然后浏览到“标识”>“应用程序”>“应用注册”。 选择已创建的应用注册。 在“概述”中,验证“支持的帐户类型”是否设置为“仅限我的组织” 。
若要验证是否仅限组织中的用户访问应用,请在隐匿或私密模式下启动浏览器,然后转到 https://<app-name>.chinacloudsites.cn
。 系统应该会将你定向到安全的登录页面,以验证未经身份验证的用户是否无法访问该站点。 以组织中用户的身份登录,获取对站点的访问权限。
清理资源
如果已完成本教程,并且不再需要 Web 应用或相关资源,请清理创建的资源。