在 CentOS 下配置 Jenkins 权限,通常是通过 Jenkins 自带的权限管理(基于角色或矩阵) 来实现的。下面按常见场景给你一个完整、可操作的说明。
http://<服务器IP>:8080
在 Security Realm 中选择:
不建议选 Unix user/group,除非你明确要用系统账号
勾选:
在 Authorization 中选择:
然后:
| 用户/角色 | Administer | Read | Job → Build | Job → Configure |
|---|---|---|---|---|
| admin | ✅ | ✅ | ✅ | ✅ |
| dev | ❌ | ✅ | ✅ | ❌ |
| test | ❌ | ✅ | ❌ | ❌ |
✅ 表示授权,❌ 表示禁止
适用于用户少、权限简单的场景
Manage Jenkins → Manage Plugins → Available 搜索并安装:
Role-based Authorization Strategy
Configure Global Security → Authorization 选择:
Role-Based Strategy
进入: Manage Jenkins → Manage and Assign Roles
dev-* 项目)test-* 项目)✅ 这种方式适合 多项目、多团队
Manage Jenkins → Users → Create User
Jenkins 用户是内部数据库,一般不在系统层创建
Jenkins 在 CentOS 上通常以 jenkins 用户运行:
ps -ef | grep jenkins
如果你在 Job 里执行:
/var/lib/jenkinsdocker/opt需要:
sudo usermod -aG docker jenkins
sudo chown -R jenkins:jenkins /your/path
改完重启:
sudo systemctl restart jenkins
vim /var/lib/jenkins/users/admin/config.xml
删除 <passwordHash> 内容并重启
✅ Jenkins 内部用户
✅ Role-based Authorization
✅ 最小权限原则
✅ Jenkins 用户加入 docker 组
如果你愿意,可以告诉我:
我可以直接给你 对应配置示例。