无法在Jenkins中使用LDAP登录
为了加强Jenkins CI服务器(在Ubuntu 14.04上运行1.614)的安全性,我昨天配置了LDAP插件。昨天一切似乎都很好,我能够登录并手动配置和运行一些构建 然而,今天早上,没有人——包括我自己——能够登录 我们被告知要查看服务器控制台输出-但是,无法在Jenkins中使用LDAP登录,jenkins,ldap,Jenkins,Ldap,为了加强Jenkins CI服务器(在Ubuntu 14.04上运行1.614)的安全性,我昨天配置了LDAP插件。昨天一切似乎都很好,我能够登录并手动配置和运行一些构建 然而,今天早上,没有人——包括我自己——能够登录 我们被告知要查看服务器控制台输出-但是,/var/log/jenkins/jenkins.log中没有任何记录。我找到了-但是在/usr/lib/jenkins/(我的jenkins主目录)中没有这样的日志文件 我在尝试了简单的groovy疑难解答脚本,但每个查询都返回: Ch
/var/log/jenkins/jenkins.log
中没有任何记录。我找到了-但是在/usr/lib/jenkins/
(我的jenkins主目录)中没有这样的日志文件
我在尝试了简单的groovy疑难解答脚本,但每个查询都返回:
Checking the name 'wibble'...
It is NOT a group, reason: No such property: Jenkins for class: RemoteClass
It is NOT a user, reason: No such property: Jenkins for class: RemoteClass
我的安全配置:
<useSecurity>true</useSecurity>
<authorizationStrategy class="hudson.security.AuthorizationStrategy$Unsecured"/>
<securityRealm class="hudson.security.LDAPSecurityRealm" plugin="ldap@1.11">
<server>server.ip.address</server>
<rootDN>dc=domain,dc=location,dc=au</rootDN>
<inhibitInferRootDN>false</inhibitInferRootDN>
<userSearchBase>dc=domain,dc=location,dc=au</userSearchBase>
<userSearch>sAMAccountName={0}</userSearch>
<groupSearchBase>ou=groups</groupSearchBase>
<groupSearchFilter>(& (cn={0}) (objectclass=group) )</groupSearchFilter>
<groupMembershipStrategy class="jenkins.security.plugins.ldap.FromGroupSearchLDAPGroupMembershipStrategy">
<filter>(&(objectCategory=group)(member={0}))</filter>
</groupMembershipStrategy>
<managerDN>cn=administrator,cn=users,dc=domain,dc=location,dc=au</managerDN>
<managerPasswordSecret>wurble-bop-de-boo</managerPasswordSecret>
<disableMailAddressResolver>false</disableMailAddressResolver>
<displayNameAttributeName>displayname</displayNameAttributeName>
<mailAddressAttributeName>mail</mailAddressAttributeName>
<userIdStrategy class="jenkins.model.IdStrategy$CaseInsensitive"/>
<groupIdStrategy class="jenkins.model.IdStrategy$CaseInsensitive"/>
</securityRealm>
true
server.ip.address
dc=域,dc=位置,dc=au
假的
dc=域,dc=位置,dc=au
sAMAccountName={0}
ou=组
(&;(cn={0})(objectclass=group))
(&;(objectCategory=group)(member={0}))
cn=管理员,cn=用户,dc=域,dc=位置,dc=au
乌尔布尔波普德布酒店
假的
显示名
邮件
一夜之间没有进行任何配置更改,我们使用这些相同的凭据/设置从大约3或4个不同的应用程序进行其他LDAP集成,它们都工作正常。在“配置全局安全性”页面上添加或修改用户后,我遇到了类似的问题。我认为这就像@davidrv87所说的:Chrome自动填充一些隐藏的“用户名”和“密码”字段,并破坏LDAP设置 结果 在主Jenkins
config.xml
文件中,错误设置显示为
下的新子节点:
+我的用户名
+uT5S1rfROmNBuEsw8z=
如何修复
~jenkins/config.xml
managerDN
和managerPasswordSecret
节点(行)现在LDAP登录应该可以再次工作了 你提到了
/usr/lib
和/usr/log
(这是否存在?),但看看,日志应该在/var/log/jenkins
中。我曾经遇到过类似的问题,如果我没记错的话,就是Chrome的自动完成,在LDAP的高级设置中完成了管理员密码,即使它不可见。你可能想检查一下,以防万一。@Christopher你说得对,那是个打字错误,我已经改正了it@davidrv87-这是在Firefox中。我没有设置任何浏览器来记住密码这正是我的问题将Jenkins配置克隆到另一台服务器后,我无法登录,Jenkins日志中出现javax.naming.ServiceUnavailableException错误。删除这两个设置解决了问题。
<securityRealm class="hudson.security.LDAPSecurityRealm" plugin="ldap@1.11">
+ <managerDN>myusername</managerDN>
+ <managerPasswordSecret>uT5S1rfROmNBuEsw8z=</managerPasswordSecret>