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

    当在子类中重载或者重新声明父类的虚方法时,使用  reintroduce   关键字告知编译器,可以消除警告信息. 如: TParent = class procedure proc;virtual; ...

  2. HDU 6066 17多校3 RXD's date(超水题)

    Problem Description As we all know that RXD is a life winner, therefore he always goes out, dating w ...

  3. socket 聊天室实现

    server #include <stdio.h> #include <sys/types.h> /* See NOTES */ #include <sys/socket ...

  4. 大数据-10-Spark入门之支持向量机SVM分类器

    简介 支持向量机SVM是一种二分类模型.它的基本模型是定义在特征空间上的间隔最大的线性分类器.支持向量机学习方法包含3种模型:线性可分支持向量机.线性支持向量机及非线性支持向量机.当训练数据线性可分时 ...

  5. 学习Java JDBC,看这篇就够了

    JDBC (Java DB Connection)---Java数据库连接 JDBC是一种可用于运行SQL语句的JAVA API(ApplicationProgramming Interface应用程 ...

  6. 2017青岛赛区网络赛 Smallest Minimum Cut 求最小割的最小割边数

    先最大流跑一遍 在残存网络上把满流边容量+1 非满流边容量设为无穷大 在进行一次最大流即可 (这里的边都不包括建图时用于反悔的反向边) #include<cstdio> #include& ...

  7. [LeetCode&Python] Problem 387. First Unique Character in a String

    Given a string, find the first non-repeating character in it and return it's index. If it doesn't ex ...

  8. 求区间最值---rmp

    void get_rmp () { ;i<=n;i++) r[i][]=a[i];// a[] 原数组 ;(<<j)<=n;j++) ;i+(<<j)-<=n ...

  9. vim 的编辑模式 命令模式

    1.vim的编辑模式    进入编辑模式 按键: a  i  o a: 表示在光标当前的,后面开始插入,写数据 i : 则表示 前面 . o : 表面在光标当前的,下一行开始写入数据. O : 大写的 ...

  10. djangorestful framework (三)学习

    十.分页器 -简单分页: -from rest_framework.pagination import PageNumberPagination -生成一个对象 -调用对象的.page.paginat ...