在版本发布的由于大家的分工不同,所以想通过控制用户的账号达到权限管理,对每个角色进行权限控制,最初通过"项目矩阵授权策略"的策略对每个项目进行单一的权限控制,当时也满足了效果,随着项目越来越多,这种方式虽然可以满足,但是越来越麻烦操作起来比较笨重,所以考虑到使用第三方插件Role Strategy Plugin来解决问题。

一、安装插件,Role Strategy Plugin

  1. 系统管理->插件管理-可选择插件中安装;
  2. 从wiki.jenkins.io网站下载hpi插件,通过上传插件进行安装;

注意:

  安装完成插件以后,记住重新启动Jenkins,要不然插件无法生效,插件安装完成以后在【系统管理->Configure Global Security->授权策略-> Role-Based Strategy】检查是否包含插件Role-Based Strategy,存在则证明安装成功;

二、策略的配置

  1.授权策略中选择" Role-Based Strategy",保存启用 Role-Based Strategy授权策略;

  2.启用 Role-Based Strategy策略后,系统管理中会出现【Manage and Assign Roles】;

  

  3.规划下我们需要用户,admin用户管理全局对Jenkins进行管理,tester 用户操作测试区域任务,ops用户操作生产区域任务,dev用户操作开发区域任务;

  4.根据我们的用户来规划角色;

   全局角色划分:

    管理员角色:admin;

    只读角色:read;

       管理角色:manage;

  项目角色划分:

    开发角色:dev

    测试角色:test

    运维角色:ops

  

注意:

  添加项目角色时,

需要制定匹配项目的模式,如上图中的Pattern,官方文档介绍该选项支持正则表达式,如“Roger-.”表示所有以Roger-开头的项目,“(?i)roger-.*”表示以roger-开头的项目并且不区分大小写,如以ABC开头的项目可以配置为“ABC|ABC.*”,也可以使用“abc|bcd|efg”直接匹配多个项目。

  5.分配角色,Manage and Assign Roles,点击Assign Roles,分配之前首先需要我们把对应的用户创建完成;

  

  全局角色分配

  

 项目角色分配

  

保存分配结果。

三,检验分配的结果

  1.dev 用户登录的效果,只有查看开发任务,具有构建和查看的权限;

  视图效果:

  

  任务内部效果:

  

  2.tester登录后效果,只有查看测试任务,具有构建和查看的权限;

  视图效果:

  

任务内部效果:

 

3.ops 用户登录的效果,可以对所有的job进行管理,具有构建和编辑、查看的权限;

视图效果:

任务内部效果:

 

这样就可以通过角色的管理对用户的权限进行控制,每个公司的情况不一致,所以大家可以根据自己的实际情况进行调整。

  

Jenkins进阶-用户权限管理(10)的更多相关文章

  1. 【05】Jenkins:用户权限管理

    写在前面的话 在一个企业研发部门内部,可能存在多个运维人员,而这些运维人员往往负责不同的项目,但是有可能他们用的又是同一个 Jenkins 的不同用户.那么我们就希望实现一个需求,能够不同的用户登录 ...

  2. Jenkins用户权限管理-Role-based Authorization Strategy插件

    02-Jenkins用户权限管理-Role-based Authorization Strategy插件 在jenkins的使用过程中,需要给用户分配只管理特定项目的权限来保证项目相关人员只能管理对应 ...

  3. [原]Jenkins(十三)---jenkins用户权限管理

    * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horizonli/p/5337874.html 两种策略的比较

  4. Jenkins使用教程之用户权限管理(包含插件的安装)

    在工作的过程中由于分工合作的关系,我们因为工作内容的不同可能分为不同的组织里,但是jenkins默认的权限管理并没有用户组的概念,所以我们需要第三方插件的支持来解决问题.插件:Role-based A ...

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

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

  6. 九. jenkins用户权限管理

    由于jenkins默认的权限管理体系不支持用户组和角色的配置,所以需要使用第三方插件来支持角色的配置: Role-based Authorization Strategy 1.先安装插件,如下: 2. ...

  7. Python 学习 第十篇 CMDB用户权限管理

    Python 学习 第十篇 CMDB用户权限管理 2016-10-10 16:29:17 标签: python 版权声明:原创作品,谢绝转载!否则将追究法律责任. 不管是什么系统,用户权限都是至关重要 ...

  8. PostgreSQL学习之【用户权限管理】说明

    背景 最近在学习PostgreSQL,看了用户权限管理文档,涉及到的知识点比较多,顺便写篇文章进行整理并不定时更新,也方便自己后续进行查阅. 说明 注意:创建好用户(角色)之后需要连接的话,还需要修改 ...

  9. ClickHouse学习系列之二【用户权限管理】

    背景 最近花了些时间看了下ClickHouse文档,发现它在OLAP方面表现很优异,而且相对也比较轻量和简单,所以准备入门了解下该数据库系统.在安装完之后首先做的应该如何设置用户密码以及权限控制.因为 ...

随机推荐

  1. L322

    As a nutritionist helping people shed pounds, I often recommend incorporating portion-controlled des ...

  2. 关于orm 的基础3 day67

    day67 ORM 特殊的语法 一个简单的语法 --翻译成--> SQL语句 语法: 1. 操作数据库表 创建表.删除表.修改表 2. 操作数据库行 增.删.改.查 怎么连数据库: 需要手动创建 ...

  3. 关于urls 的基础

    1 普通正则 2 分组正则 url(r'/blog/(\d+)/(\d+)',views.blog)     blog(request,arq1,arq2) 按照位置传参 3 分组命名 url(r'/ ...

  4. 在 子 iframe中 点击一个按钮, 变换 这个 iframe的地址url.

    //跳到测试结果: function jump() { console.log(self.parent.document.getElementById("iframe").src) ...

  5. MacBookPro-OSX

    修改用户名 sudo hostname macbookpro sudo scutil --set HostName macbookpro sudo scutil --set LocalHostName ...

  6. SpringBoot(2.0.4.RELEASE)+Elasticsearch(6.2.4)+Gradle简单整合

    记录一下SpringBoot(2.0.4.RELEASE)+Elasticsearch(6.2.4)+Gradle整合的一个小例子. 1.在Gradle内加入相关jar包的依赖: compile('o ...

  7. 自动化测试-22.RobotFrameWork鼠标和键盘的操作针对出现window界面的处理

    键盘和鼠标的操作:使用AutoItLibrary模块 1.安装pywin32 http://sourceforge.net/projects/pywin32/files/pywin32/Build%2 ...

  8. Kaggle:Home Credit Default Risk 特征工程构建及可视化(2)

    博主在之前的博客 Kaggle:Home Credit Default Risk 数据探索及可视化(1) 中介绍了 Home Credit Default Risk 竞赛中一个优秀 kernel 关于 ...

  9. Python中random模块在主函数中设置随机种子是否对于调用的函数中的随机值产生影响?

    一个问题,加入我有一个工程文件,在main函数里面调用random模块,设置随机种子,主函数中的随机种子的设置是否会影响主函数所调用的函数中的随机值? 实际上这个问题非常重要,比如你在跑网络的时候,初 ...

  10. Python中的filter()函数的用法

    转载自:脚本之家 Python内建的filter()函数用于过滤序列. 和map()类似,filter()也接收一个函数和一个序列.和map()不同的时,filter()把传入的函数依次作用于每个元素 ...