1.权限控制的基本设置

1.1选择基于角色权限的分配策略

1.2 配置全局权限和项目权限

具体的权限对应关系见下表:

Overall(全局) Credentials(凭证) Slave(节点) Job(任务) View(视图)
Administer Read RunScripts UploadPlugins ConfigureUpdateCenter Create Update View Delete ManageDomains Configure Delete Create Disconnect Connect Build Create Delete Configure Read Discover Build Workspace Cancel Create Delete Configure Read
管理员(最大) 阅读 运行脚本 升级插件 配置升级中心 创建 更新 查看 删除 管理域 配置 删除 创建 断开连接 连接 构建 创建 删除 配置 阅读 重定向 构建 查看工作区 取消构建 创建 删除 配置 阅读

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

项目角色与全局角色的区别就是:

项目角色是用来管理项目的,没有对Jenkins的管理权限。

而全局角色更加侧重于对于Jenkins的管理。

1.3 配置完权限后将权限下放到具体的用户

2.Overall下的read和job下的read的纠结

首先问题的源头是对于Anonymous的设置

匿名用户在登录的时候需要被赋予最基本的Overall的read权限(不然什么也看不见)和Job中的Discover权限:如果匿名用户(没有访问job的权限)直接访问一个Job的Url将重定向到登陆页面---这个就是后面的问题所在wget的时候需要带上用户名密码

同样的为什么之前wget -P命令即便不加user+password也可以直接下载Jenkins,因为之前guest权限或者说匿名用户的访问权限中拥有对于Job的读取权限,不需要登录就可以直接访问到,但是由于目前我们做访问控制所以这个选项铁定不能选job-read。

3.Rundeck上用wget命令下载Jenkins资源时报403 Forbidden

没有进行权限设置之前下载Jenkins的资源用的是下面的命令

在设置了权限之后还是用这个命令Linux就报403错误了

本人菜鸟闹腾了半天也没有出来,随即内事百度!

4.查阅官方手册+stackoverflow

查找问题先通过百度进行一波过滤。。。若搜索不到明显的解决方案或者说回答很少立马转向google

通过goole我们现在overstackflow上狗刨式搜索了一遍答案,诸如以下:

最后在google搜索的第三个结果中,把我指引到了Jenkins官方文档手册如下图所示

通过简单的判断我得出了,因为Jenkins权限控制了之后,远端wget命令的时候是通过guest用户来进行访问的,而guest我们没有给它设置读取job的权限,所以应该在远端将登陆的用户名和密码带上

故得到 --http-user为登陆用户名 --http-password为密码

url后面?token是在job中配置的,token作为远程触发的一个身份验证令牌

当然我们目前解决问题的话只需要wget的时候带上用户名密码即可(在Jenkins上建立一个专门用来进行远程download的用户),token有需要的话也可以加上

所以rundeck的命令就成了如下的形式

5.解决问题

最终实现用户权限的下放,并成功与Rundeck实现交互。

Jenkins的权限控制和Rundeck的远程认证的更多相关文章

  1. Jenkins进阶系列之——13修改Jenkins权限控制

    说明:本方法适用于安全矩阵和项目矩阵授权策略的Jenkins. 很多童鞋在使用jenkins的时候忘记配置权限或者权限配置错误,然后各种蛋疼.最近闲着无事,折腾了下.好了,闲话少扯. Jenkins的 ...

  2. redis密码设置、访问权限控制等安全设置

    redis作为一个高速数据库,在互联网上,必须有对应的安全机制来进行保护,方法有2,如下. 1.比较安全的办法是采用绑定IP的方式来进行控制.  请在redis.conf文件找到如下配置 # If y ...

  3. Hive权限控制和超级管理员的实现

    Hive权限控制 Hive权限机制: Hive从0.10可以通过元数据控制权限.但是Hive的权限控制并不是完全安全的.基本的授权方案的目的是防止用户不小心做了不合适的事情. 先决条件: 为了使用Hi ...

  4. Jenkins通过Publish over SSH插件实现远程部署

    Jenkins通过Publish over SSH插件实现远程部署 步凑一.配置ssh免秘钥登录 部署详情地址:http://www.cnblogs.com/Dev0ps/p/8259099.html ...

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

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

  6. 七、spring boot 1.5.4 集成shiro+cas,实现单点登录和权限控制

    1.安装cas-server-3.5.2 官网:https://github.com/apereo/cas/releases/tag/v3.5.2 下载地址:cas-server-3.5.2-rele ...

  7. Binder IPC的权限控制

    PS:个人理解:当进程1通过Binder调用组件2时,会将进程1的pid及uid赋给组件2,并检测进程1的pid及uid是否有权限调用组件2.而后组件2需要调用组件3,此时组件2保存的pid及uid为 ...

  8. chmod a+w . 权限控制 su、sudo 修改文件所有者和文件所在组

    对当前目录对所有用户开放读写权限 chmod a+r . $ sudo chmod -R a+w /usr/lib/python2.7 所有用户添加文件的写权限 [linux]su.sudo.sudo ...

  9. Web Service学习-CXF开发Web Service的权限控制(二)

    Web Service怎样进行权限控制? 解决思路:server端要求input消息总是携带实username.password信息,假设没实username和password信息.直接拒绝调用 解决 ...

随机推荐

  1. 用iis虚拟目录和windows共享目录上传文件到远程

    现在有这样一个需求,有主机A和主机B.主机A上发布了一个网站,现在往主机A上上传文件默认是存在主机A上的, 如何把文件传到主机B上呢? 第一步在主机A和主机B上都创建同一个帐号admin,密码admi ...

  2. JQuery获取和设置select下拉框的值

    获取Select : 获取select 选中的 text : $("#sid").find("option:selected").text(); 获取selec ...

  3. 设置Android程序图标和程序标题

    修改程序名称 在/res/values/strings.xml中修改程序名称,例如: <string name="app_name">你的程序名称</string ...

  4. Spring_day04--SSH框架整合过程

    SSH框架整合过程 第一步 导入jar包 第二步 搭建struts2环境 (1)创建action,创建struts.xml配置文件,配置action (2)配置struts2的过滤器 第三步 搭建hi ...

  5. pushViewController自定义动画http://blog.csdn.net/ralbatr/article/details/22039233

     本文转载至  http://blog.csdn.net/ralbatr/article/details/22039233 实现的主要代码如下: CATransition *transition =  ...

  6. 此类目的是防治序列化Json字符串时的循环引用问题-------最好解决方案

    http://james.newtonking.com/json/help/index.html using Newtonsoft.Json;using System;using System.Col ...

  7. Android得到SD卡文件夹大小以及删除文件夹操作

    float cacheSize = dirSize(new File(Environment.getExternalStorageDirectory() + AppConstants.APP_CACH ...

  8. vue 添加过滤器-以格式化日期为例

    vue的filter和angular的pipe管道类似,是过滤器 官网:https://cn.vuejs.org/v2/guide/filters.html 添加格式化日期的全局过滤器 在main.j ...

  9. HDU_5533_Dancing Stars on Me

    Dancing Stars on Me Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Ot ...

  10. hdu1568&&hdu3117 求斐波那契数前四位和后四位

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1568 题意:如标题所示,求斐波那契数前四位,不足四位直接输出答案 斐波那契数列通式: 当n<=2 ...