Jenkins 进阶篇 - 权限案例实践
为了演示方便,我这里创建了如下的一些任务,各个任务由包含在对应的目录中树形结构大概如下:
jenkins-authority 目录类型任务
├── dev-project-group 目录类型任务
│ ├── dev-account-service 自由风格任务
│ └── dev-message-service 自由风格任务
├── prod-project-group 目录类型任务
│ ├── prod-account-service 自由风格任务
│ └── prod-message-service 自由风格任务
└── test-project-group 目录类型任务
├── test-account-service 自由风格任务
└── test-message-service 自由风格任务

最后分别用张三、李四、王五账号登录到 Jenkins 系统看看权限设置的效果。没有意外的话王五是运维人员角色可以构建和管理 dev、test 和 prod 的任务,李四只能构建和管理 test 的任务,张三只能管理和构建 dev 的任务。并且张三、李四也只能在对应的环境目录下创建新的任务,不能在其他目录创建任务。
用开发组张三账号登陆到 Jenkins ,去到 dev-project-group 目录和下面的具体某个任务下面,看到左侧的菜单栏可以进行修改编辑操作。


如果张三去到测试项目组 test-project-group 和目录下的具体某个任务,可以看到左侧的菜单栏是没法进行编辑和构建操作的。


然后可以在用测试组账号李四登陆到 Jenkins 看看是什么样的效果:





王五为运维角色,可以管理 dev、test、prod 组的任务:




经过上面的配置,我们的 Jenkins 权限管控就相对精细并且也符合我们的要求和预期了。其实除了对任务进行权限控制外还可以对 Jenkins 节点进行权限控制,只是一般用不到,并且节点最好是都允许进行任务在上面进行构建执行,否则节点的压力负载分担就会出问题。
Jenkins 进阶篇 - 权限案例实践的更多相关文章
- Jenkins 进阶篇 - 权限配置
Jenkins的授权策略 Jenkins 默认的授权策略是[登录用户可以做任何事],也就是人人都是管理员,可以修改所有的设置以及构建所有的任务,不用做任何设置,有账号登录到 Jenkins 系统即可, ...
- Jenkins进阶-用户权限管理(10)
在版本发布的由于大家的分工不同,所以想通过控制用户的账号达到权限管理,对每个角色进行权限控制,最初通过"项目矩阵授权策略"的策略对每个项目进行单一的权限控制,当时也满足了效果,随着 ...
- Jenkins 进阶篇 - 任务关联
有时候我们的一个任务里面会进行很多的步骤,例如构建一个后端的 Java 服务,可能会有代码静态扫描,静态扫描通过后会打包成 jar 或者 war 文件,打包成功后可能还会对制品进行存档备份,然后可能会 ...
- Jenkins 进阶篇 - 数据备份
随着我们的长期使用,Jenkins 系统中的内容会越来越多,特别是一些配置相关的东西,不能有任何丢失.这个时候我们就需要定期备份我们的 Jenkins 系统,避免一些误操作不小心删除了某些重要文件,J ...
- Jenkins 进阶篇 - 节点配置
当我们使用 Jenkins 构建的项目达到一定规模后,一个 Jenkins 服务可能承受不了负载,会导致很多的构建任务堆积,严重的话还会拖垮这台服务器,导致上面的服务无法使用.例如我们公司目前在 Je ...
- Jenkins 进阶篇 - 参数化构建
我们在构建任务时经常会遇到这样的情景,一个任务配置好了以后,在后面的构建过程中,又会修改一些配置.例如,我们构建项目的代码可能是拉取指定的分支或者是Tag进行构建,又或者是在构建是需要指定特定的运行平 ...
- Jenkins 进阶篇 - 单元测试覆盖率
我们做项目开发,肯定免不了要写单元测试,不管是 Java 项目.Python 项目.PHP 项目,甚至是 nodejs 项目,都应该要写单元测试,本小节就来介绍单元测试的覆盖率报告输出和展示,在后面的 ...
- [vue]基础篇stepbystep案例实践(废弃)
去看这个就好了 总结: 1.子组件可以触发父组件的方法,this.$emit() //(通知父组件干活) 2.父组件可以调用子组件的方法() // ref 如果放在组件上 获取的是组件的实例 并不是组 ...
- mysql 开发进阶篇系列 55 权限与安全(安全事项 )
一. 操作系统层面安全 对于数据库来说,安全很重要,本章将从操作系统和数据库两个层面对mysql的安全问题进行了解. 1. 严格控制操作系统账号和权限 在数据库服务器上要严格控制操作系统的账号和权限, ...
随机推荐
- PyTorch数据加载处理
PyTorch数据加载处理 PyTorch提供了许多工具来简化和希望数据加载,使代码更具可读性. 1.下载安装包 scikit-image:用于图像的IO和变换 pandas:用于更容易地进行csv解 ...
- 基于ARMv8的固件系统体系结构
基于ARMv8的固件系统体系结构 The architecture of ARMv8-based firmware systems 自2011年发布以来,ARMv8处理器架构在移动设备市场上已经相当普 ...
- 错误档案2:MySQL8.0连接C3P0的问题
>>>跳过BB,空降正文<<< 目录 前言 问题出现 解决方法 结论 前言 大家好呀,我是 白墨,一个热爱学习与划水的矛盾体. 前两天在使用C3P0连接池时遇到问题 ...
- 用 Flutter 和 Firebase 轻松构建 Web 应用
作者 / Very Good Ventures Team 我们 (Very Good Ventures 团队) 与 Google 合作,在今年的 Google I/O 大会上推出了 照相亭互动体验 ( ...
- 【Javascript + Vue】实现对任意迷宫图片的自动寻路
前言 可以直接体验最终效果:https://maze-vite.vercel.app/ 寻路前: 寻路后,自动在图片上生成红色路径,蓝色是探索过的区域: 这里我故意用手机斜着角度拍,就是为了展示程序完 ...
- mybatis学习——日志工厂
为什么要使用日志工厂? 我们想一下,我们在测试SQL的时候,要是能够在控制台输出 SQL 的话,是不是就能够有更快的排错效率?答案是肯定的,如果一个 数据库相关的操作出现了问题,我们就可以根据输出的S ...
- WEB 页面认证
1:安装htpasswd工具生成加密文件 安装工具 # yum install httpd-tools # htpasswd -cm /etc/httpd/passwd/password useraN ...
- 【NX二次开发】Block UI 绘图区
属性说明 常规 类型 描述 BlockID String 控件ID Enable Logical 是否可操作 Group Logical ...
- SpringCloud Alibaba实战(6:nacos-server服务搭建)
源码地址:https://gitee.com/fighter3/eshop-project.git 持续更新中-- 大家好,我是三分恶. 这一节我们来学习SpringCloud Alibaba体系中一 ...
- 空指针的解决方案Optional包装类
有道云笔记地址 (建议有道云打开,markdown文档,直接拷贝过来有一些问题) 引言 在java的开发中,有一个问题始终会伴随着开发的进程.记得我第一个项目的时候,有一个同事在评论我的代码的时候说到 ...