IBM Cloud Docs
配置映像的 SLSA 认证集合

配置映像的 SLSA 认证集合

工具 tekton-chain 收集具有 SLSA 认证的已构建映像的证据。

tekton-chain 工具监视 CI 管道的 build-artifact 阶段,并证明已构建的映像。 证据收集工具针对保存的工件 list_artifacts 方法中的每个图像运行,并收集认证。 然后,该工具会创建必要的证据。 有关更多信息,请参阅 list_工件

缺省情况下,tekton 链工具会部署到 IBM 受管工作程序。 有关专用工作程序的信息,请参阅 什么是 Tekton 链?

SLSA 认证参数

您可以使用 tekton-chain 工具设置以下 SLSA 认证参数。

表 1. SLSA 认证参数
参数名称 类型 描述 必需或可选
slsa-attestation ENUM 将此参数设置为枚举值 01。 将值设置为 1 以启用 SLSA 认证报告收集。 缺省值为 0 必需
icr-dockerconfigjson secret base64-encoded Docker config.json 文件,用于存储 IBM Container Registry的凭证信息。 如果映像必须存储在 IBM Container Registry中,请设置此参数。 可选
artifactory-dockerconfigjson secret T 用于存储 Artifactory的凭证信息的 base64-encoded Docker config.json 文件。 如果映像存储在 Artifactory 或其他容器注册表中,请设置此参数。 可选
slsa-attestation-public-key secret 用于验证 SLSA 认证报告的 base64-encoded 公用密钥。 可选

可以通过运行以下命令来手动创建这些私钥:

kubectl create secret docker-registry mysecret \
--dry-run \
--docker-server=<container registry url>  \
--docker-username=<username> \
--docker-password=<artifactory token> \
--docker-email=<email> \
-o yaml

对于 IBM Container Registry,使用 iamapikey 作为用户名,使用 IBM Cloud API 密钥作为密码。

此过程输出类似于以下代码片段的响应:

apiVersion: v1
data:
  .dockerconfigjson: <your secret>
kind: Secret
metadata:
  creationTimestamp: null
  name: regcred
type: kubernetes.io/dockerconfigjson

在管道属性中,使用 .dockerconfigjson 值更新 artifactory-dockerconfigjsonicr-dockerconfigjson 参数。

证据和附件

根据您根据表 2 中的详细信息设置的值,将生成证据。 DevSecOps 管道将证据上载到锁定程序,并将证据包含在变更请求的证据摘要中。

表 2. 证据字段和值
字段
工具类型 tekton-chains
证据类型 com.ibm.cloud.slsa
资产类型 image
attachments Attestation report generated by the tekton chains as JSON

调试和日志记录

设置以下参数以进行调试和日志记录。

表 3. 调试参数
参数名称 缺省值 描述
pipeline-debug 0 调试标志 0 off; 1 on

访问扫描结果

您可以使用以下方法来访问扫描结果: