
Jenkins角色管理(Role Strategy)
Role Strategy插件介绍
使用Role Strategy插件来添加新的基于角色的机制来管理用户的权限。
安装Role Strategy插件
通过下面的页面路径访问并安装插件,我这里已经安装好了。
启动Role Strategy插件
我们在全局配置安全里面将权限访问Authorization
模块下选择为Role-Based Strategy
并加以保存。
在Manage Jenkins中多了一个Manage and Assign Roles模块,在该大模块下又分两个小模块Manage Roles
与Assign Roles
,先来看看Manage Roles
模块。
Manage Roles
在Manage Roles界面上有三个模块:Global roles、Item roles与Node roles。
Global roles
创建全局角色,例如管理员,作业创建者,匿名角色等,从而可以在全局基础上设置总体,代理,作业,运行,查看和SCM权限。
我们这里就添加一个只可以读的权限就可以了。
Item roles
创建项目角色,仅允许基于项目设置Job和Run权限。
在这里我们有两个项目gitee-test-password
与myFreestyleProject
,我们分别用不同的项目权限对项目进行管理。
在添加Item roles的时候有如下规则:
- 如果将字段设置为
gitee-.*
,则该角色将匹配名称以开头的所有作业gitee-
。- 模式区分大小写。要执行不区分大小写的匹配,请使用
(?i)
表示法:(?i)gitee-.*
这样不区分大小写的。- 可以使用以下表达式匹配文件夹
^foo/bar.*
在这里我们添加好管理以gitee
开头的项目与以my
开头的项目,最后我们还可以点击蓝色匹配字段去检测能管理的项目是否存在。
Node roles
创建代理角色,允许设置与节点相关的权限。
这里我们就添加一个master节点的相关权限就好了。
创建相关用户
然后我们添加好测试两个测试用户aidasi
与heminyang
,并测试登录一下。
我们发现并没有相关权限,所以接着我们将用户与角色权限关联起来。
Assign Roles
将这些角色分配给用户和用户组。
我们先赋予基础读权限。
然后我们让aidasi
用户管理以gitee
开头的项目,让heminyang
管理以my
开头的项目。
最后我们让aidasi拥有master的代理权限,并且保存用户组与角色权限的关联
测试用户
欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739

