1. 课程导论:Sigstore 与 Trivy 协同的价值、策略即代码概念、回滚护栏的运维意义

1.1 为什么需要 Sigstore 与 Trivy 协同?

在云原生软件供应链中,镜像安全扫描(Trivy)与签名验证(Sigstore)长期处于“各自为政”的状态。运维团队往往先扫描镜像,确认无高危漏洞后部署;但扫描结果本身并未被签名,攻击者可在镜像通过扫描后、推送至仓库前篡改内容。Sigstore 与 Trivy 的协同,本质上是将“安全扫描结果”与“不可篡改的签名”绑定,形成一条可验证的信任链。

维度 Trivy 单独使用 Sigstore 单独使用 协同使用
漏洞检测 ✅ 支持 ❌ 不支持 ✅ 扫描 + 签名绑定
防篡改 ❌ 扫描结果可被篡改 ✅ 签名保证完整性 ✅ 扫描结果签名固化
策略执行 ❌ 无策略引擎 ❌ 仅签名验证 ✅ 策略即代码统一决策
回滚安全 ❌ 无回滚护栏 ❌ 无回滚护栏 ✅ 签名策略阻断不安全回滚
核心价值:协同后,运维团队可以在部署前同时验证“镜像是否被篡改”和“镜像是否通过安全扫描”,并将这两项检查固化为策略代码,实现自动化门禁。

1.2 策略即代码(Policy as Code)概念

策略即代码(PaC)是将安全、合规、运维规则以声明式代码形式编写、版本化管理、自动化执行的方法论。在 Sigstore-Trivy 协同场景中,PaC 的核心作用是将“允许部署的条件”转化为可编程的断言。

典型策略示例:

# 策略:仅允许 Trivy 扫描结果为 CRITICAL=0 且经过 Sigstore 签名的镜像部署
package sigstore_trivy_policy

import rego.v1

default allow := false

allow if {
    # 1. 镜像必须包含有效的 Sigstore 签名
    input.sigstore.verified == true
    # 2. Trivy 扫描结果中无 CRITICAL 漏洞
    input.trivy.summary.critical == 0
    # 3. 签名时间必须在扫描时间之后(防止先签名后扫描)
    input.sigstore.signed_at > input.trivy.scanned_at
}
PaC 优势:策略代码可纳入 Git 仓库进行 PR 评审、版本回滚、审计追溯;相比人工配置,PaC 消除了“配置漂移”和“人为遗漏”的风险。

1.3 回滚护栏的运维意义

回滚是运维中最易被忽视的安全窗口。传统回滚操作通常跳过安全扫描和签名验证,直接拉取历史镜像部署,这为已知漏洞的重新引入或已被篡改的旧版本提供了可乘之机。回滚护栏是指在回滚流程中强制插入安全策略检查,确保回滚的镜像同样满足当前的安全基线。

回滚护栏的三大运维意义:

  • 防止漏洞回潮:旧版本镜像可能包含已修复的漏洞,回滚护栏通过 Trivy 扫描策略阻止此类镜像上线。
  • 防止签名失效:旧版本镜像的签名可能已过期或被吊销,回滚护栏通过 Sigstore 验证确保签名仍然有效。
  • 审计可追溯:每次回滚操作都会生成策略评估日志,满足合规审计要求。
常见误区:不要认为“回滚的镜像以前部署过就一定是安全的”。镜像内容可能被篡改,或漏洞库已更新导致旧版本被判定为高危。回滚护栏不是限制回滚,而是确保回滚操作的安全质量。

1.4 协同架构总览

下图展示了 Sigstore 与 Trivy 协同策略即代码回滚护栏的整体架构,包含 CI/CD 流水线、策略引擎、镜像仓库和 Kubernetes 集群四个核心域。

Sigstore-Trivy 协同策略即代码回滚护栏架构 Sigstore-Trivy 协同策略即代码回滚护栏架构 CI/CD 流水线 代码提交 镜像构建 Trivy 扫描 Sigstore 签名 推送镜像 策略引擎 OPA / Rego 策略即代码 签名验证 扫描结果校验 决策输出 镜像仓库 镜像存储 签名存储 扫描报告 不可变标签 审计日志 K8s 集群 准入控制器 策略检查 部署/回滚 状态报告 回滚护栏:回滚操作必须重新经过策略引擎验证 禁止跳过 Trivy 扫描和 Sigstore 签名验证直接部署旧镜像 回滚触发 策略即代码(PaC)将安全规则版本化管理,回滚护栏确保历史镜像同样受策略约束

1.5 本章小结

Sigstore 与 Trivy 的协同解决了软件供应链中“扫描结果不可信”和“签名无扫描上下文”的双重困境。策略即代码将安全规则从人工操作升级为自动化门禁,而回滚护栏则填补了运维中最容易被攻击的安全缺口。三者结合,构成了云原生部署安全的最后一道防线。

关键概念 一句话定义 在本课程中的角色
Sigstore 开源软件签名与验证框架 提供镜像签名、验证、透明度日志
Trivy 开源容器镜像漏洞扫描器 提供漏洞检测、SBOM 生成、策略输入
策略即代码 用代码定义安全与运维规则 将协同逻辑固化为可版本管理的策略
回滚护栏 回滚操作的安全强制检查机制 确保回滚镜像同样满足当前安全基线