我们可以利用Role-based Authorization Strategy
插件来管理Jenkins
用户权限
1. 安装Role-based Authorization Strategy
插件
选中,直接安装
2. 开启权限全局安全配置
授权策略切换为 Role-Based Strategy
,保存
3. 创建角色
点击Manage Jenkins
选择Manage and Assign Roles
点击Manage Roles
Global roles
(全局角色):管理员等高级用户可以创建基于全局的角色Item roles
(项目角色):针对某个或者某些项目的角色Node roles
(奴隶角色):节点相关的权限
我们添加以下三个角色:
-
baseRole
:该角色为全局角色。这个角色需要绑定Overall
下面的Read
权限,是为了给所有用户绑
定最基本的Jenkins
访问权限。
如果不给后续用户绑定这个角色,会报错误:用户名 is missing the Overall/Read permission
-
role1
:该角色为项目角色。使用正则表达式绑定"itcast.*"
,意思是只能操作itcast
开头的项目。 -
role2
:该角色也为项目角色。绑定"itheima.*"
,意思是只能操作itheima
开头的项目。
点击保存
4. 创建用户
点击Manage Jenkins
选择Manage User
点击新建用户
分别创建两个用户: tom
和jim
5. 给用户分配角色
点击Manage Jenkins
选择Manage and Assign Roles
,点击Assign Roles
绑定规则如下:
-
tom
用户分别绑定baseRole
和role1
角色 -
jim
用户分别绑定baseRole
和role2
角色
点击保存
6. 创建项目测试用户权限
以管理员账户john
创建两个项目,分别为itcast01
和itheima01
点击确定
同理创建itheima01
项目,最终如下图所示
此时两个项目创建完毕
此时分别以新建用户账号登录,可以发现已经tom
用户登录,只能看到itcast01
项目jim
用户登录,只能看到itheima01
项目