用途:帮助在 GitHub Actions 中构建安全加固的 CI/CD 流水线,覆盖最小权限、供应链安全与持续监控。
主要能力与原则:
- 最小权限:在 workflow 顶层声明 permissions,仅授予必要项,如 contents: read,其余默认拒绝;仅在管理 PR 或 issue 时才加 pull-requests: write、issues: write。
- 固定 Action 版本:不使用可被移动的标签,改为固定到提交 SHA,例如 actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd。
- 加固运行器:每个 job 使用 step-security/harden-runner,并设置 egress-policy: audit 记录所有网络调用,可配合 allowed-endpoints 白名单。
- 密钥管理:通过 GitHub Secrets 注入,如 TOKEN: ${{ secrets.GITHUB_TOKEN }},禁止硬编码或回显密钥。
- 供应链安全:使用 dependency-review-action 做依赖审查(可设 fail-on-severity: moderate),用 CodeQL 做代码扫描,并在仓库设置中启用 secret scanning 与 push protection。
使用方式:提供安全加固的工作流模板,包含 harden-runner、固定 SHA 的 checkout 与 setup-node、npm ci 安装依赖,以及 npm audit、lint、test 等安全检查步骤。
适用场景:需要提升 GitHub Actions 流水线安全性的仓库与团队。
限制:资料未提供具体收费、平台支持范围或效果数据;示例中的 SHA 与版本需按实际情况核对更新。