第 11 章 为 Red Hat Quay 配置 OIDC


为 Red Hat Quay 配置 OpenID Connect (OIDC)可为您的部署提供一些好处。例如,OIDC 允许用户使用 OIDC 供应商中的现有凭证(如 Red Hat Single Sign-On、Google、Github、Microsoft 等)向 Red Hat Quay 进行身份验证。OIDC 的其他优点包括集中式用户管理、增强安全性和单点登录(SSO)。总体而言,OIDC 配置可以简化用户身份验证和管理,增强安全性,并为 Red Hat Quay 用户提供无缝的用户体验。

以下流程演示了如何在 Red Hat Quay 的独立部署中配置 Microsoft Entra ID,以及如何在基于 Red Hat Quay 的 Operator 部署中配置 Red Hat Single Sign-On。这些流程可根据您的部署类型进行交换。

注意

按照这些步骤,无论您选择使用哪个身份提供程序,您都可以在 Red Hat Quay 中添加任何 OIDC 供应商。

11.1. 在 Red Hat Quay 的独立部署中配置 Microsoft Entra ID OIDC

通过将 Microsoft Entra ID 身份验证与 Red Hat Quay 集成,您的组织可以利用 Microsoft Entra ID 提供的集中式用户管理和安全功能。有些功能包括根据 Microsoft Entra ID 角色和权限管理用户对 Red Hat Quay 存储库的访问权限,以及启用多因素身份验证和其他 Microsoft Entra ID 提供的安全功能的功能。

Azure Active Directory (Microsoft Entra ID)身份验证的 Red Hat Quay 允许用户使用其 Microsoft Entra ID 凭证进行身份验证并访问 Red Hat Quay。

使用以下步骤通过直接更新 Red Hat Quay config.yaml 文件来配置 Microsoft Entra ID。

流程
  • 使用以下步骤,您可以在 Red Hat Quay 中添加任何 ODIC 供应商,无论要添加哪个身份提供程序。
  • 如果您的系统有一个使用防火墙,或启用了代理,则必须将每个创建的 Oauth 应用程序的所有 Azure API 端点列入白名单。否则,会返回以下错误: x509: certificate signed by unknown authority
  1. 使用以下引用并更新带有所需 OIDC 供应商凭证的 config.yaml 文件:

    AUTHENTICATION_TYPE: OIDC
    # ...
    AZURE_LOGIN_CONFIG: 1
        CLIENT_ID: <client_id> 2
        CLIENT_SECRET: <client_secret> 3
        OIDC_SERVER: <oidc_server_address_> 4
        SERVICE_NAME: Microsoft Entra ID 5
        VERIFIED_EMAIL_CLAIM_NAME: <verified_email> 6
    # ...
    1
    包含 OIDC 配置设置的父密钥。在本例中,使用的父键是 AZURE_LOGIN_CONFIG,但字符串 AZURE 可根据您的具体需求替换任意字符串,如 ABC123.However,以下字符串不接受: GOOGLE,GITHUB。这些字符串为相应的身份平台保留,需要在您使用的平台时遵循特定的 config.yaml 条目。
    2
    在身份提供程序中注册的应用程序的客户端 ID。
    3
    在身份提供程序中注册的应用程序的客户端 secret。
    4
    用于身份验证的 OIDC 服务器的地址。在本例中,您必须使用 sts.windows.net 作为签发者标识符。使用 https://login.microsoftonline.com 会导致以下错误: Could 没有为 AzureAD 创建供应商。error: oidc: issuer 与供应商返回的签发者不匹配,预期 "https://login.microsoftonline.com/73f2e714-xxxx-xxxx-xxxx-dffe1df8a5d5" got "https://sts.windows.net/73f2e714-xxxx-xxxx-xxxx-dffe1df8a5d5/"
    5
    被身份验证的服务的名称。
    6
    用于验证用户电子邮件地址的声明名称。
  2. 正确配置 Microsoft Entra ID 结果三次,使用以下格式重定向:

    • https://QUAY_HOSTNAME/oauth2/<name_of_service>/callback
    • https://QUAY_HOSTNAME/oauth2/<name_of_service>/callback/attach
    • https://QUAY_HOSTNAME/oauth2/<name_of_service>/callback/cli
  3. 重启 Red Hat Quay 部署。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.