大家好,我是蓝胖子,前面几节我讲述了jenkins的语法以及我是如何使用jenkins对测试和正式环境进行发布的。但正式环境使用jenkins还有一点很重要,那就是权限管理。正式环境的权限往往不能对所有人开放,以及要做到每次发布都是谁在操作 都有迹可循,这样才能方便以后排查问题。所以,今天我们就来看看jenkins的权限管理应该如何来做。

安装Role-based Authorization Strategy 插件

我们采用RBAC 基于角色的方式进行授权,需要在jenkins上安装插件,在Jenkins的Manage Jenkins→Plugins→Available Plugins 中安装



之后在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可以看到正确的项目构建页面,同时拥有生产环境和测试环境的构建权限。效果如下,



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

jenkins原理篇——成员权限管理的更多相关文章

  1. Jenkins拾遗--第三篇(用户权限管理)

    采访过很多实用Jenkins的同学,发现Jenkins的安全是一个很薄弱的地方.很多公司用作生产部署的Jenkins安全管理都不是很规范,就更别提测试用的Jenkins了. 其实Jenkins是一个很 ...

  2. Django基础篇--用户权限管理和组管理

    Django作为一个成熟的python后台开发框架,为开发者提供了很多内置的功能,开发者只需要做一些配置就可以完成原生操作中比较复杂的代码编写.这些内置功能中其中一个比较强大的功能就是后台用户管理类. ...

  3. [ jenkins ] 基础安装及权限管理

    1. 安装 jenkins 在安装 jenkins 之前需要 java 的支持 (1)安装 jdk1.8 [root@192.168.118.17 ~]#tar xf jdk-8u77-linux-x ...

  4. jenkins 基于角色的权限管理

    如何给不同的用户分配不同的项目权限呢,今天来介绍这个 1 (全局安全设置)启用角色->2新建用户->3新建jenkins 全局角色 builder  并分配如下图3中所示权限(并分配Ove ...

  5. JSBinding + SharpKit / 原理篇:内存管理与垃圾回收

    C# 和 JS 都有垃圾回收机制,需要保证 2 者能够分工协作. 类对象 类在C#中是引用类型.我们在 C# 中维护了2个map,保存 C# 对象和 JS 对象的一一对应关系. 举一个例子,看以下代码 ...

  6. jenkins之授权和权限管理

    #:创建角色,给角色授权,然后创建用户,将用户加入到角色(前提先安装插件) #:先将之前的卸载掉 #:然后重启服务,在可选插件搜索Role #:装完重启服务 root@ubuntu:~# system ...

  7. Jenkins用户配置(安装好jenkins后,怎么配置用户管理、权限管理)

    直奔主题 安装完成后,先开启用户配置 1. 系统管理-->配置权限 2.  启用安全,并选中"安全矩阵" 如上,搞定: 可以按用户去设置各项目的操作权限了: 轻松实现,jen ...

  8. Linux权限管理(用户、组、文件管理)

    一. Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示. 1. 文件查看类命令cat,tac, head, tail, more, less, ls ,file: -ls : l ...

  9. Linux基础知识之用户和用户组以及 Linux 权限管理

    已经开始接触Linux用户管理,用户组管理,以及权限管理这几个逼格满满的关键字.这几个关键字对于前端程序猿的我来说真的是很高大上有木有,以前尝试学 Linux 的时候看到这些名词总是下意识的跳过不敢看 ...

  10. [Linux 003]——用户和用户组以及 Linux 权限管理(一)

    嗬!没想到吧!学习 Linux 的第三天,我们已经开始接触用户管理,用户组管理,以及权限管理这几个逼格满满的关键字.这几个关键字对于前端程序猿的我来说真的是很高大上有木有,以前尝试学 Linux 的时 ...

随机推荐

  1. Lazy(Func<T>)的异常缓存问题

    Lazy可以提供多线程环境下的安全保障,但是用不好也是会跳到坑里. 我这里使用Lazy<t>(Func<T>)来创建一个Lazy实例,然后在需要的地方访问它的Value属性,它 ...

  2. Linux 性能监控与分析相关的软件包

    检测系统进程和资源使用情况 -- procps-ng procps-ng是一个用于检测Linux系统进程和资源使用情况的系统工具,它是procps的一个重写版本.它提供了多种用于检测Linux系统中进 ...

  3. 2022-1-11 控件学习4 ItemControl、ListBox、ComboBox

    ItemControl itemControl前台 ItemControl后台 ItemControl一般是竖直排列的,如果需要很想排列需要使用,也可以使用 UniformGrid Columns=& ...

  4. wget: 未找到命令

    输入以下命令: yum -y install wget

  5. P7167 Fountain

    原题 有n个盘子组成的塔,向第i个盘子上倒水,若溢出会落到下面第一个直径大的盘子里,直到落到底部的水池为止.现给出q次询问,\((r,v)\)代表向第r个盘子里倒入体积为v的水,求水最终会停在哪个盘子 ...

  6. cesium中限制地图浏览范围

    https://blog.csdn.net/qq_42740164/article/details/119375782?ops_request_misc=%257B%2522request%255Fi ...

  7. debian11安装mysql5.7

    前言 mysql官网5.7版本的只找到debian10的,没有debian11的,试了下也能用. 系统版本:debian 11 mysql版本:5.7.35 步骤 下载bundle的tar包.官网地址 ...

  8. springboot jar thin

    springboot jar thin springboot 应用 jar 瘦身.springboot jar 太大.jar与依赖包分离. 两种方法,第一种,spring-boot-thin-laun ...

  9. Jenkins 配置邮件通知(腾讯企业邮箱)

    开通企业邮箱SMTP服务 登录企业微信邮箱,然后打开设置,在里面找到 收发信设置,在开启服务里面将 开启IMAP/SMTP服务 勾选 保存后回到邮箱绑定页签下,将安全设置里的安全登录开关打开 在下面的 ...

  10. [FlareOn4]login-buu ctf

    打开压缩包 是个html,我直接???? 这不是web弄的吗 离谱了,不过f12还是会的 不过其中的逻辑还是比较清楚的 先用伪代码确定加密逻辑,再直接写直接进行爆破解码 wo cao,wrong!fl ...