jenkins用户权限配置 Role-based Authorization Strategy

插件简介

插件名称

Role-based Authorization Strategy

插件介绍

Role Strategy Plugin插件可以对构建的项目进行授权管理,让不同的用户管理不同的项目,将不同环境的权限进行区分。该插件可以很灵活的根据需求来进行划分权限,包括正则匹配等
实现需求
测试工程师需要一个通用用户,需要对测试环境的所有项目拥有只读的权限,并且可以构建
系统用户
deploy_test:test环境所需用户
jenkins 项目命名规则介绍
测试环境:dubbo.*platwbsapiv

安装插件

打开jenkins系统管理,单击管理插件,找到可选插件,输入插件名称,然后点击直接安装即可

 

 

 如果你已经安装过该插件,则在已安装一栏中可以看到该插件

 

 

配置全局安全策略

点击系统管理,点击Configure Global Security
在该页面中选择授权策略为:Role-Based Strategy

配置Manage and Assign Roles策略

点击系统管理,点击Manage and Assign Roles,如下图:

 

 

 

配置Manage Roles

在Manage Roles中有两种角色:Global roles用来分配全局策略,而 Project roles根据项目环境来分配项目权限

配置Global roles

 

 

 

 

 

admin:超级管理员,它拥有所有的全局权限
test:test环境的用户,它只可以看到全局的Overall面板
添加test的Overall的read权限原因:如果不添加的话,这些普通用户登录到jenkins则会提示:用户没有Overall/read权限(用户无法登陆)

reader:它只可以看到相关读权限的面板

配置 Project roles

 

 

 java.*:匹配所有以java开头的项目,并分配view、read、build及workspace等权限。

注意使用通配符‘时,需要在''前添加'.',否则无法保存并会报错。例如:.*plat

ps:不区分大小写(?i)roger-.*

配置Assign Roles

 

下面我们来将定义好的规则分配给具体的用户: java

配置Global roles

 

现在将用户和roles关联起来,这样java用户就 拥有了读权限

 

配置Item roles

 

 

 之前我们在Project roles中定义了一个规则,分别对应java.*的项目及权限,在这里我们将用户和project roles关联起来,这样对应的用户就拥有了对应项目roles的权限。

验证配置是否正确

java用户登录

1.面板权限(面板、师徒都能显示)

 

 2.项目角色权限验证(项目非java开头)

 

 3.项目角色权限验证(项目以java开头)

posted @ 2019-12-27 19:30  flytoyou  阅读(2208)  评论(1编辑  收藏  举报