通过


你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用自定义 OpenID Connect 提供程序在Azure 容器应用中启用身份验证和授权

本文介绍如何配置Azure 容器应用以使用符合 OpenID Connect 规范的自定义身份验证提供程序。 OpenID Connect (OIDC) 是被许多标识提供方 (IDP) 广泛采用的行业标准。 无需了解规范的详细信息便可将应用配置为使用符合规范的 IDP。

你可以将应用配置为使用一个或多个 OIDC 提供者。 必须在配置中为每个对象提供独一无二的字母数字名称,其中只有一个可以作为默认重定向目标。

向身份提供商注册你的应用程序

提供商要求你向其注册应用程序的详细信息。 其中一个步骤涉及指定重定向 URI。 此重定向 URI 的格式为 <app-url>/.auth/login/<provider-name>/callback。 每个标识提供者都应提供有关如何完成这些步骤的更多说明。

注意

一些提供程序需要进一步的配置步骤,以及如何使用他们提供的值的不同指导。 例如,Apple 提供了一个私钥,该密钥不用作 OIDC 客户端机密。 相反,必须使用它创建 JSON Web 令牌 (JWT),该令牌被视为在应用配置中提供的机密。有关详细信息,请参阅 Apple 文档登录的“创建客户端密码”部分。

你需要收集应用程序的客户端 ID 和客户端密码

重要

客户端密码是关键的安全凭据。 请勿与任何人共享此机密或在客户端应用程序中分发该机密。

此外,你还需要提供商的 OpenID Connect 元数据。 此信息通常通过一个配置元数据文档公开,该文档是提供者的发行方 URL,后缀为/.well-known/openid-configuration。 请确保获取此配置 URL。

如果无法使用配置元数据文档,则需要单独收集以下值:

向应用程序添加提供者信息

  1. 登录到 Azure 门户并导航到应用。

  2. 在左侧菜单中选择“身份验证”。 选择“添加身份提供商”。

  3. 在“标识提供者”下拉列表中选择“OpenID Connect”。

  4. 提供此前为“OpenID 提供者名称”选择的独一无二的字母数字名称。

  5. 如果你有标识提供者提供的元数据文档的 URL,请提供该值作为元数据 URL。 否则,请选择“单独提供终结点”选项,将从标识提供者处收集的每个 URL 放入相应的字段中。

  6. 在相应的字段中提供之前收集的“客户端 ID”和“客户端机密”。

  7. 为客户端机密指定一个应用程序设置名称。 客户端密码以机密的形式存储在容器应用中。

  8. 按“添加”按钮完成标识提供者的设置。

处理经过身份验证的用户

请通过以下指南获取有关处理已经过身份验证的用户的详细信息。

后续步骤