首页/开发/CI/CD 与发布速查/缓存与制品中的凭据泄漏
环境与配置管理60 条

缓存与制品中的凭据泄漏

构建缓存、镜像层、制品归档都可能夹带凭据:用短时凭据与 secret 挂载替代「写进构建环境」,并定期扫描制品。

CI/CD 与发布速查开发更新于 2026-10-12
高发位置包管理器配置(.npmrc、.pypirc)、kubeconfig、镜像层里的 ENV/文件、CI 缓存目录
对策构建期用 BuildKit secret 挂载;凭据最小权限且短时效;事后扫描(trivy fs/镜像扫描)
清理发现即轮换凭据并重建受影响制品

BuildKit 挂载密钥

BuildKit 挂载密钥
RUN --mount=type=secret,id=npmrc,target=/root/.npmrc npm ci
缓存与层是「历史沉积」:改流程后旧内容仍在,需要清理与扫描确认。

易错点

  • 把 token 作为 build-arg 传入:会记录在镜像历史,改用 secret 挂载
  • 发现泄漏只删缓存不轮换:已发生的暴露不因删除而撤销

数据来源与参考

  • Docker Docs《Build secrets》
  • Trivy 文档
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌