Agent Skills
返回列表
🔒

CI/CD 密钥管理

IT 运维与安全 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/secrets-management-zh。

技能介绍

问题从哪来

CI/CD 与运行时往往要碰 API 密钥、数据库密码、TLS 证书。一旦写进仓库或镜像,泄露面会随每次 clone、日志打印和权限扩散而放大。本技能围绕「密钥不进 Git、按需下发、可轮换、可审计」这条线,把常见后端和流水线接入方式串成可执行步骤。

技能在做什么

适用方向包括:集中存 API 凭证与 DB 密码、管证书、做自动或半自动轮换,以及用最小权限让作业在运行时取密。

操作主线(与 SKILL 一致):

  1. 梳理密钥类型、责任人与轮换周期。
  2. 选后端(如 HashiCorp Vault、AWS Secrets Manager、Azure Key Vault、GCP Secret Manager)和访问模型。
  3. 在 GitHub Actions、GitLab CI 或 K8s(如 External Secrets Operator)里以最小权限集成取密。
  4. 验证轮换流程并打开审计日志。

工具与模式要点:Vault 侧重集中管理、动态凭据与细粒度 ACL;AWS Secrets Manager 适合 AWS 原生栈与 RDS 自动轮换;GitHub/GitLab 侧则区分组织/项目变量、受保护分支、掩码与文件型变量,避免密钥出现在作业日志里。最佳实践强调:环境隔离密钥、定期轮换、日志掩码、静态加密,以及用 GitGuardian、TruffleHog 等做提交前/流水线扫描。

轮换:可依赖 AWS 自动轮换,或按「生成新密 → 更新密钥库 → 应用切换 → 验证 → 撤销旧密」走手动流程。

边界与注意

  • 不要把密钥提交进源代码管理;也不要在无法保证后端访问安全的环境里硬上集中式方案。
  • 若只是本地开发、且不共享的临时值,不必上完整企业级密钥栈。
  • 安全底线:限制访问、记录使用、绝不在公开日志中暴露明文密钥。

使用场景

  • GitHub Actions 部署脚本需读数据库密码,要把仓库里的硬编码改为从 AWS Secrets Manager 按环境拉取
  • GitLab CI 在多分支发布时,为 staging/production 配置受保护、掩码的项目变量,避免密钥出现在作业日志
  • RDS 实例密码需定期更换,要在 AWS 上启用 Secrets Manager 自动轮换并验证应用仍能连库
  • 团队担心误提交 API Key,要在提交前钩子或 CI 阶段接入 GitGuardian、TruffleHog 做密钥扫描

适合人员

  • 负责公司 GitHub Actions 模板、要把组织密钥与 Vault/AWS 后端接进流水线的平台工程师
  • 维护 GitLab CI/CD 的 SRE,需要区分环境变量、受保护分支策略并在日志里掩码敏感字段
  • 安全工程师要落实「密钥不进 Git」、查审计日志并推动 CI 与密钥库的最小权限访问模型
  • 在 Kubernetes 上跑业务、需用 External Secrets Operator 把 Vault 或云密钥同步到集群的集群运维