2014-12-08:已不再担任SCM和CI的职位,Jenkins系列的文章如无必要不会再维护。
说明:本方法适用于安全矩阵和项目矩阵授权策略的Jenkins。
很多童鞋在使用jenkins的时候忘记配置权限或者权限配置错误,然后各种蛋疼。最近闲着无事,折腾了下。好了,闲话少扯。
Jenkins的权限配置文件存放在JENKINS_HOME目录。
进入JENKINS_HOME目录,找到config.xml文件。嗯,就是它了。打开config.xml,里面有一堆的东西,找找。。。找到了<useSecurity>和<authorizationStrategy>节点。<useSecurity>节点代表是否使用用户权限,<authorizationStrategy>节点代表用户权限是怎么划分的。如图:
下面提供2种方法供大家使用:
- 恢复默认设置
直接删除<useSecurity>和<authorizationStrategy>节点
- 配置管理员权限
这种方法适用于已经存在一堆的权限,重新配置麻烦。
在<authorizationStrategy>节点中添加内容如下:
<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。
最后给大家说说在配置文件里面怎么辨别使用是哪种权限控制模式
<authorizationStrategy>节点上有个class属性,这个属性控制着使用那种授权模式。
hudson.security.FullControlOnceLoggedInAuthorizationStrategy | 登录用户可以做任何事 |
hudson.security.ProjectMatrixAuthorizationStrategy | 项目矩阵授权策略 |
hudson.security.GlobalMatrixAuthorizationStrategy | 安全矩阵 |
hudson.security.LegacyAuthorizationStrategy | 遗留模式 |
好了,有问题,请留言!