This documentation is for a release that is no longer maintained
See documentation for the latest supported version.第 1 章 将 secret 添加到 GitHub Actions 中,以便与外部工具安全集成
先决条件
在配置 GitHub Actions 前,请确定您有以下内容:
- 对 GitHub 存储库和 CI/CD 设置的管理员访问权限。
- 用于从 Quay.io、JFrog Artifactory 或 Sonatype Nexus 中拉取容器镜像的 容器注册表凭证。
特定 GitHub Actions 任务的 身份验证详情 :
对于 ACS 安全任务 :
- ROX Central 服务器端点
- ROX API 令牌
对于 SBOM 和工件签名任务 :
- Cosign 签名密钥密码
- 私钥和公钥
- Trustification URL
- 客户端 ID 和 secret
- 支持的 CycloneDX 版本
注意凭证和其他详情已经经过 Base64 编码,因此您不需要再次编码它们。您可以在您的
private.env
文件中找到这些凭证,该文件在 RHTAP 安装过程中创建。
1.1. 使用 UI 将 secret 添加到 GitHub Actions 复制链接链接已复制到粘贴板!
流程
- 登录 GitHub 并导航到您的源存储库。
- 转至 Settings 选项卡。
- 在左侧导航窗格中,选择 Secrets 和 variables,然后选择 Actions。
输入以下详情:
- 选择 New repository secret。
- 在 Name 字段中输入 MY_GITHUB_TOKEN。
- 在 Secret 字段中,输入与您的 GitHub 帐户关联 的令牌。
重复步骤 3-4 以添加所需的变量:
Expand 变量 描述 仅为一个镜像 registry 提供镜像 registry 凭证。
QUAY_IO_CREDS_USR
用于访问 Quay.io 存储库的用户名。
QUAY_IO_CREDS_PSW
用于访问 Quay.io 存储库的密码。
RTIFACTORY_IO_CREDS_USR
用于访问 JFrog Artifactory 存储库的用户名。
RTIFACTORY_IO_CREDS_PSW
用于访问 JFrog Artifactory 存储库的密码。
NEXUS_IO_CREDS_USR
用于访问 Sonatype Nexus 存储库的用户名。
NEXUS_IO_CREDS_PSW
用于访问 Sonatype Nexus 存储库的密码。
如果 GitHub Actions 运行程序不在与 RHTAP 实例相同的集群中运行,则设置这些变量。
REKOR_HOST
您的 Rekor 服务器的 URL。
TUF_MIRROR
您的 TUF 服务的 URL。
GitHub 的 GitOps 配置
GITOPS_AUTH_PASSWORD
系统用来为新构建镜像更新 GitOps 存储库的令牌。
GITOPS_AUTH_USERNAME
(可选)Jenkins 使用 GitHub 所需的参数。您还需要在 Jenkinsfile 中使用此参数取消注释一行: GITOPS_AUTH_USERNAME = credentials ('GITOPS_AUTH_USERNAME')。默认情况下,此行被注释掉。
ACS 任务所需的变量。
ROX_CENTRAL_ENDPOINT
ROX Central 服务器的端点。
ROX_API_TOKEN
用于访问 ROX 服务器的 API 令牌。
SBOM 任务所需的变量。
COSIGN_SECRET_PASSWORD
Cosign 签名密钥的密码。
COSIGN_SECRET_KEY
Cosign 的私钥。
COSIGN_PUBLIC_KEY
Cosign 的公钥。
TRUSTIFICATION_BOMBASTIC_API_URL
SBOM 生成中使用的 Trustification Bombastic API 的 URL。
TRUSTIFICATION_OIDC_ISSUER_URL
与 Trustification Bombastic API 交互时用于身份验证的 OIDC 签发者 URL。
TRUSTIFICATION_OIDC_CLIENT_ID
用于使用 OIDC 向 Trustification Bombastic API 进行身份验证的客户端 ID。
TRUSTIFICATION_OIDC_CLIENT_SECRET
与客户端 ID 一起使用的客户端 secret,以向 Trustification Bombastic API 进行身份验证。
TRUSTIFICATION_SUPPORTED_CYCLONEDX_VERSION
指定系统支持并生成的 CycloneDX SBOM 版本。
- 选择 Add secret。
重新运行最后的管道运行,以验证 secret 是否已正确应用。
- 或者,切换到 GitHub 中应用的源存储库,进行次要更改,并提交它以触发新的管道运行。