尽可能向左移动……但你相信换挡者吗?

发布: (2026年2月24日 GMT+8 03:26)
4 分钟阅读
原文: Dev.to

Source: Dev.to

客户对话中的关键主题

  • 开发者体验 是全球企业的首要任务。
  • 信任 至关重要。它建立在业绩记录、可信度以及金融交易由可靠合作伙伴背书的保证之上。

零信任与 “左移” 运动

零信任(或 Never Trust, Always Verify)的概念强调评估风险管理和事件处理。盲目信任任何工具是不现实的;相反,我们追求通过透明度构建的 伪信任

安全的 左移 方法将扫描和利用分析提前到软件开发生命周期(SDLC)中。其好处包括:

  • 及早发现不安全的代码模式以及依赖中的已知 CVE。
  • 生成构建时(或烹饪时)SBOM,记录软件的“配方”。
  • 在 IDE 和预发布环境中进行持续扫描、动态攻击模拟和频繁检查。
  • 强制代码审查策略(例如,PR 必须有两位批准者,阻止直接提交)。

保障软件供应链安全

供应链安全是由众多不同贡献者提供的无数组件组成的复杂拼图。以下两个核心概念有助于建立信任:

  • 真实性 —— 确认组件确实来源于其声称的来源。
  • 完整性 —— 确保组件未被篡改。

诸如 cosign 的工具能够实现无密钥的加密签名,将文件绑定到身份上,从而验证容器镜像是否来自可信提供者(例如 “Olive Garden”),而非未知来源。

验证基础镜像

在使用多阶段 Dockerfile 时,必须验证基础镜像是否由可信来源签名。一个实用的工作流:

  1. 在 Dockerfile 中识别基础镜像。
  2. 将其 OCI 签名与经过审查的供应商白名单进行比对。
  3. 若签名有效,构建继续;否则构建失败。

注意: 如今这通常表现为黑名单(拒绝已知的恶意来源)。随着签名的普及,它可以演变为真正的白名单模型。

更深入地审视镜像链

除了直接的基础镜像外,软件供应链 还包括基础镜像的基础镜像,依此类推。随着 OCI 镜像签名的成熟,工具可以递归分析 Dockerfile,验证整个依赖链。

TL;DR

  • 我们在使用 伪信任,但应采用 零信任 思维。
  • 为镜像签名 并将签名与可信来源进行核对。
  • 将软件供应链视为 链条,而非单一环节。
  • 负责任地使用组件,并保持乐观的姿态。

试一试

在 GitHub 上探索 Integrity‑Check 工具:

0 浏览
Back to Blog

相关文章

阅读更多 »