跳至正文

Jenkins的用户权限管理插件Role-based Authorization Strategy

  • Jenkins

随着Jenkins的使用深入,会发现需要给不同的用户配置不同的操作权限,虽然Jenkins也自带用户权限管理,但比较简单,不支持用户组和项目的划分,因此需要第三方插件来实现更精细的权限管理,使用比较广泛的是Role-based Authorization Strategy插件,可以满足所有关于用户和权限的管理需求。

安装

Jenkins插件管理中搜索Role-based Authorization Strategy进行安装。

配置

1、创建Jenkins用户
Jenkins系统管理 -> 管理用户,先创建3个用户:cehua、dev、root,方便后面分配不同权限,如下图所示。

2、配置权限
Jenkins系统管理 -> Manage and Assign Role,如下图:

先点击 Manage Roles(管理角色),配置完成后如图所示:

  • Global roles 是角色权限管理,图中分配了3种角色,权限从高到低依次是:admin、developer、anyone,后面勾选对应权限。

  • Item roles 是任务权限管理,即指定角色可以管理哪些任务。图中分配了两种任务权限,分别是 group_anyone、group_developer。
    group_anyonepatterncehua.*,代表 cehua 开头的任务对 group_anyone 有效。
    group_developerpatterncehua.*|dev.*,代表 cehua 或 dev 开头的任务对 group_developer 有效。

然后进入 Assign Roles(分配角色),即给用户指定什么角色,使它拥有相应的角色权限。配置完成后,如下图所示。

  • Global roles
    cehua 用户分配到 anyone 角色,代表它拥有 anyone 的角色权限。
    dev 用户分配到 developer 角色,代表它拥有 developer 的角色权限。
    root 用户分配到 admin 角色,代表它拥有 admin 的角色权限。

  • Item roles
    给 cehua 勾选 group_anyone 权限,按前面配置,代表它能管理 cehua 开头的任务。
    给 dev 勾选 group_developer 权限,按前面配置,代表它能管理 cehua 或 dev 开头的任务。

测试

重新用 cehua、dev、root 等不同用户名登录Jenkins,就可以看到或管理不同的任务了。

标签:

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注