Jenkins原理篇——成员权限管理

开发 前端
角色分为3种类型,Global roles,Item roles(项目角色),Agent roles(和节点操作权限相关的角色),其中Global roles拥有最高的权限,如果为它分配job的读写权限,那么用户如果绑定了这个角色,将会允许读取所有的job,不管用户是不是拥有的项目角色的权限。

之后在Jenkins的Manage Jenkins→Security 中开启基于角色的权限策略。

图片图片

然后在jenkins的配置栏里就能看到多出来的角色权限配置了。

图片图片

配置角色

紧接着,我们可以配置相关的角色并且为角色分配对应模块的权限。角色分为3种类型,Global roles,Item roles(项目角色),Agent roles(和节点操作权限相关的角色),其中Global roles拥有最高的权限,如果为它分配job的读写权限,那么用户如果绑定了这个角色,将会允许读取所有的job,不管用户是不是拥有的项目角色的权限。

!! 温馨提示:  job 和item在jenkins中的概念,都可以看成是jenkins的创建的编译部署项目。

如下图所示,拥有一个admin角色,拥有jenkins的所有权限,我们还创建了一个dev角色,拥有对jenkins界面的读权限(可能说法不太准确,但事实是如果普通角色的用户没有overall的读权限,那么他进去jenkins后将什么也不不能看,并且提示其权限不足)

图片图片

接着,我们再分配两个针对具体构建项目的角色,develop和prodev,如下图所示,分别是针对测试环境和正式环境的项目创建的角色,其中,pattern能够用正则表达式匹配具体构建的项目名。对job的权限勾选了build,cancel,read,所以这两个角色都能够对他们看到的具体项目拥有构建,取消构建和读权限。

图片图片

分配角色

接着,我们再把配置好的角色分配给具体的用户,如下图所示,用户同时拥有dev,develop和prodev3个角色。

图片图片

之后,用该用户登录jenkins可以看到正确的项目构建页面,同时拥有生产环境和测试环境的构建权限。效果如下,

图片图片

这里我是对用户同时分配了对正式环境和测试环境有构建权限的角色给一个用户,真实开发中,可以对少部分人开启这个权利,毕竟知道正式环境配置的人越少,系统越安全。

责任编辑:武晓燕 来源: 蓝胖子的编程梦
相关推荐

2021-06-09 10:29:23

Kafka架构组件

2021-04-09 08:54:14

Kafka源码架构开发技术

2022-02-25 08:54:50

setState异步React

2021-02-20 20:51:24

工具内核kprobe

2022-03-02 10:11:41

索引场景数据库

2021-02-21 06:33:27

存储引擎物联网

2022-02-23 09:52:15

InnoDB数据索引

2021-03-04 08:06:17

Redis面试模型

2022-09-06 08:02:32

LinuxLKRG安全

2023-12-28 11:24:29

IO系统请求

2017-01-03 13:51:12

Android权限控制

2022-08-16 09:05:39

Kubernetes权限管理

2022-04-08 09:53:56

TektonJenkinsKubesphere

2011-07-14 14:00:52

SQL Server固定数据库角色

2024-05-24 08:11:50

Jenkins用户权限管理

2011-02-25 13:23:19

Proftpd

2019-11-25 09:46:32

Linux操作系统管理

2022-03-21 09:40:48

TektonJenkinsPipeline

2022-09-20 07:33:15

Jenkinshttps://mp

2021-04-16 10:35:14

MySQL权限管理
点赞
收藏

51CTO技术栈公众号