首页/开发/CI/CD 与发布速查/CI 凭据最小权限
环境与配置管理60 条

CI 凭据最小权限

流水线令牌按作业需要发放:默认只读、写权限逐项声明、发布凭据只在发布作业可见,降低单点被利用的波及面。

CI/CD 与发布速查开发更新于 2026-10-12
GitHubpermissions 显式声明(默认收紧到只读);环境密钥仅在对应 environment 作业可见
GitLab受保护变量仅保护分支/标签可见;作业令牌范围有限
Jenkins凭据按文件夹/作业授权,避免全局可用

GitHub 收紧默认

GitHub 收紧默认
permissions:
  contents: read

jobs:
  release:
    permissions:
      contents: write
      id-token: write
审计方式:列出每个作业实际用到的权限,与声明比对,缩小到刚好够用。

易错点

  • 全仓默认写权限:任意第三方步骤可改仓库,改成默认只读+按作业放开
  • 发布令牌供所有作业使用:构建阶段被入侵即失守,按阶段隔离

数据来源与参考

  • GitHub Docs《Security hardening for GitHub Actions》
  • GitLab Docs《Protected variables》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌