第 2 章 将 secret 添加到 GitLab CI 中,以便与外部工具安全集成
如果将 GitLab 选为 CI 供应商并创建应用程序,您可能会注意到管道运行失败。发生此失败的原因是管道无法找到所需的 GitLab 和其他 secret。完成以下步骤以添加所需的 secret 并解决管道失败。
先决条件
- 您必须具有创建和管理 GitLab 作业和 GitLab CI 变量所需的权限。
- 您必须有一个镜像 registry (如 Quay.io)用户名和密码才能访问和拉取容器镜像。
您必须具有希望 GitLab CI 执行的特定任务的以下信息:
对于 ACS 任务:
- ROX Central 服务器端点和令牌
对于 SBOM 任务:
- Cosign 签名密钥密码、私钥和公钥
- 信任 URL、客户端 ID、secret 和支持的 CycloneDX 版本
2.1. 使用 UI 将 secret 添加到 GitLab CI 复制链接链接已复制到粘贴板!
流程
- 登录并导航到您的源存储库。
- 展开 Setting 菜单,然后选择 CI/CD。
- 在 Variables 部分中,选择 Expand,然后选择 Add variable。
- 在标记 下,选中 Mask 变量 复选框。
- 在 Key 字段中,输入 MY_GITLAB_TOKEN。
- 在 Value 字段中,输入与 GitLab 帐户关联的令牌。
重复步骤 3-6 以添加所需的变量:
Expand 变量 描述 所有管道运行所需的变量
QUAY_IO_CREDS_USR用于访问 Quay.io 凭据的用户名。
QUAY_IO_CREDS_PSW用于访问 Quay.io 凭据的密码。
REKOR_HOST您的 Rekor 服务器的 URL。
TUF_MIRROR您的 TUF 服务的 URL。
ACS 任务所需的变量
ROX_CENTRAL_ENDPOINTROX Central 服务器的端点。
ROX_API_TOKEN用于访问 ROX 服务器的 API 令牌。
SBOM 任务所需的变量
COSIGN_SECRET_PASSWORDCosign 签名密钥的密码。
COSIGN_SECRET_KEYCosign 的私钥。
COSIGN_PUBLIC_KEYCosign 的公钥。
TRUSTIFICATION_BOMBASTIC_API_URLSBOM 生成中使用的 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 版本。
重新运行最后的管道运行。
- 或者,切换到 GitLab 中应用的源存储库,进行次要更改,并提交它以触发新的管道运行。