在Jenkins中使用插件进行项目权限管理
在Jenkins中使用插件进行项目权限管理
1、先安装插件Role-based Authorization Strategy
2、Role-based Authorization Strategy插件的使用:
- 在Configure Global Security 中启用Role-Base Strategy
- 这样在Jenkins的系统管理中可以看到“Manage and Assign Roles”
- 进入后会看到Manage Roles和Assign Roles, 再进到Manage Roles和Assign Roles后会看到都有Global roles,这里可能会有同学有疑问,两个地方的Global roles是什么区别和Project roles 和 Item roles是什么区别:
Global roles是对全局的角色控制,Manage Roles中的Global roles是设置角色,而Assign Roles中的Project roles是对人员分配角色。
Manage Roles中Project roles只针对项目进行控制。所以如果需求只是对项目设置控件权限,只需在Project roles中添加色色。
如下添加qa角色实例:这里的Pattern为InterfaceTest.*,使用正则表达式,意为在qa组中的成员,对视图为InterfaceTest开头的都有相应设置的权限。
Project roles添加qa:
Assign Roles的item roles中添加test用户:
这样test用户就对InterfaceTest开头的所有视图都有在project roles设置的权限了。
这样使用需注意:1、需先在manage roles中加一个角色Anonymous(自定义)有Overall下的Read权限。
2、在Assign Roles的Global roles中为匿名用户Anonymous分配Anonymous权限,不然会出现登陆时提示"Access Denied"。
如下为转载:
关于pattern处的填写:
官方文档介绍该选项支持正则表达式,如Roger-.
表示所有以Roger-开头的项目, (?i)roger-.*
表示以roger-
开头的项目并且不区分大小写,如以ABC
开头的项目可以配置为ABC|ABC.* ,也可以使用“abc|bcd|efg”直接匹配多个项目。
与的运算,比如匹配以aa开头并且不包括abc的字符串:aa[^abc].*
官方文档: https://wiki.jenkins-ci.org/display/JENKINS/Role+Strategy+Plugin