---

title: OCI容器镜像供应链治理(SBOM-签名-拉取策略)最佳实践

keywords:

  • OCI
  • 容器镜像
  • SBOM
  • 签名
  • 拉取策略

description: 通过镜像签名与 SBOM 绑定、拉取策略与来源白名单,保障镜像供应链的可追溯与完整性。

categories:

  • 文章资讯
  • 编程技术

---

实现示例

type Image = { name: string; tag: string; digest: string }
type Sig = { alg: 'RS256'; kid: string; b64: string }
type Policy = { allowRegistries: Set<string>; pull: 'Always' | 'IfNotPresent' }

function hex64(h: string): boolean { return /^[A-Fa-f0-9]{64}$/.test(h) }

function validImage(i: Image, p: Policy): boolean {
  try {
    const url = new URL(`https://${i.name}`)
    return p.allowRegistries.has(url.origin) && !!i.tag && hex64(i.digest)
  } catch { return false }
}

function validSig(s: Sig): boolean { return s.alg === 'RS256' && !!s.kid && /^[A-Za-z0-9+/=]+$/.test(s.b64) }

function allowPull(i: Image, s?: Sig, p?: Policy): boolean {
  if (!p || !validImage(i, p)) return false
  if (p.pull === 'Always') return !!s && validSig(s)
  return true
}

审计与运行治理

  • 审计镜像来源、摘要与签名;策略 Always 必须签名通过。
  • SBOM与镜像绑定并归档;异常阻断拉取并回退到可信版本。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部