1. IDP 与制品签名概述
1.1 平台工程 IDP 定义
平台工程(Platform Engineering)的核心产出是内部开发者平台(Internal Developer Platform, IDP)。IDP 并非单一工具,而是一套由平台团队构建和维护的技术层,它通过抽象底层基础设施的复杂性,为应用开发者提供一条自服务的黄金路径(Golden Path)。
IDP 关键特征:
- 抽象化:屏蔽 Kubernetes、网络、存储等底层细节,开发者只需关注业务代码。
- 自服务:开发者可通过 UI、CLI 或 API 自主创建环境、部署应用、查看日志。
- 标准化:内置组织级的 CI/CD 流水线、安全策略、可观测性规范。
- 可重复:环境配置、部署流程、制品构建均实现声明式管理和版本控制。
在 IDP 的上下文中,制品(Artifact)是软件交付的核心载体,包括容器镜像、Helm Chart、JAR 包、NPM 包等。制品的完整性和来源可信度直接决定了软件供应链的安全基线。
1.2 制品签名在软件供应链安全中的核心价值
软件供应链攻击日益频繁,从 SolarWinds 到 Log4j,攻击者往往通过篡改或注入恶意制品来突破防线。制品签名是确保软件供应链安全的关键技术控制点。
| 安全维度 | 未签名制品的风险 | 签名后的保障 |
|---|---|---|
| 完整性 | 制品在传输或存储过程中被篡改,无法检测 | 签名校验失败即拒绝部署,确保内容未被修改 |
| 真实性 | 无法确认制品来源,可能引入恶意第三方包 | 通过签名证书链验证发布者身份,防止冒名 |
| 不可否认性 | 发布者可以否认曾发布某个制品 | 签名具有法律效力的证据,追溯责任明确 |
| 可审计性 | 缺乏制品发布和修改的完整记录 | 签名日志与透明性日志(如 Rekor)提供审计轨迹 |
行业标准参考:SLSA(Supply-chain Levels for Software Artifacts)框架将签名列为达到 Build Level 2+ 的必要条件。CNCF 的 in-toto 和 Sigstore 项目已成为云原生制品签名的实际标准。
1.3 课程目标与学习路径
本课程旨在帮助平台工程团队在 IDP 中落地端到端的制品签名链路,并与现有 CI/CD 流水线无缝集成。完成本课程后,学员将能够:
- 理解制品签名的密码学原理与行业标准(Sigstore、Cosign、Notation)。
- 在 IDP 中设计签名策略,包括密钥管理、证书轮换和策略引擎。
- 将签名步骤嵌入 Jenkins、GitLab CI、GitHub Actions 等主流流水线。
- 配置部署前的签名验证门禁,实现“不签名不部署”的安全基线。
- 建立制品溯源与审计机制,满足合规要求。
1.4 课程章节总览
| 章节 | 核心内容 | 实践产出 |
|---|---|---|
| 1-3 | IDP 与制品签名概述、密码学基础、Sigstore 生态 | 理解签名链路全景 |
| 4-6 | Cosign 签名/验证、OIDC 与密钥无服务器化 | 完成首个镜像签名 |
| 7-10 | Jenkins / GitLab CI / GitHub Actions 集成 | 流水线自动签名 |
| 11-13 | 策略引擎、Kubernetes 动态准入控制 | 部署前签名验证门禁 |
| 14-15 | 透明性日志、审计与合规、生产级最佳实践 | 端到端安全供应链 |
前置要求:学员需具备基本的 CI/CD 流水线使用经验(任意平台),了解容器镜像和 Kubernetes 基础概念。无需深入密码学背景,课程会从原理讲起。