前言
上一篇正好是用户权限的配置,这一篇介绍的是jenkins因配置权限错误导致的无法登录的解决方法。
Jenkins权限配置,可参考下列链接:
https://blog.csdn.net/GX_1_11_real/article/details/99429802
报错如下
Access Denied
admin is missing the Overall/Read permission
解决方法
在修改完权限保存前,应检查权限是否正确再保存,否则会导致某些账号无法登录
【1】解决方法一
<1>首先注意的是你配置的安全策略是什么,使用其他账号登录
<2>根据配置的安全策略,修改异常账号的权限
最好的情况:
你配置的是安全策略是角色策略,安全矩阵或项目矩阵,且你给除了管理员的其他账号 系统的全部或大部分的权限。
你可以使用其他对jenkins系统有管理权限的账号进行权限的修改。如果你无法登录异常的那个账号丢失或权限配置异常,添加用户或添加权限即可。
【2】解决方法二
该方法属于重置权限
<1>查找到你的jenkins的主目录下的config.xml配置文件,备份一份再修改
例如:
cp /root/.jenkins/config.xml /root/.jenkins/config.xml_back
vim /root/.jenkins/config.xml
<2>修改内容一
查找下面内容:
<useSecurity>true</useSecurity>
<authorizationStrategy class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy"/>
<securityRealm class="hudson.security.HudsonPrivateSecurityRealm">
<disableSignup>false</disableSignup>
<enableCaptcha>false</enableCaptcha>
</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>
这是为admin用户赋予全部权限
<3>修改内容二
或修改成如下权限,仅改依据即可,多余的去除
1、任何用户可以做任何事(没有任何限制)
<authorizationStrategy class="hudson.security.AuthorizationStrategy$Unsecured"/>
修改结果如图:
2、登录用户可以做任何事
<authorizationStrategy class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy"/>
<4>重启你的jenkins
<5>使用账号登录后,重新配置权限