jenkins配置用户权限

前言

在实际使用中,需要对使用jenkins的开发人员或者运维人员控制一定的权限,比如不同的用户只能对指定的项目进行构建等,jenkins本身没有管理用户权限的相关配置,需要借助插件来完成,比较常用的插件叫做Role-based Authorization Strategy

1、安装Role-based Authorization Strategy

搜索Role即可显示该插件
jenkins配置用户权限
这个安装的很快
jenkins配置用户权限
从安全配置菜单进入
jenkins配置用户权限

点击进去可以看到默认情况下,登录进来的用户可以做任何事,也就是权限的粒度是很粗的,因此需要改成如下所示

jenkins配置用户权限

选择并保存成功后,从系统管理页面进入Manage and Assign Roles
jenkins配置用户权限
选择manage roles
jenkins配置用户权限

进入如下的角色配置页面
jenkins配置用户权限
默认情况下,具有3种角色,Global roles,Item roles,Node roles

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

我们添加以下三个角色:

  1. BaseRole:全局角色,该角色需绑定Overall下面的Read权限,是为了给所有用户绑
    定最基本的Jenkins访问权限。【注意:如果不给后续用户绑定这个角色,会报错误:用户名 is
    missing the Overall/Read permission】
  2. role1:项目角色,使用正则表达式绑定"web.*",表示只能操作web开头的项目
  3. role2:项目角色,绑定"app..",意思是只能操作app开头的项目

jenkins配置用户权限

配置完毕后点击保存

我们知道,在权限分配中,用户是需要配置角色的,即用户拥有了某种角色,即具备了角色对应的权限,下面我们先创建几个用户,进入如下菜单

jenkins配置用户权限

我们创建两个用户,分别是zhangsan 和 lisi
jenkins配置用户权限

jenkins配置用户权限

创建完毕后,我们进入Manage and Assign Roles 进行用户的角色配置
jenkins配置用户权限
将上面自己添加的角色分别为两个用户进行关联,保存
jenkins配置用户权限

接下来,使用管理员账户创建两个项目分别为,web-demo和app-demo,验证一下权限是否生效
jenkins配置用户权限

使用zhangsan 和 lisi两个账户分别登陆一下,进入主页面后,可以发现各自只能看到上面的角色配置中以web开头和以app开头的项目
jenkins配置用户权限
jenkins配置用户权限

本篇主要讲述了在jenkins中使用Role-based Authorization Strategy 插件来完成对用户的权限分配和管理,主要是操作过程比较繁琐,难度不大,希望对看到的同学有用,最后感谢观看!