Tekton 流水线链校验器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/tekton-pipeline-chain-validator。
技能介绍
要解决的问题
在 Tekton 流水线中,Task 使用的容器镜像往往来自不同来源,但缺少统一的签名验证机制。这意味着即使镜像被篡改或替换,流水线仍会盲目执行,给供应链攻击留下可乘之机。同时,即使镜像签名正确,也缺少标准化的 provenance 元数据来证明其构建来源和完整性。
工作原理
该校验器从三个层面验证流水线供应链安全:
- Sigstore cosign 验签:对每个 Task 使用的镜像进行签名验证,确保镜像来自可信构建者且未被篡改
- SLSA provenance 检查:验证镜像是否附带符合 SLSA 标准的构建来源证明,包括构建系统、源材料和构建参数
- Tekton Results API 集成:通过该 API 获取 TaskRun 的执行元数据,交叉验证镜像签名与构建证明的一致性
校验器会遍历流水线中的所有 Task,对每个镜像依次执行上述检查,任何一项失败都会标记为不合规。
适用边界与注意点
- 需要运行在 Kubernetes 环境中,且 Tekton Results API 可正常访问
- 被校验的镜像必须已通过 cosign 签名,否则会直接报错
- 仅验证 Task 级别的镜像签名,不覆盖 Pipeline 级别的配置安全
- 对于使用 deprecated 签名算法的旧镜像,可能需要额外配置
使用场景
- CI 团队在 Tekton 上构建容器镜像,想在合并前自动校验每个 Task 镜像的 cosign 签名是否有效。
- 平台工程师检查流水线发布产物,需要确认镜像附带的 SLSA provenance 元数据是否完整且来源可信。
- 安全审计人员排查 Tekton Pipeline 事故,要通过 Results API 回溯各 TaskRun 的签名与证明记录。
- DevOps 团队迁移到 Tekton,想在接入前先验证现有 Task 镜像是否都已完成签名并生成 attestation。
适合人员
- Tekton 流水线维护者,需要在合并前拦截未签名或签名失效的 Task 镜像。
- 容器平台安全工程师,负责对流水线构建产物做签名与 provenance 合规审计。
- Kubernetes 集群运维人员,需要在 Tekton 接入生产前验证镜像供应链完整性。
- DevSecOps 负责人,要在 CI/CD 环节固化 cosign 验签与 SLSA 证明检查。