搜索

3.4. 将 GitHub 配置为 Trusted Artifact Signer 的 OpenID Connect 供应商

download PDF

当使用红帽单点登录(SSO)服务作为 Red Hat Trusted Artifact Signer (RHTAS)服务的 OpenID Connect (OIDC)服务时,您可以使用 GitHub OAuth 2.0。此流程指导您将 GitHub OAuth 与 OpenShift 上的现有 Red Hat SSO 部署集成。

重要

您可以在同一配置中定义多个不同的 OIDC 供应商。

先决条件

  • 在 Red Hat OpenShift Container Platform 版本 4.13、4.14 或 4.15 上安装 RHTAS。
  • 正在运行的 Red Hat SSO 实例。
  • 安装了 oc 二进制文件的工作站。
  • 创建 GitHub OAuth 应用,并在注册应用后记录客户端标识符和机密值。

    重要

    在注册新的 GitHub OAuth 应用程序时,您必须指定 Homepage URLAuthorization 回调 URL。为这两个字段输入占位符值,例如 https://localhost:8080。稍后,您将使用这些字段的预期值修改 GitHub OAuth 应用程序。

流程

  1. 在工作站上打开一个终端,并登录到 OpenShift:

    语法

    oc login --token=TOKEN --server=SERVER_URL_AND_PORT

    Example

    $ oc login --token=sha256~ZvFDBvoIYAbVECixS4-WmkN4RfnNd8Neh3y1WuiFPXC --server=https://example.com:6443

    注意

    您可以从 OpenShift Web 控制台在命令行中查找您的登录令牌和 URL。登录 OpenShift Web 控制台。点您的用户名,然后点 Copy login 命令。如果被要求,请再次提供您的用户名和密码,然后单击 Display Token 查看命令。

  2. 登录到 Red Hat SSO 控制台。

    1. 从命令行查找 Red Hat SSO 控制台 URL:

      Example

      $ oc get routes -n keycloak-system keycloak -o jsonpath='https://{.spec.host}'

    2. 将 Red Hat SSO 控制台 URL 复制并粘贴到您的 Web 浏览器中。
    3. 单击 Administration Console
    4. 从命令行检索 admin 密码:

      Example

      $ oc get secret/credential-keycloak -n keycloak-system -o jsonpath='{ .data.ADMIN_PASSWORD }' | base64 -d

      复制此命令的输出。

    5. 在 Web 浏览器中,以 admin 用户身份登录,并将密码粘贴到对应的字段中。点 Sign In 按钮。
  3. 从导航菜单的下拉菜单中选择您的域。
  4. 添加 GitHub 身份提供程序。

    1. 在导航菜单中点 Identity Providers
    2. Add provider… 下拉菜单中选择 GitHub
    3. 将 GitHub OAuth 客户端标识符添加到 客户端 ID 字段。
    4. 将 GitHub OAuth 客户端 secret 添加到 Client Secret 字段中。
    5. 打开 Trust Email 选项。
    6. Save 按钮。
  5. 将身份提供程序映射程序添加到新创建的身份提供程序。

    1. Mapper 选项卡。
    2. Create 按钮。
    3. 为新映射程序指定 Name
    4. Mapper Type 更改为 Hardcoded Attribute
    5. User Attribute 字段设置为 emailVerified
    6. User Attribute Value 字段设置为 true
    7. Save 按钮。
  6. GitHub Identity Provider Settings 页面中,复制 Redirect URI 值,并将它粘贴到 GitHub OAuth 应用 授权回调 URL 字段。另外,将此值粘贴到 Homepage URL 字段中,但删除 URL 字符串的 broker/github/endpoint 部分。
  7. 单击 Update Application。现在,您可以使用 GitHub 作为 OIDC 供应商来签署 提交和 容器
  8. 在签名工件时,会打开网页浏览器并提示您登录到 Red Hat SSO 帐户。点 GitHub 按钮使用您的凭证登录。
  9. 单击 Authorize 按钮,以启用 GitHub 用户详情,以供 Red Hat SSO 访问。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.