一、安装插件

插件名称:Role-based Authorization Strategy

Role Strategy Plugin插件可以对构建的项目进行授权管理,让不同的用户管理不同的项目。

二、安全配置——授权策略配置

系统管理—>全局安全配置(Configure Global Security ),其中共有五种授权策略

1. Role-Based Strategy

1.1. 选择授权策略中的Role-Based Strategy,并点击保存

1.2. 选择系统管理—>Manage and Assign Roles (管理和分配角色)

在新开的页面中有如下3个菜单:

  • Manage Roles
  • Assign Roles
  • Role Strategy Macros

1.3. 选择"Manage Roles"进行角色配置。

【Global roles】全局角色配置:
添加wts这个角色并进行授权

【Project roles】项目角色配置:

添加了三个项目角色:uat,dev和test。dev用于管理开发环境的项目,test用于管理测试环境的项目。

Pattern:对构建的项目名称进行匹配,可以使用正则表达式。

【Slave roles】从属角色配置:

  • 1.4.选择Assign Roles,分配角色

在全局角色中添加普通用户,并将普通用户加入到全局角色wts中,保证它们可以正常登录jenkins。

在项目角色中添加普通用户,并根据实际需求勾选项目角色,这样不同的用户可以对不同项目有管理权限。

2. 任何用户可以做任何事(没有任何限制)

项目内不推荐用

3. 登录用户可以做任何事

可勾选项---Allow anonymous read access(允许匿名读取访问)

4. 遗留模式

适用于Jenkins1.164以前的版本.也就是说,如果你是"admin"角色,那么你将拥有Jenkins的一切控制权,其它角色(包括匿名用户) 只有查看权限.

5. 安全矩阵

选择安全矩阵 (在配置页面将鼠标放到对应权限上即可查看帮助):

其中有一些比较特别的权限:

Overall 的Administer 【最大权限】,拥有该权限可以干任何事情。

Overall的Read【最基本的权限】,用户必须赋予阅读的权限,不然什么都看不到。

注:

每个用户后都有2个图标,第一个是全选功能,第二个是清空功能

6. 项目矩阵授权策略

说明:安全矩阵项目矩阵授权策略的配置是一样的,唯一的区别是项目矩阵授权策略支持在Job的配置页面再次配置授权策略。

三、踩到的坑

问题描述

首次配置jenkins的安全策略时,选择安全矩阵,但是没有给任何用户付权限,点击保存后。管理员登录失效。重新登录系统提示admin没有Overall/Read权限的异常。

解决方案:修改jenkins的config.xml配置文件。

3.1. 通过查看jenkins进程查看JENKINS_HOME的目录

ps -ef | grep jenkins

3.2. 编辑jenkins的config.xml这个配置

命令:vi /var/lib/jenkins/config.xml

配置文件如图: 
 
需要修改的是红线圈起来的部分。 
在该标签内加入以下配置即可。

<permission>hudson.model.Hudson.Administer:anonymous</permission>
<permission>hudson.model.Hudson.ConfigureUpdateCenter:anonymous</permission>
<permission>hudson.model.Hudson.Read:anonymous</permission>
<permission>hudson.model.Hudson.RunScripts:anonymous</permission>
<permission>hudson.model.Hudson.UploadPlugins:anonymous</permission>

修改后的配置文件,如下图:

3.3 重启jenkins服务即可。

Jenkins系列之-—04 配置用户和权限控制的更多相关文章

  1. Kafka SASL/SCRAM+ACL实现动态创建用户及权限控制

    kafka系列文章 第一章 linux单机安装kafka 第二章 kafka--集群安裝部署(自带zookeeper) 第三章 Kafka SASL/SCRAM+ACL实现动态创建用户及权限控制 Ka ...

  2. 《The Linux Command Line》 读书笔记04 Linux用户以及权限相关命令

    Linux用户以及权限相关命令 查看身份 id:Display user identity. 这个命令的输出会显示uid,gid和用户所属的组. uid即user ID,这是账户创建时被赋予的. gi ...

  3. Linux 配置SFTP,配置用户访问权限

    之前我服务器是使用的Windows Server 2003,这段时间由于访问量变大我还是机智的换成Linux了,在搭建FTP的时候看到网上都是推荐vsftpd,不过我不推荐这个家伙,看官且看下文. 我 ...

  4. 使用JavaEE的ServerAuthModule模块和web.xml进行相应配置,实现对用户的权限控制

    ServerAuthModule这里不细说,可以自行百度. 重点在注释: <!-- 声明用于安全约束的角色 --> <security-role> <role-name& ...

  5. linux入门系列9--用户管理及文件权限控制

    ​ 前面文章分享了Linux下常用命令以及Shell编程相关知识,本节继续学习Linux用户管理及文件权限控制. ​ Linux是多用户多任务操作系统,具有很好的稳定性和安全性.既然是多用户,那就意味 ...

  6. springboot-29-security(二)用户角色权限控制

    本博客基于上一个http://www.cnblogs.com/wenbronk/p/7379865.html 增加了角色的权限表, 可以进行权限校验 一, 数据准备 1, 数据表建立 /* Navic ...

  7. 简单的RBAC用户角色权限控制

    Java web项目中,无论项目是大是小,或多或少都会涉及到用户访问权限的控制,权限管理总体的设计思路就是,不该看的不看,不该做的不做!据我目前的了解,我所知道的几种实现访问权限控制的方式有: JQu ...

  8. kubernetes dashboard访问用户添加权限控制

    前面我们在kubernetes dashboard 升级之路一文中成功的将Dashboard升级到最新版本了,增加了身份认证功能,之前为了方便增加了一个admin用户,然后授予了cluster-adm ...

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

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

随机推荐

  1. Java sleep方法的作用(sleep())

    sleep() 方法的作用是在指定的毫秒数内让当前“正在执行的线程”休眠(暂停执行).这个“正在执行的线程”是指 this.currentThread() 返回的线程. 例 1 下面通过一个案例来理解 ...

  2. EBS oracle 批量导入更新MOQ(最小拆分量、采购提前期、最小订购量、最小包装量)

    EXCEL的列:组织id,供应商编号,供应商地点,料号,最小拆分量.采购提前期.最小订购量.最小包装量 --采购导入更新MOQ四个值,若有为空的那列,会保留原来的值,不会去更新那列的值 PROCEDU ...

  3. 用户管理命令--passwd,usermod,userdel

    用户修改密码命令--passwd 当修改用户的密码时,也要分普通用户和超级用户两种情况 普通用户:修改密码前需要先输入当前密码,确认是否正确 密码设置不可以过于简单 超级用户:权利非常的大,可以设置任 ...

  4. 转: 使用 /sys 文件系统访问 Linux 内核

    转一个挺不错的文章 使用 /sys 文件系统访问 Linux 内核 https://www.ibm.com/developerworks/cn/linux/l-cn-sysfs/ 如果你正在开发的设备 ...

  5. linux 服务器 php vue项目部署流程总结

    服务器配置 购买阿里云服务器 (选择ubuntu 16系统 / 内存2G以上) 安全策略, 入规则: 添加端口 20,21,22, 80, 443, 3306, 8080, 安装宝塔 wget -O ...

  6. C语言学习10

    判断三角形的类型 根据输入的三角形的三条边判断三角形的类型,并输出它的面积. #include <stdio.h> #include <math.h> void judge_1 ...

  7. 杭电 2553 N皇后问题 (dfs)

    Description 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上. 你的任务是,对于给定的N,求出有多少种合 ...

  8. 理解js的几个关键问题(1):全局变量new和关于hasOwnPropery和PropertyIsEnumerable 等

    一.作用域和全局变量 var test=function(){ var a=1; setTimeout(function(){ console.log(a); a=2; },1000); a=3; s ...

  9. POJ3041:Asteroids【二分图匹配】

    二分图的最大匹配=最小顶点覆盖(Konig定理)=最大独立集的补集最大匹配经典的三种模型  这题就是最小顶点覆盖,顺便这题留给我的经验就是调试的时候一定要细心细心再细心对模板的各个细节都要熟!! #i ...

  10. 【最小费用最大流】N. April Fools' Problem (medium)

    http://codeforces.com/contest/802/problem/N [题解] 方法一: #include<bits/stdc++.h> using namespace ...