Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >jenkins修改安全策略,权限设置丢失

jenkins修改安全策略,权限设置丢失

作者头像
py3study
发布于 2020-04-08 08:13:55
发布于 2020-04-08 08:13:55
1.9K00
代码可运行
举报
文章被收录于专栏:python3python3
运行总次数:0
代码可运行

一、概述

默认的jenkins用户权限,通过插件Role-based Authorization Strategy来设置的。

安装策略如下:

由于调式gitlab webhook自动提交部署,网上文章说,需要调整安全策略为:

保存之后,发现Manage and Assign Roles中的manage-roles只有admin,其他的权限都没有了。

普通用户登录之后,提示没有权限。

由于改之前,忘了对$JENKINS_HONE/config.xml 做备份,这咋办呢?

难道一个个重建?这么多用户,重建工作比较累。

二、恢复权限

最近的config.xml没有,但是2个月前的config.xml还有一份。不能直接拿这个文件直接覆盖掉,否则会导致很多Jenkins job丢弃。

config.xml大致结构如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?xml version='1.1' encoding='UTF-8'?>
<hudson>
  <disabledAdministrativeMonitors>
    <string>hudson.diagnosis.ReverseProxySetupMonitor</string>
  </disabledAdministrativeMonitors>
  <version>2.164.2</version>
  <installStateName>RESTART</installStateName>
  <numExecutors>3</numExecutors>
  <mode>NORMAL</mode>  <useSecurity>true</useSecurity>
  <authorizationStrategy class="com.michelin.cio.hudson.plugins.rolestrategy.RoleBasedAuthorizationStrategy">
      <roleMap type="globalRoles">
      <roleMap type="projectRoles">
      <roleMap type="slaveRoles">
  </authorizationStrategy>
  <securityRealm class="hudson.security.HudsonPrivateSecurityRealm">
    <disableSignup>false</disableSignup>
    <enableCaptcha>false</enableCaptcha>
  </securityRealm>
  <disableRememberMe>false</disableRememberMe>
  <projectNamingStrategy class="jenkins.model.ProjectNamingStrategy$DefaultProjectNamingStrategy"/>
  <workspaceDir>${JENKINS_HOME}/workspace/${ITEM_FULLNAME}</workspaceDir>
  <buildsDir>${ITEM_ROOTDIR}/builds</buildsDir>
  <markupFormatter class="hudson.markup.EscapedMarkupFormatter"/>
  <jdks>
    <jdk>
      <name>JDK1.8.0_144</name>
      <home>/data/jdk1.8.0_144</home>
      <properties/>
    </jdk>
  </jdks>
  <viewsTabBar class="hudson.views.DefaultViewsTabBar"/>
  <myViewsTabBar class="hudson.views.DefaultMyViewsTabBar"/>
  <clouds/>
  <quietPeriod>5</quietPeriod>
  <scmCheckoutRetryCount>0</scmCheckoutRetryCount>
  <views>
    <hudson.model.AllView>
      <owner class="hudson" reference="../../.."/>
      <name>all</name>
      <description>建立job后默认分类ALL</description>
      <filterExecutors>false</filterExecutors>
      <filterQueue>false</filterQueue>
      <properties class="hudson.model.View$PropertyList"/>
    </hudson.model.AllView>
      <listView></listView>
      </views>
  <primaryView>all</primaryView>
  <slaveAgentPort>0</slaveAgentPort>
  <label></label>
  <crumbIssuer class="hudson.security.csrf.DefaultCrumbIssuer">
    <excludeClientIPFromCrumb>false</excludeClientIPFromCrumb>
  </crumbIssuer>
  <nodeProperties/>
  <globalNodeProperties/>
</hudson>

将<useSecurity>true</useSecurity>到<scmCheckoutRetryCount>0</scmCheckoutRetryCount> 这部分内容替换掉。

再次重启jenkins,查看权限,就恢复好了

最后申明一下,gitlab webhook自动提交部署,不需要修改安全策略:登录用户可以做任何事。

出现403的原因是,jenkins job的token和gitlab设置的token不一致导致的。改成一样,就可以了,出现http 200表示成功。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/04/03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Jenkins admin 密码忘记解决
shaonbean
2018/01/02
3.6K0
忘记Jenkins管理员密码的解决办法
1.进入\Jenkins\secrets目录,打开initialAdminPassword文件,复制密码;
ydymz
2018/09/10
1.8K0
Jenkins密码忘记重置方法
Jenkins密码忘记分两种情况。 一、刚开始安装Jenkins,没有修改过密码 找回:直接找initialAdminPassword,安装初始密码保存在此文件中,具体路径因人而异,可使用find命令查找文件查看,
星哥玩云
2022/07/16
7.9K0
Jenkins 报错合集(下)
在普通的shell环境中,nohup,并且& 某个程序后,会抛到后台执行,在退出当前shell环境后,程序依然可以执行。
陈不成i
2021/06/01
7560
jenkins 入门教程(下)
接上回继续学习jenkins,这次主要来看一些疑难杂症: 一、yum install安装方式 除了直接java -jar jenkins.war方式,还可以用yum安装,这种方式下提供了更多的可配置选项,更适合生产环境控制jenkins的行为。 sudo yum update -y (可选) sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo sudo rpm --import ht
菩提树下的杨过
2018/01/18
1.4K0
jenkins 入门教程(下)
打造企业级自动化运维平台系列(四):Jenkis 基础入门与安装
随着软件开发需求及复杂度的不断提高,团队开发成员之间如何更好地协同工作以确保 软件开发的质量已经慢慢成为开发过程中不可回避的问题。
民工哥
2024/01/18
6800
打造企业级自动化运维平台系列(四):Jenkis 基础入门与安装
jenkins迁移及问题记录
首先需要将config.xml,jobs,workspace,plugins 这四部分内容迁移到新的Jenkins服务器,如果项目较多,任务较多,就统一打包使用scp发送过去即可
dogfei
2020/07/31
1.2K0
第6章 Jenkins系统权限划分与授权管理
Jenkins基础部分最后一篇公开的博文了,后续系列博文仅对Jenkins课程学员提供,如果有需要请大家可以支持下今天刚刚推出的DevOps教程,感谢支持!
DevOps云学堂
2020/08/04
7.2K0
第4章 Jenkins系统用户认证配置管理
我们进入系统设置 > 全局安全配置,在这里可以配置jenkins的用户认证和授权策略。
DevOps云学堂
2020/07/28
2.6K0
jenkins忘记管理员登陆密码的补救措施
jenkins可以作为我们日常运维过程中代码上线的发版平台,所以对jenkins的安全可靠的维护是十分重要的。 1)在登陆jenkins的时候,如果忘记普通用户的登陆密码,只要能用管理员账号登陆,还可
洗尽了浮华
2018/01/23
1.7K0
jenkins忘记管理员登陆密码的补救措施
DevOps整合Jenkins+k8s+CICD
基于现在的互联网现状,更推崇敏捷式开发,这样就导致项目的迭代速度更快,但是由于开发团队与运维团队的沟通问题,会导致新版本上线的时间成本很高。这又违背的敏捷式开发的最初的目的。 那么如果让开发团队和运维团队整合到成一个团队,协同应对一套软件呢?这就被称为DevOps。 DevOps,字面意思是Development &Operations的缩写,也就是开发&运维。 然字面意思只涉及到了开发团队和运维团队,其实QA测试团队也是参与其中的。 网上可以查看到DevOps的符号类似于一个无穷大的符号
IT运维技术圈
2022/10/24
2.9K1
工具系列 | Jenkins 构建伟大,无所不能
Jenkins 是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成。Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。
Tinywan
2020/07/23
1.1K0
gitlab和jenkins做持续集成构建教程
上一个轮回,我花了三篇文章的时间着重向大家介绍了在条件有限的情况下,如何优雅地进行前端发版和迭代。庆七一,热烈庆祝中国香港回归,人民生活水平越来越好,昨天上午我自掏腰包买了台服务器,决定由冷兵器脚本编程部署时代进入热武器CICD 时代。
江涛学编程
2022/07/30
7060
gitlab和jenkins做持续集成构建教程
实践: Jenkins Core Api & Job DSL创建项目
在大规模的Jenkins实践中创建项目也是一个问题,如何通过模板自动化的创建Jenkins项目呢? 可以通过安装Job Dsl插件后,通过 Dsl直接创建项目。也可以通过工具将dsl转换为xml,然后再通过Jenkins API创建项目。相对比较第一种方式更加直接一些,由于时间问题今天暂时分享第二种创建项目的方式。
DevOps云学堂
2020/01/16
1.4K0
实践: Jenkins Core Api & Job DSL创建项目
1.Jenkins入门基础介绍与持续化集成部署
Tips :个人理解 Jenkins 是一个调度平台,本身不需要处理任何事情,而是通过众多的插件来完成所有的工作;
全栈工程师修炼指南
2022/09/29
6.3K0
1.Jenkins入门基础介绍与持续化集成部署
使用Go案例完成开发到部署实践
我们准备一个apis模块,在该模块中实现一个打印字符串的函数Says(str string):所以
公众号: 云原生生态圈
2020/06/12
8710
devOps:构建篇-Jenkins
基础篇主要介绍了项目管理流程的基础架构设计与一些基本的 node 开发,本篇开始构建系统系列,简单讲述一下 jenkins 与项目管理系统的配合
Cookieboty
2020/10/23
1.3K0
devOps:构建篇-Jenkins
Jenkins安装
Jenkins是一个自包含的开源自动化服务器,可用于自动化与构建,测试以及交付或部署软件有关的各种任务。 Jenkins可以通过本机系统软件包Docker安装,甚至可以由安装了Java Runtime Environment(JRE)的任何计算机独立运行。
mikelLam
2022/10/31
4580
jenkins通过程序创建子节点
Jenkins有一个内置的命令行,允许通过程序或shell请求Jenkins。即Jenkins CLI
lovelife110
2021/01/14
1.2K0
使用python-jenkins管理Jenkins
本次我们将要学习JenkinsAPI接口,我们先用Python-jenkins这个库完成。
DevOps云学堂
2022/12/29
1.1K0
使用python-jenkins管理Jenkins
相关推荐
Jenkins admin 密码忘记解决
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验