Jenkins多团队任务权限管理实践

463 阅读2分钟

背景

新项目组合并过来,给他们配置他们项目的jenkins构建打包任务,方便统一管理。

希望给他们分配一个账号,这个账号只能构建和配置他们自己的项目。

为什么记录

  1. 由于这个过程还是需要一些步骤来完成的,觉得需要记录下,不然时间长了忘了,又有这样的事情过来,又得网上搜一遍如何做下面来看怎么一步步做。
  2. 还有记录的好处,是方便交接给团队其他人。
  3. 自己花了时间get到的技能,忘了可惜,不如记下来分享

操作的前提,你有jenkins管理员账号,是jenkins管理员。

下面一步步来看怎么做。

jeninks版本:2.319.3

创建角色

系统管理->安全->Manage and assign roles

image.png

然后点Manage Roles image.png

在Global roles里新加itemadmin,添加(全部->read),(任务->Read,Workspace)

在Item roles里添加一个role,vm-Manager。 pattern填上vm-Manager.*,表示匹配vm-Manager前缀的任务

image.png

关于这个pattern,是支持匹配jobs,nodes,slaves等

image.png

记得保存。

创建用户

系统管理->安全->管理用户->新建用户

image.png

分配角色

系统管理->安全->Manage and assign roles 然后点Assign roles

image.png

按下图给用户分配角色 image.png

新建视图

image.png

image.png

新建一个任务

保存视图后,新建一个任务

image.png

验证

用新建的用户登录,可以发现只对vm-Manager前缀的任务有构建和配置权限

小结

  1. 创建角色,Global roles和Item roles都要配
  2. Item roles的pattern可以配置匹配模式,匹配到的job可以有Item roles权限
  3. 分配用户角色,Global roles和Item roles都要配
  4. 新建视图,视图可以用来隔离项目组
  5. 用户和角色绑定,角色和操作绑定,角色和任务通过pattern绑定