Jenkins安装
Jenkins构建android
Jenkins构建maven
Jenkins构建nodejs应用发布到nginx
Jenkins权限管理
1、引言
随着要构建的项目越来越多,Android、后台、前端等人员都需要来构建,这时如果把不相关的构建项目展示出来,势必会引起混乱,这时就需要引入权限管理。
本文依赖Role-based Authorization Strategy插件来实现,按道理没必要专门介绍一个插件的使用,但是在搜集和使用时,发现很多博主描述不清晰,容易让新手摸不着头脑,所以这里详细介绍一下。
1.1、目标
分用户展示构建job
不同用户登录进来,只展示自己相关的job条目,比如Android builder进来只展示Android项目的job条目。
分角色对构建job进行编辑控制
不同用户登录进来,有的用户可编辑修改job,有的用户则只能执行。
2、安装Role-based Authorization Strategy插件
在jenkins管理面板依次点击
Manage Jenkins --> Plugin Manager --> Filter输入框
输入Role-based Authorization Strategy,根据提示自行安装。
在jenkins管理面板依次点击
Manage Jenkins --> Configure Global Security
找到Access Control或者叫授权策略选项卡,选中Role-Based Strategy单选项。
3、创建用户
在jenkins管理面板依次点击
Manage Jenkins --> Manage Users
根据需要创建一些用户,请注意meihua这个用户,后续介绍以该用户为主。
4、配置权限
4.1、创建角色
在jenkins管理面板依次点击
Manage Jenkins --> Manage and Assign Roles --> Manage Roles
这里分配3个角色,admin有所有权,user只有构建job的权力,webuser有构建和编辑job的权力。主要看图示箭头2处的权限选择。
图示箭头1,webuser这个是随便取的名字,主要用来区分是否可编辑job。
图示箭头3,web是随便取得名字,用来对应已创建好的job handy_admin_web,这里注意不能用别名,需要用Project name,可自行点开对应的job查看。Pattern并不是一定要完整填写绝对名称,有一些匹配规则,自行查找,这里不再赘述。
点击Save退出。
4.2、给用户分配角色
在jenkins管理面板依次点击
Manage Jenkins --> Manage and Assign Roles --> Assign Roles
图示箭头1,这里给meihua这个用户,分配了webuser权限,webuser可编辑job。Anonymous是其他人的意思,其他人都是普通user权限,只能构建job不可编辑。
图示箭头2,android这个用户,可以查看project列表里的android项目。meihua这个用户,可以查看web项目。
点击保存推出。
5、查看结果
5.1、登录android用户
可看到2个Android构建job
进入详情页,左侧没有Configure导航栏
5.2、登录meihua用户
只能看到前端的构建项目
进入详情,有编辑权限
至此,权限分配完毕。