前一阵子在线上部署了一套jenkins环境,作为线上代码发布平台使用。
部署记录:http://www.cnblogs.com/kevingrace/p/5651427.html
下面重点记录下jenkins安装后的一些配置:
(1)添加用户权限
jenkins初次登陆后,要先注册一个用户作为管理员:
依次点击“系统管理”->“Configure Global Security”
如下:
选择“启用安全”模式,
“安全域”->“Jenkins专用用户数据库”->不选择“允许用户注册”(如果此处选择了”允许用户注册“,那么任何人都可以注册,只是注册后没有任何的操作权限,登陆后会提示“Access Denied,没有Overall/Read权限”,还是需要在管理员账号下授权后才能操作)。先注册一个管理员账号,然后在管理员下创建普通账号,再授予这些账号相应的操作权限。
“授权策略”->“项目矩阵授权策略”,添加账号。
首先添加一个admin账号作为管理员,先”应用“,注意这个时候千万别点击“保存”。由于admin用户还没有注册,所以这里添加到权限策略内会显示红色,等后面将这个admin用户注册后就会变成正常的绿色。
如上,点击“应用”后,再点击回到“jenkins”首页,会提示进行注册,则使用上面添加的管理员账号admin进行注册
注册成功后,就可以用管理员admin账号登陆了
在管理员账号下就可以创建普通用户
依次点击“系统管理”->“管理用户”
然后在“系统管理”->“Configure Global Security”的->“授权策略”->“项目矩阵授权策略”里授予wangshibo用户相应的权限。
由于wangshibo用户已经注册好了,所以这里添加进去后是绿色的
其他用户的添加步骤跟上面一样操作即可。
一般而言,除了运维人员(管理员)具有所有项目操作的权限外,一般只给开发人员(通常是项目组的负责人)Beta环境下的项目操作权限。如下,只给caogaokui和yuxiaogang这两个用户设置构建项目的权限。
“系统管理”->“管理用户”->“创建用户”
“系统管理”->“Configure Global Security”->“授权策略”->“项目矩阵授权策略”
然后再相应的项目构建配置里,“启用项目安全”,将相应的用户添加进去,赋予操作权限,说明他们对该项目由构建的权限。如下:
Jenkins忘记admin管理员密码的紧急办法
如果一不小心忘记了admin管理员密码,就看不到manage jenkins的那部分内容了,看不到就改不了用户权限,这样Jenkins系统也差不多处于瘫痪状态中了。 这个时候不要慌,可以通过下面方法来紧急,即去掉Jenkins系统的login状态,重置为刚部署初始化状态。 直接修改jenkins的config.xml文件 [root@localhost jenkins]# pwd /usr/local/tomcat_8080/webapps/jenkins [root@localhost jenkins]# cp config.xml config.xml_bak 去掉下面的内容 [root@localhost jenkins]# vim config.xml ....... ....... <useSecurity>true</useSecurity> <authorizationStategy class="hudson.sucrity.FullControlOnceLoggedInAuthorizationStrategy"> ...... ...... </authorizationStrategy> <securityRealm class="hudson.security.HudsonPrivateSecurityRealm"> <disableSignup>true</disableSignup> <enableCaptcha>false</enableCaptcha> </securityRealm> ....... ....... 接着重启jenkins的tomcat服务,这样就不需要login登录就能看到manage jenkins了。 然后再在"系统管理" -> "Configure Global Security" 里面添加admin和其他账号。 注意:添加的第一个账号admin默认就是Administer管理员账号。 有了admin管理员账号之后,就可以在"系统管理" -> "管理用户" -> "新建用户" 里面创建其他用户角色了。 注意:在"管理用户"界面里新建的用户默认登录后,是没有Overall/Read权限的,还需要: 在"系统管理" -> "Configure Global Security"里将新建用户添加到"授权策略"里面才能正常登录!