JENKINS安装及新建用户,权限配置



1. 下载安装


jenkins 官网地址
https://jenkins.io/index.html

下载地址
https://jenkins.io/download/thank-you-downloading-windows-installer/

我用的是windows版的,下载之后解压得到jenkins.msi文件  双击安装,安装很简单,下一步即可


安装完成后
打开浏览器输入:localhost:8080

显示如下界面





2. 修改端口号


jenkins默认端口为8080,很容易和其他端口号冲突,所以一般需要重新设置

更改端口号 ,改完之后,需重新启动服务
进入安装目录下jenkins.xml

 <executable>%BASE%\jre\bin\java</executable>
 <arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war"</arguments>

httpPort=8080 修改为8091

重启服务,使用localhost:8091进入即可

3. 用户管理和权限设置


可参考:http://www.cnblogs.com/zz0412/p/jenkins_jj_14.html

(1).

进入点击左侧系统设置 找到 Configure Global Security




进入如下页面



保存后系统管理中就出现管理用户的选项。页面右上角也会出现登录/注册的选项

注册新用户并可使用该账户进行登录



(2). 接下来即可进行权限配置

点击左侧的系统管理—>Configure Global Security 

选择授权策略中的安全矩阵或者项目矩阵授权策略

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


添加用户组


添加完成后 如下,


一旦启用安全矩阵,不管是否允许注册是否勾选,都不会出现注册按钮

之后可以使用admin进行登录,点击系统设置,右侧的用户管理,进行用户管理


(3). 这里遇到一个问题,就是如果你选择安全矩阵之后没有添加用户组,那么你将无法登录,没有权限

一般这种情况有两种解决办法


第一种:忘记密码也可使用此方法
将jenkins安装文件下的conf.xml中的下面指定内容删除 重新启动jenkins


<useSecurity>true</useSecurity>
	<authorizationStategy class="hudson.sucrity.FullControlOnceLoggedInAuthorizationStrategy">
		......
	</authorizationStategy>
	<securityRealm class="hudson.security.HudsonPrivateSecurityRealm">
	   <disableSignup>false</disableSignup>
		.. 
	</securityRealm>



第二种:就是在该文件下给刚刚的用户加入所有权限

<useSecurity>true</useSecurity> 
<authorizationStrategy class="hudson.security.GlobalMatrixAuthorizationStrategy"> 
<permission>hudson.model.Computer.Configure:admin</permission> 
<permission>hudson.model.Computer.Connect:admin</permission> 
<permission>hudson.model.Computer.Create:admin</permission> 
<permission>hudson.model.Computer.Delete:admin</permission> 
<permission>hudson.model.Computer.Disconnect:admin</permission> 
<permission>hudson.model.Hudson.Administer:admin</permission> 
<permission>hudson.model.Hudson.Read:admin</permission> 
<permission>hudson.model.Hudson.Read:anonymous</permission> 
<permission>hudson.model.Hudson.RunScripts:admin</permission> 
<permission>hudson.model.Item.Build:admin</permission> 
<permission>hudson.model.Item.Cancel:admin</permission> 
<permission>hudson.model.Item.Configure:admin</permission> 
<permission>hudson.model.Item.Create:admin</permission> 
<permission>hudson.model.Item.Delete:admin</permission> 
<permission>hudson.model.Item.Discover:admin</permission> 
<permission>hudson.model.Item.Read:admin</permission> 
<permission>hudson.model.Item.Workspace:admin</permission> 
<permission>hudson.model.Run.Delete:admin</permission> 
<permission>hudson.model.Run.Update:admin</permission> 
<permission>hudson.model.View.Configure:admin</permission> 
<permission>hudson.model.View.Create:admin</permission> 
<permission>hudson.model.View.Delete:admin</permission> 
<permission>hudson.model.View.Read:admin</permission> 
<permission>hudson.scm.SCM.Tag:admin</permission> 
</authorizationStrategy> 
<securityRealm class="hudson.security.HudsonPrivateSecurityRealm"> 
<disableSignup>false</disableSignup> 
<enableCaptcha>false</enableCaptcha> 
</securityRealm> 


3. 角色—用户

当然上面所述只是一个简单的权限用户管理


接下来对用户和权限进行更加细致的管理,要使用jenkins的角色管理对用户进行权限的绑定

这样可以细致到每一个项目的具体权限,这也是我们最终所需要的效果

可参考:http://blog.csdn.net/russ44/article/details/52276222

(1) 安装插件 Role-based Authorization Strategy


由于jenkins默认的权限管理体系不支持用户组或角色的配置,因此需要安装第三发插件来支持角色的配置,本文将使用Role Strategy Plugin,介绍页面:https://wiki.jenkins-ci.org/display/JENKINS/Role+Strategy+Plugin


在插件管理中找到 Role-basedAuthorization Strategy插件在线安装即可


(2)


进入系统设置==》Configure Global Security选择Role-Based Strategy





这时系统设置中会多出一项Manage and Assign Roles





点击进入




选择管理角色



pattern 及为正则表达式,用来过滤角色可以访问的工程    写法为 开头字母.*
注意:中间有一个点


保存之后进入角色分配


如果anonymous不附加任何权限,或者只加read权限,那么登录jenkins的时候就直接跳转到登录界面
必须登录后方可操作


最后使用admin登录及为管理员拥有全部权限
使用test用户登录效果为如下,只拥有自己所属工程的操作权限



end






Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐