Не удается заставить Apache Archiva работать с LDAP

#ldap #archiva

#ldap #архивация #archiva

Вопрос:

Я раскомментировал соединители LDAP и UserMapper в application.xml

Я знаю, что все мои учетные данные LDAP (binddn, имя хоста и т.д.) Работают, потому что я использую аутентификацию LDAP и авторизацию для других приложений на моем сервере.

Все, что я сделал, это внес изменения в application.xml и безопасность.свойства. Есть ли что-то еще, что я должен сделать?

Когда я пытаюсь войти в систему с помощью пользователя из LDAP, это не удается. Есть ли файл журнала, который я могу проверить, чтобы понять, что происходит не так? Я нахожу документацию archiva скудной и лаконичной.

Вот мой файл security.properties — некоторые значения были изменены, возможно, кто-нибудь сможет проверить правильность структуры:

 # LDAP
user.manager.impl=ldap
ldap.bind.authenticator.enabled=true
redback.default.admin=admin
security.policy.password.expiration.enabled=false

ldap.config.hostname=localhost
ldap.config.port=389
ldap.config.base.dn=domainName=mydomain.com,o=domains,dc=mydomain,dc=com
ldap.config.context.factory=com.sun.jndi.ldap.LdapCtxFactory
ldap.config.bind.dn=cn=Manager,dc=mydomain,dc=com
ldap.config.password=mypass

ldap.config.mapper.attribute.email=mail
ldap.config.mapper.attribute.fullname=displayName
ldap.config.mapper.attribute.password=userPassword
ldap.config.mapper.attribute.user.id=mail
ldap.config.mapper.attribute.user.base.dn=ou=Users
ldap.config.mapper.attribute.user.object.class=inetOrgPerson
ldap.config.mapper.attribute.user.filter=(objectclass=inetOrgPerson)
  

Кроме того, config.mapper.attribute.user.base.dn меня смущает. База данных моих пользователей находится здесь:
подразделение = Пользователи,domainName=mydomain.com ,o= домены, dc= мой домен, dc=com

Итак, означает ли это, что для базового DN я ставлю: domainName=scoresecret.com ,o= домены,dc= scoresecret, dc=com

и для config.mapper.attribute.user.base.dn: ou=Пользователи

Дайте мне знать, если я делаю что-то не так, если я забываю что-то сделать, чтобы «включить LDAP», и если я смогу найти какие-нибудь журналы, которые укажут мне правильное направление. Огромное спасибо

Ответ №1:

Убедитесь, что вы настроили пользователя admin, который существует в LDAP — на данный момент нет способа использовать для этого внутреннего пользователя.

 redback.default.admin=admin
  

Замените admin учетной записью роли на вашем сервере LDAP, которую можно использовать для этого.

Вот шаблон конфигурации, который я использую, который должен показывать значения, которые вам нужно заполнить: https://github.com/maestrodev/puppet-archiva/blob/master/templates/security.properties.erb

Кажется, основным отличием может быть то, что пользовательский фильтр пуст?

(Смотрите также тему на users@archiva.apache.org: http://s.apache.org/KDj )

Комментарии:

1. Бретт, ты крутой. это не то, что исправлено, это был ваш файл, который заставил мою конфигурацию работать.