在 Jenkins 中保证安全(Security)通常从 认证、授权、访问控制、凭据管理、CSRF 防护、插件与升级 等方面入手。下面给你一个实用、可落地的安全配置指南,适合生产环境。
路径:
Manage Jenkins → Security → Security
✅ 必须开启 Enable security
| 方式 | 场景 |
|---|---|
| Jenkins 自带用户数据库 | 小规模、简单 |
| LDAP / AD | 企业内网 |
| OAuth(GitHub / GitLab / 企业 SSO) | 推荐,现代、安全 |
✅ 不要使用“任何人可以做任何事”
插件:
Role-based Authorization Strategy
| 角色 | 权限 |
|---|---|
| admin | 全部 |
| dev | 构建、查看 |
| viewer | 只读 |
✅ 最小权限原则
❌ 避免给普通用户 Overall/Administer
路径:
Manage Jenkins → Manage Credentials
✅ 存:
❌ 不要:
默认开启,不要关闭
Manage Jenkins → Security
✅ Enable CSRF Protection
Pipeline 中调用 API 时:
❌ 不使用:
Manage Jenkins → Nodes
Master: # of executors = 0
✅ 使用 Script Security Plugin
approval 绕过Manage Jenkins → In-process Script Approval
✅ 使用 Jenkinsfile
✅ 使用 agent none / docker
✅ 禁止:
sh "rm -rf /"
sh "curl evil.com"
JENKINS_HOME✅ 开启安全
✅ RBAC 权限
✅ 凭据管理
✅ CSRF 开启
✅ Master 不跑任务
✅ 插件定期更新
✅ API Token 不滥用
✅ 日志审计
如果你愿意,我可以进一步帮你:
你可以直接告诉我你的 部署方式(裸机 / Docker / K8s)和使用规模。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。