一、jenkins 权限分配插件安装(无需重启服务)

1、安装 Role-based Authorization Strategy 插件来管理 Jenkins 用户权限

Manage Jenkins - Manage Plugins - 可选插件中安装 Role-based Authorization Strategy

jenkins的role和user可以不一致 jenkins 角色权限管理_运维

2、开启权限全局安全配置

Manage Jenkins - Configure Global Security - 选中Role-Based Strategy - 保存

jenkins的role和user可以不一致 jenkins 角色权限管理_运维_02

3、创建对应的角色

Manage Jenkins - Manage and Assign Roles - Manage Roles - 保存

jenkins的role和user可以不一致 jenkins 角色权限管理_linux_03

相关权限具体自己的需求选定:
Global roles (全局角色):管理员等高级用户可以创建基于全局的角色
Item roles(项目角色):针对某个或者某些项目的角色
Slave roles(节点角色):节点相关的权限

我们添加以下三个角色:
baseRole :该角色为全局角色。这个角色需要绑定Overall下面的Read权限,是为了给所有用户绑
定最基本的Jenkins访问权限。注意:如果不给后续用户绑定这个角色,会报错误:用户名 is missing the Overall/Read permission
demo :该角色为项目角色。使用正则表达式绑定 “demo.",意思是只能操作 demo 开头的项目。
web :该角色也为项目角色。绑定 "web.
”,意思是只能操作 web 开头的项目。

温馨提示: 针对以上的勾选的全局权限和项目权限都可以多尝试进行操作熟悉,便可观察到它对应的功能模块

4、创建用户,可登录

Manage Jenkins - Manage Users

分别创建两个用户: demo01 和 web01

jenkins的role和user可以不一致 jenkins 角色权限管理_运维_04

5、给用户分配角色

Manage Jenkins - Manage and Assign Roles - Assign Roles - 保存

绑定规则如下:

demo01 用户分别绑定 baseRole 全局角色和 demo 项目角色(有删除权限)

web01 用户分别绑定 baseRole 全局角色和 web 项目角色(没有删除权限)

jenkins的role和user可以不一致 jenkins 角色权限管理_运维_05

创建对应的项目分配,登录相关的用户观察具体情况

jenkins的role和user可以不一致 jenkins 角色权限管理_linux_06

demo01 用户授权的项目

jenkins的role和user可以不一致 jenkins 角色权限管理_sed_07

web01 用户授权的项目

jenkins的role和user可以不一致 jenkins 角色权限管理_sed_08


由此看来,得出来的结果为:

demo01 用户登录,只能看到 demo 项目

web01 用户登录,只能看到 web 项目