在 Ubuntu 上配置 Jenkins 权限,通常是通过 基于角色的权限控制(RBAC) 或 项目矩阵授权 来实现的。下面从基础到常用方案给你一个完整配置指南。
假设你已经在 Ubuntu 上安装好 Jenkins:
sudo systemctl status jenkins
访问地址一般是:
http://<服务器IP>:8080
登录 Jenkins
进入:
Manage Jenkins -> Security
在 Security Realm 中选择:
Jenkins’ own user database(默认,适合小团队)LDAP(企业常用)在 Authorization 中先选择:
Matrix Authorization Strategy(简单直观)⚠️ 第一次配置建议保留一个管理员账号有全部权限
Manage Jenkins -> Manage Users -> Create User
Manage Jenkins -> Security
Authorization -> Matrix Authorization Strategy
示例:
| 用户 | Overall | Job | Build | Read |
|---|---|---|---|---|
| admin | ✅ | ✅ | ✅ | ✅ |
| dev01 | ❌ | ✅ | ✅ | ✅ |
| viewer | ❌ | ❌ | ❌ | ✅ |
Manage Jenkins -> Plugins -> Available
搜索并安装:
✅ Role-based Authorization Strategy
安装完成后重启 Jenkins。
Manage Jenkins -> Security
Authorization -> Role-Based Strategy
Manage Jenkins -> Manage and Assign Roles
Global Roles
admin → 全部权限reader → Overall ReadProject Roles
dev
dev-.*ops
ops-.*将用户绑定到角色:
| 用户 | Global Role | Project Role |
|---|---|---|
| admin | admin | — |
| tom | reader | dev |
| jack | reader | ops |
teamA-.*reader编辑:
sudo nano /var/lib/jenkins/config.xml
将:
<authorizationStrategy .../>
改为:
<authorizationStrategy class="hudson.security.AuthorizationStrategy$Unsecured"/>
然后:
sudo systemctl restart jenkins
Jenkins 默认用户是 jenkins:
sudo chown -R jenkins:jenkins /var/lib/jenkins
✅ 小团队:Matrix Authorization
✅ 中大型团队:Role-Based Strategy(强烈推荐)
✅ 企业:LDAP + Role
如果你愿意,可以告诉我:
我可以帮你直接设计一套权限模型。