Назад | Перейти на главную страницу

HUDSON: как вручную закодировать пароль менеджера LDAP?

Мне нужно знать, как вручную кодировать LDAP managerPassword, который управляет аутентификацией в hudson:

<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

Ответ заключался в настройке поля managerPassword через веб-интерфейс Hudson. Проблема заключается в том, что для настройки LDAP необходимо пройти аутентификацию в hudson, что мы не можем сделать, потому что наша аутентификация LDAP в настоящее время нарушена (несоответствие пароля между LDAP и конфигурацией hudson).

Может кто-нибудь объяснить, как вручную закодировать пароль менеджера LDAP?

Спасибо

Значение пароля закодировано в base64. Вы можете закодировать его онлайн: www.base64encode.org и расшифруйте его здесь: www.base64decode.org.

Я нашел как это сделать. Это просто base64. Но консоль linux base64 добавляет символы заполнения, в то время как в jenkins config.xml хранится без него. Поэтому мне пришлось использовать perl base64:

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

Попробуйте использовать 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.