HUDSON:如何手动编码 LDAP 管理器密码?

HUDSON:如何手动编码 LDAP 管理器密码?

我需要知道如何手动编码控制 Hudson 身份验证的 LDAP managerPassword:

<securityRealm class="hudson.security.LDAPSecurityRealm">
    <server>ldap.example.org</server>
    <rootDN>dc=example,dc=org</rootDN>
    <userSearchBase>ou=People</userSearchBase>
    <userSearch>uid={0}</userSearch>
    <groupSearchBase>ou=Groups</groupSearchBase>
    <managerDN>cn=admin,dc=example,dc=org</managerDN>
    <managerPassword>{HOW DO I ENCODE THIS?}</managerPassword>
</securityRealm>

这个问题已经在这里提出过了:http://jenkins.361315.n4.nabble.com/How-to-encode-the-LDAP-managerPassword-td2295570.html

答案是通过 hudson web 界面配置 managerPassword 字段。我们遇到的问题是,为了配置 LDAP,必须对 hudson 进行身份验证,但我们无法做到这一点,因为我们的 LDAP 身份验证目前已损坏(LDAP 和 hudson 配置之间的密码不匹配)。

有人可以解释一下如何手动编码 LDAP 管理器密码吗?

谢谢

答案1

密码值经过 base64 编码。您可以在线对其进行编码:www.base64encode.org并在这里解码:www.base64decode.org

答案2

我找到了如何做到这一点。这只是 base64。但是 linux 的控制台 base64 添加了填充字符,而在 jenkins 中,config.xml 的存储没有它。所以我不得不使用 perl 的 base64:

perl -e 'use MIME::Base64; print encode_base64('password');'

答案3

尝试使用slappasswd。它应该会给你类似的结果rootpw {SSHA}vv2y+i6V6esazrIv70xSSnNAJE18bb2u

http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5/html/Deployment_Guide/s1-ldap-quickstart.html

在 Debian 上:apt-get install slapd

相关内容