安全基线

目的

定义代码、凭证、仓库和生产环境的最低安全实践。先保证人类操作有边界、有审计,再考虑让自动化或 Agent 接触这些资源。

工具

需要 工具
开发者密钥 1Password
高级密钥 / 动态凭证 Vault
依赖扫描 Dependabot / GitHub Advanced Security
SAST CodeQL / Semgrep
Secret scanning GitHub secret scanning / TruffleHog
SBOM Syft / GitHub dependency graph
Provenance 面向 SLSA 的 build attestations
访问控制 SSO/MFA、GitHub teams、cloud IAM

最低规则

  1. 组织工具启用 SSO 和 MFA。
  2. Repo access 最小权限。
  3. Main 分支启用保护。
  4. 使用集中 secret manager。
  5. Secret 不得出现在代码、日志、Slack/Lark、issue comment 或截图。
  6. CI 或定时任务执行依赖扫描。
  7. Auth、权限、数据导出、支付、生产配置必须安全 review。
  8. 关键动作必须有 audit log。

三角色安全责任

角色 负责判断 例子
产品负责人 业务是否接受用户和数据风险 客户数据导出、权限变化、对外沟通
技术负责人 技术方案和安全边界是否可接受 auth、支付、数据删除、生产配置
平台 / 资深工程师 权限、secret、审计、工具策略如何落地 IAM、secret manager、CI secret、audit log

密钥管理

通用阶段建议:

阶段 建议
早期 1Password vaults 和 service accounts
Infra 复杂后 Vault 或 cloud secret manager
合规/复杂场景 Vault dynamic credentials + audit

1Password Secrets Automation 可以通过 service account 或 Connect 向应用暴露密钥。Vault 可以集中管理密钥、轮换凭证、按需生成凭证,并审计访问。

供应链

最低要求:

  1. Lockfile 必须提交。
  2. CI 使用 frozen lockfile。
  3. 开启 Dependabot 或同类能力。
  4. Build artifact 可追溯到 commit。
  5. Container image 使用 immutable digest 或 commit tag。
  6. 生产 artifact 尽可能生成 SBOM。

后续 Agent 就绪要求

这一节在人类安全基线稳定后再看。

Agent runtime 必须具备:

  1. 独立于人类用户的身份。
  2. 短期 token。
  3. Scope-limited repo grant。
  4. Tool allowlist。
  5. Secret access audit。
  6. Sandbox 或 worktree 隔离。
  7. 风险动作 approval gate。

下一步阅读

读完或填完这份文档后,通常继续看: