>>> 目录
权限需求
因JENKINS上存有de(开发)、te(测试)、re(预发布)等三个不同环境的项目,同时因为项目需求,需要对不同的开发及测试人员配置不同的jenkins权限,即以项目为单位,对不同人员进行不同权限配置,要求如下:
1、项目都以healthcloud开头,分别以-de、-te、-re结尾,根据三类结尾可把项目分成开发、测试、预发布三类项目,同时分别对应不同的项目需求人员;
2、开发人员登录jenkins只能查看并构建de项目;
3、测试人员登录jenkins只能查看并构建te项目;
4、re账号提供给所有人,只具有查看所有项目的权限,便于技术人员排查问题。
说明:
1、此文创建test和re账号,对其进行权限分配并图文说明,其他需求可按部就班!
2、此文的截图中可能涵盖其它需求配置,此处请重视截图的红框标记即可,其他配置可忽略!
前提说明
要实现权限需求,需先确保jenkins的权限插件已安装,插件名:Role-Based Strategy或者Role-based Authorization Strategy
功能实现
用管理员账号登陆Jenkins;
系统管理à管理用户à新建用户à创建test和re用户;
![](https://img.haomeiwen.com/i16099871/c347ad1c39c65348.png)
系统管理à全局安全配置,选择授权策略;
![](https://img.haomeiwen.com/i16099871/fc9f9256550c7e77.png)
系统管理àManage and Assign Roles,配置权限策略;
![](https://img.haomeiwen.com/i16099871/caa69ef768580e5d.png)
选择Manage Roles,分别进行Global roles、Project roles权限配置;
注:必须先进行Global roles的配置后方可对Project roles进行配置,可以理解为先配置整体性权限,再按项目分权限,遵守从大到小权限控制的原则!
![](https://img.haomeiwen.com/i16099871/990f95bf3e86ed1b.png)
配置Global roles的builder和reader权限;
![](https://img.haomeiwen.com/i16099871/23505828456a782c.png)
配置Project roles,根据正则匹配对不同用户分配不同项目的不同权限(此处框内意义是角色te-all具有所有te结尾的项目的构建权限);
![](https://img.haomeiwen.com/i16099871/8be15bf523a77a83.png)
配置Assign Roles;
![](https://img.haomeiwen.com/i16099871/5a11fea581af6d4e.png)
配置re账号的全局可读权限和test账号的全局构建权限;
![](https://img.haomeiwen.com/i16099871/d779ba9b07a8bb10.png)
此时test具有全局的构建权限,现需针对项目对其划分仅有指定测试环境的项目构建权限,即缩小权限,添加约束;
![](https://img.haomeiwen.com/i16099871/1c2cb723cf112a5b.png)
功能验证
管理员账号(kazihuo)登录,显示所有项目的所有权限;
![](https://img.haomeiwen.com/i16099871/32c4a0c14e4ee40b.png)
test账号登录,只显示所有以te结尾的项目,同时具有构建权限;
![](https://img.haomeiwen.com/i16099871/bf3bcbfaa2d0f4a1.png)
网友评论