你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文介绍如何配置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。
如果无法使用配置元数据文档,则需要单独收集以下值:
- 颁发者 URL(有时显示为
issuer) -
OAuth 2.0 授权终结点(有时显示为
authorization_endpoint) -
OAuth 2.0 令牌终结点(有时显示为
token_endpoint) -
OAuth 2.0 JSON Web 密钥集文档的 URL(有时显示为
jwks_uri)
向应用程序添加提供者信息
登录到 Azure 门户并导航到应用。
在左侧菜单中选择“身份验证”。 选择“添加身份提供商”。
在“标识提供者”下拉列表中选择“OpenID Connect”。
提供此前为“OpenID 提供者名称”选择的独一无二的字母数字名称。
如果你有标识提供者提供的元数据文档的 URL,请提供该值作为元数据 URL。 否则,请选择“单独提供终结点”选项,将从标识提供者处收集的每个 URL 放入相应的字段中。
在相应的字段中提供之前收集的“客户端 ID”和“客户端机密”。
为客户端机密指定一个应用程序设置名称。 客户端密码以机密的形式存储在容器应用中。
按“添加”按钮完成标识提供者的设置。
处理经过身份验证的用户
请通过以下指南获取有关处理已经过身份验证的用户的详细信息。