6.2. Red Hat Quay 身份验证故障排除


身份验证和授权对于安全访问 Red Hat Quay 至关重要。它们一起保护敏感容器镜像、验证用户身份、强制访问控制、促进审计和责任,并启用与外部身份提供程序无缝集成。通过优先级身份验证,组织可以为其容器注册表环境带来整体安全性和完整性。

Red Hat Quay 支持以下验证方法:

  • 用户名和密码。用户可以通过提供用户名和密码进行身份验证,这些用户名和密码针对 Red Hat Quay 中配置的用户数据库进行验证。这种传统方法要求用户输入其凭据以获取访问权限。
  • OAuth.Red Hat Quay 支持 OAuth 身份验证,允许用户使用来自 Google、GitHub 或 Keycloak 等第三方服务的凭证进行身份验证。OAuth 支持无缝的登录体验,消除了单独帐户创建和简化用户管理的需求。
  • OIDC.OpenID Connect 支持单点登录(SSO)功能,并与企业身份提供程序集成。通过 OpenID Connect,用户可以使用其现有的机构凭证进行身份验证,为不同的系统和应用程序提供统一的身份验证体验。
  • 基于令牌的身份验证.用户可以获取唯一令牌,以授予 Red Hat Quay 中特定资源的访问权限。令牌可以通过各种方式获取,如 OAuth,或在 Red Hat Quay 用户界面中生成 API 令牌。基于令牌的身份验证通常用于自动或编程访问 registry。
  • 外部身份提供程序。Red Hat Quay 可以和外部身份提供程序(如 LDAP 或 AzureAD)集成,以进行身份验证。这种集成允许组织使用现有的身份管理基础架构,启用集中用户身份验证并减少对单独用户数据库的需求。

6.2.1. 对特定用户的 Red Hat Quay 身份验证和授权问题进行故障排除

使用以下步骤对特定用户的身份验证和授权问题进行故障排除。

流程

  1. 执行到 Red Hat Quay pod 或容器中。如需更多信息,请参阅"与 Red Hat Quay 数据库交互"。
  2. 输入以下命令显示用于外部身份验证的所有用户:

    quay=# select * from federatedlogin;

    输出示例

    id | user_id | service_id |                service_ident                |               metadata_json
    ----+---------+------------+---------------------------------------------+-------------------------------------------
    1 |       1 |          3 | testuser0                                   | {}
    2 |       1 |          8 | PK7Zpg2Yu2AnfUKG15hKNXqOXirqUog6G-oE7OgzSWc | {"service_username": "live.com#testuser0"}
    3 |       2 |          3 | testuser1                                    | {}
    4 |       2 |          4 | 110875797246250333431                       | {"service_username": "testuser1"}
    5 |       3 |          3 | testuser2                                    | {}
    6 |       3 |          1 | 26310880                                    | {"service_username": "testuser2"}
    (6 rows)

  3. 验证用户是否已插入到 user 表中:

    quay=# select username, email from "user";

    输出示例

    username  |        email
    -----------+----------------------
    testuser0 | testuser0@outlook.com
    testuser1  | testuser1@gmail.com
    testuser2  | testuser2@redhat.com
    (3 rows)

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.