需求
根据不同的团队分配不同的角色,角色成员只能看到自己团队文件夹内部的jenkins job。
Jenkins版本:2.249
因安装了中文包的原因,语言大多以中文的方式显示,但不影响配置使用。
下载权限管理插件
Manage Jenkins -> Manage Plugins 选择安装Role-based Authorization Strategy插件。
重启后再全局安装配置中找到授权策略,选择Role-Based Strategy。
若是离线环境可以转到—>https://plugins.jenkins.io/ui/search/?query=Role-Based%20Strategy下载。
创建测试环境
创建三个测试账户和两个测试项目文件夹。
模拟需求,例如other只能看到t2的项目文件夹,test只能看到t1的项目文件夹。
创建角色
系统配置–>Manage and Assign Roles
然后选择Manage Roles
创建角色test-role,配置用户的功能权限。
创建项目角色test-role,配置管理项目的权限。
项目角色是在全局角色的基础上配置的,所以二者缺一不可。
注:在创建项目角色的时候,Pattern所填的内容是正则匹配,由开头(例如:QwQ)加上.*结束,意思为匹配以QwQ开头,以任意字符结尾的项目或文件夹等。
对两种角色的说明:
Global roles:全局角色,主要用于配置用户的功能权限
Item roles:项目角色,主要管理项目的权限
将角色分配给用户
选择Assign Roles,将角色分配给用户
将全局角色和项目角色分配给用户,这里的用户是test,将用户添加进去,并且勾选我们创建的test-role。
测试
登录test用户,验证配置是否正确
从结果来看,界面视图只能看到t1的项目文件夹,表明配置正确,接下来以相同的操作配置other用户,使其只能看到t2项目文件夹。
关于other的配置,因过程相同,就简单说明一下。
创建角色
创建项目角色
将两种角色分配给other用户
登录验证
以上就是基于不同用户的不同视图,配置完成。