Jenkins拾遗--第三篇(用户权限管理)
采访过很多实用Jenkins的同学,发现Jenkins的安全是一个很薄弱的地方。很多公司用作生产部署的Jenkins安全管理都不是很规范,就更别提测试用的Jenkins了。
其实Jenkins是一个很敏感的地方。由于需要方便CI,Jenkins本身会得到很多权限,比如某些机器的SSH登录权限,源码库访问权限,它的构建空间也会保存很多信息。
如果持有恶意的人得到了Jenkins的访问权限它可以干很多非法勾当,举几个触目惊心的例子:
- 跑到工作项目窃取源码。
- 修改源码,build,上线,这样可以拿到服务器端几乎所有权限。只要想,拖库,修改后台数据, rm -rf 基本上都可以做到。
- 污染客户端,比如在客户端上种个木马,窃取手机数据,把客户端当肉鸡。。。
安全无小事,Jenkins的安全还是要上心的。
作为维护者,最基本的事情就是阅读Jenkins的安全文档,虽然这份文档很简单,做好远不止这些,但是考虑里边的风险并作出防护算是最基本的要求。
:https://wiki.jenkins-ci.org/display/JENKINS/Securing+Jenkins
这篇文章会介绍最基础的地方,就是用户权限管理。Jenkins本身提供三种权限管理
1.内建的用户管理。这是最简单的一种方式。在确认维护jenkins的人不多,且权限分配不复杂的时候,可以使用这种方法。
2.使用 Active Directory (主要在Windows下) ,这样可以继承windows网络的管理权限。
3.LDAP方式。如果部署在linux上,使用LDAP方式是一种省事的方法。权限本质上是一个矩阵,LDAP提供的机制足够用了。同时,使用LDAP,会省去创建很多账号的麻烦,使用者也省去了维护多个账号的麻烦。如果有上下游产品(比如Jira)也使用LDAP,则可以系统管理员统一来管理这些账号(一般可以委托给运维人员管理一部分权限),从总体上效率会提高很多。
配置的方法,下面文档写的非常详细,就不细讲了。
https://wiki.jenkins-ci.org/display/JENKINS/Standard+Security+Setup
配置后,有一个很重要的事情就是,分配权限。jenkins提供了还算是比较细的权限矩阵,可以根据需要配置。 一个需要注意的就是,权限尽量遵从最小权限原则。安全是多层的概念,每一层多一些保护,受到攻击的概率就会降低一些。
参考文章:
https://zh.wikipedia.org/wiki/%E6%9C%80%E5%B0%8F%E6%9D%83%E9%99%90%E5%8E%9F%E5%88%99
https://wiki.jenkins-ci.org/display/JENKINS/LDAP+Plugin#LDAPPlugin-Configuration
转载于:https://www.cnblogs.com/skytraveler/p/6387670.html
Jenkins拾遗--第三篇(用户权限管理)相关推荐
- jenkins pipeline、用户权限管理、插件下载地址更改、凭证管理、自由风格项目构建、maven项目构建、常用的构建触发器、邮件发送、SonarQube代码审查
CI持续集成流程 pipeline jenkins安装pipeline插件: 简单使用: 查看流水线语法: 片段生成器: 2.0以后推荐使用声明式语法:右侧下拉框是一些步骤,都可以自动生成 Decla ...
- ASP.NET MVC 企业级实战 —— 创建用户权限管理范例程序(三)
上一篇,主要讲解了模型的创建和利用Entity Framework来操作数据库,这篇我们会讲解如何创建控制器和视图. 由于最近很多网友反馈在VS 2012 无法安装NBlock框架模版,故再次声明,N ...
- 数据库—用户权限管理(三十三)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一.概述 二.用户权限类型 三.用户赋权 四.权限删除 五.用户删除 前言 数据库用户权限管理是指对数据库用户的权限进行 ...
- SpringBoot 基于Shiro + Jwt + Redis的用户权限管理 (三) 鉴权
项目Github地址: https://github.com/baiye21/ShiroDemo SpringBoot 基于Shiro + Jwt + Redis的用户权限管理 (一) 简介与配置 S ...
- MySQL(入门篇18)SQLyog 的用户权限管理 ; SQL语句的用户权限管理。
一.SQLyog 的用户权限管理 1. 创建用户 2. 修改账号和密码 1.登入刚拿创建的jarvan2改账号和密码. 3. 查看和修改权限 4. 点击历史SQL代码就能看到图形化界面对应的SQL语句 ...
- java用户权限管理与角色设置(一)
实现业务系统中的用户权限管理--设计篇 B/S系统中的权限比C/S中的更显的重要,C/S系统因为具有特殊的客户端,所以访问用户的权限检测可以通过客户端实现或通过客户端+服务器检测实现,而B/S中,浏览 ...
- RDIFramework.NET ━ 9.8 用户权限管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.8 用户权限管理 -Web部分 在实际应用中我们会发现,权限控制会经常变动,如:需要调整角色的分配,需要收回与授予某些角色.用 ...
- Hive用户权限管理理解
HiverServer2支持远程多客户端的并发和认证,支持通过JDBC.Beeline等连接操作.hive默认的Derby数据库,由于是内嵌的文件数据库,只支持一个用户的操作访问,支持多用户需用mys ...
- mysql服务器权限说明,MySQL用户权限管理详解
用户权限管理主要有以下作用: 1. 可以限制用户访问哪些库.哪些表 2. 可以限制用户对哪些表执行SELECT.CREATE.DELETE.DELETE.ALTER等操作 3. 可以限制用户登录的IP ...
最新文章
- 派生类参数初始化列表和基类构造函数顺序
- android route命令详解,route cmd命令详解
- php 长文本_php字符串太长怎么办
- python的快速入门-Python如何快速入门的基础知识
- usaco2013 mar【懒惰的奶牛】
- 【小白学PyTorch】扩展之Tensorflow2.0 | 21 Keras的API详解(下)池化、Normalization
- C语言 十六进制整数字符串转十进制整数
- 深入学习http协议(转)
- flash文件制作笔记
- 想不到,那些让我半夜偷偷收藏的沙雕表情包,竟是出自AI之手
- 在Visual Studio Code中配置GO开发环境
- oracle树状排序,Oracle树状结构查询
- springboot logback自定义配置文件路径
- 2018-2019 ACM-ICPC, Asia Nanjing Regional Contest题解
- 大数据开发笔记(四):Hive数仓调优
- acer clear 工具_创作与电竞的全新体验 2019台北电脑展Acer派对开启
- JSTL(c标签)与Struts2(s标签)标签的常用功能对比
- 微信怎么和计算机发送文件格式,微信电脑版文档怎么弄 文档发送教程
- linux中patch补丁的文件格式和使用
- LeetCode之K sum problem
热门文章
- 大型网站技术架构:核心原理与案例分析 mobi_阿里面试官:你会高并发技术吗?...
- 域名解析可以带端口吗_带互感器的三相电表接线,S2可以不接地吗?ABC相序可以错吗?...
- Android自定义弹窗模仿微信,Android仿微信右上角点击加号弹出PopupWindow
- rfc3095中文版_RFC3095
- 综合评价模型的缺点_视频/图像质量评价综述(一)
- springboot图书管理怎么实现借书时间到期提醒_今日图书丨有了这个,图书管理再也没烦恼!...
- 重塑技术引擎 阿里落地全球最大规模云原生实践支撑双11
- 树莓派该文件名_树莓派学习笔记(2):常用linux命令
- python人头识别_python+opencv实现人头检测
- java窗口代码_Java系列教程day01——java的搭建环境