Jenkins创建用户并分配不同视图的权限

根据不同的部门分配不同的角色,角色成员只能看到自己部门视图内部的jenkins job
Jenkins版本:2.249
因安装了中文包的原因,语言大多以中文的方式显示,但不影响配置使用
Jenkins要想以视图分配权限,需要注意一个规范:在创建视图时以项目的缩写命名再加上项目的具体名称,例如:dev_boss,dev就是项目的整体名称,boss就是其中的一个模块,这样一来我们做权限分配时,以dev开头就能匹配到所有dev的项目并且在一个视图中显示

1.安装权限管理插件

Manage Jenkins -> Manage Plugins 选择安装Role-based Authorization Strategy插件
在这里插入图片描述
安装成功
在这里插入图片描述
将授权策略设置为 Role-Based Strategy
在这里插入图片描述
设置完成后即可在security中看到Manage and Assign Roles
在这里插入图片描述

2.创建2个不同的账号及job视图

新建视图,以test1视图为例,test2一致
在这里插入图片描述
指定任务到该视图
在这里插入图片描述
新建用户,以test1为例,test2配置一致

点击系统管理—管理用户—新建用户
在这里插入图片描述
用户和视图均已创建完毕
在这里插入图片描述

3.创建Jenkins角色

Jenkins两种角色的说明:

Global roles:全局角色,主要用于配置用户的功能权限
Item roles:项目角色,主要管理项目的权限

点击系统管理—Manage and Assign Roles
在这里插入图片描述
点击Manage Roles
在这里插入图片描述

3.1.创建全局角色

在role to add中填写角色的名称,然后勾选对应的权限即可

注意:job权限这里只选择一个create即可,不要勾选read否则所有项目都可以查看到,如果希望用户都看到项目但是不能操作也可以勾选read
在这里插入图片描述

3.2.创建项目角色

项目角色主要是用户对项目有什么权限,可以给所有权限

在创建项目角色的时候,Pattern所填的内容是正则匹配

test1.*表示以test1开头的项目,test.*|Test.*表示以test或Test开头的项目

在这里插入图片描述
全局角色和项目角色添加完后要点击下面的save进行保存

4.将角色分配给用户

角色是用来决定用户有什么权限,因此需要和用户进行绑定

点击Assign Roles
在这里插入图片描述
在 User/group to add 输入用户的名称点击add即可添加用户,然后根据不同的用户勾选不同的角色对应,全局角色和项目角色都需要添加,最后点击保存
在这里插入图片描述

5.验证用户权限

test1用户登录

直接看all即可,可以看到只有test1开头的项目能被看到,所有视图都在这里显示,但是只能看到test1开头的项目
在这里插入图片描述
test2用户登录

直接看all即可,可以看到只有test2开头的项目能被看到,所有视图都在这里显示,但是只能看到test2开头的项目
在这里插入图片描述
其他视图的job无法查看
在这里插入图片描述

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐