Jenkins 配置用户权限 + Tomcat 发布

前言

部署到jenkins上才是入门第一步,为了权限配置踩了一天坑,先总结下来留存。并分享出来帮助后面的兄弟

简单介绍一下ci系统

为android设置ci的方式有许多种,使用最为广泛的是Jenkins,TeamCity和Travis Ci。jenkins有最大的生态系统,有大约一千个可用的插件。这也是很多开源贡献者共同努力的结果。TeamCity是JetBrains的产品,JetBrains是一家创造了IntellliJ IDEA的公司。Travis CI相对而言更加年轻,主要集中在开源项目。

ok转入正题!!

配置用户权限

系统设置-Configure Global Security-第一项

这里写图片描述

红色圈着地方就是设置权限需要选择的地方。

注意:这里有坑,如果不添加用户,直接选择复选框的权限进行保存,就会出现如下异常。

这里写图片描述

下面会介绍如何跳出这个坑,接着上面的说

各种权限如下(在配置页面将鼠标放到该权限上即可查看帮助):
这里写图片描述

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

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

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

Job的Discover权限是一个奇葩的权限,帮助说Discover比Read的级别更低。如果匿名用户(没有访问job的权限)直接访问一个Job的Url将重定向到登陆页面。(经测试,这个权限应该是被废弃了。)

Credentials(证书)权限
创建 /删除/ManageDomains/更新视图

ps:如果有个用户被赋予了Overall的Read,并没有被赋予Job的Read权限,那么该用户就无法访问job。原因:没有权限。

其他都是一些基本的权限,大家根据自己的需求选择。

上面说没有添加用户,直接选择权限并保存会出现,访问拒绝问题。

解决方式有3种

方式1

修改权限 F:\jenkins.2.6.0.3\config.xml

然后重启 jenkins。

注意:注意:重启jenkins方式需要单独使用jenkins-cli.jar,

路径: http://localhost:8081/war/jnlpJars/jenkins-cli.jar

步骤:系统管理-Jenkins CLI

这里写图片描述

当然可以直接从浏览器中执行,点击具体命令

这里写图片描述
ok,这样就可以进行重启了

注意:如果无法进入命令行模式,直接下载jar包,运行。

方式2

恢复默认设置
直接删除 F:\jenkins.2.6.0.3\config.xml 中的这一串

   <useSecurity>true</useSecurity>
  <authorizationStrategy class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy">
    <denyAnonymousReadAccess>false</denyAnonymousReadAccess>
  </authorizationStrategy>
  <securityRealm class="hudson.security.HudsonPrivateSecurityRealm">
    <disableSignup>false</disableSignup>
    <enableCaptcha>false</enableCaptcha>
  </securityRealm>
方式3

配置管理员权限
  
    这种方法适用于已经存在一堆的权限,重新配置麻烦。

    在节点中添加内容如下:

复制代码
 

    <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>
 ps:anonymous可以更改成你的登录名。提供给大家的是匿名用户的配置。

改完之后记得保存额,然后重启Jenkins。

最后给大家说说在配置文件里面怎么辨别使用是哪种权限控制模式

节点上有个class属性,这个属性控制着使用那种授权模式。

hudson.security.FullControlOnceLoggedInAuthorizationStrategy    登录用户可以做任何事
hudson.security.ProjectMatrixAuthorizationStrategy  项目矩阵授权策略
hudson.security.GlobalMatrixAuthorizationStrategy   安全矩阵
hudson.security.LegacyAuthorizationStrategy 遗留模式

ok 配置用户权限完结了,当然jenkins的插件很丰富,可以找到关于用户权限设置插件,这里不做过多解释
推荐一个用户权限插件 Role-Based Strategy

发布到Tomcat

建议配置到tomcat,省时省力,还不用担心配置文件改错,无法重启jenkins的尴尬。

发布到Tomcat 方式:

1.下载Tomcat : download下载

解压 apache-tomcat-8.0.35。

2.找到 jenkens 根目录中 jenkins.war 包,拷贝到 apache-tomcat-8.0.35/webapps 中,重启tomcat
注意: 如果首次没有安装到tomcat中,再次安装到tomcat中会出现 8080端口被占用情况的,需要手动修改端口。
3.修改tomcat端口,\apache-tomcat-8.0.35\conf\server.xml 第68行


  <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
<!-- A "Connector" using the shared thread pool-->

更改端口,重启tomcat

4.tomcat重启方式

  apache-tomcat-8.0.35\bin\startup.bat    关闭 shutdown.bat

总结

Jenkins学习不能一步到位,刚接触很多坑。会牵扯到其他语言或者服务器相关知识点,比方说tomcat,myeclipse,shell脚本,gradle 脚本,groovy脚本。幸好有前人已经填了好多坑。

引用

修改Jenkins权限控制 http://blog.csdn.net/wangmuming/article/details/22925987
添加用户和管理权限 http://blog.csdn.net/achang21/article/details/48711583

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

灯塔@kuaidao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值