2010-03-30 5 views
0

У меня есть веб-приложение, которое настроено на использование сервера ldap-сервера/менеджера аутентификации/поставщика/службы проверки подлинности. У меня есть еще один DAO, который уже выполняет большую часть работы, которую они выполняют (помимо аутентификации пользователя) с использованием Spring-LDAP. Моя проблема в том, что я хочу, чтобы директор был моим собственным классом bean. Каков самый простой способ сделать это?Весна безопасности основной основной фасоль

Первоначально я думал создать пользовательский поставщик проверки подлинности, но поскольку по умолчанию он делает именно то, что я хочу, то, похоже, не требуется. Я думаю, мне просто нужно переопределить любой объект, который фактически возвращает основной компонент. Возможно ли это и может быть введено в контекст аутентификации ldap безопасности?

Это, как я в настоящее время она создала:

<ldap-server 
    url="ldap://HOST:3268/BASEDN" 
    manager-dn="FULLDN" 
    manager-password="PASS"/> 

    <authentication-manager> 
<ldap-authentication-provider user-search-filter="(samaccountname={0})"/> 
<authentication-provider> 
     <ldap-user-service user-search-filter="(samaccountname={0})"/> 
</authentication-provider> 

</authentication-manager> 

Является ли «LDAP-пользователь-сервис», что связывает Principal боб к объекту Проверка подлинности SecurityContext?

Проблема сейчас. У меня есть вторая конфигурация LDAP (почти идентичная конфигурации auth), которая предназначена для DAO, когда пользователь переходит на страницу, я просто повторно просматриваю их учетную запись пользователя и возвращаю Пользовательский объект (что было бы неплохо, если бы это был Принцип безопасности).

ответ

1

Используйте ldap-authentification-provider/@user-context-mapper-ref и внесите собственные org.springframework.security.ldap.userdetails.UserDetailsContextMapper.

Смежные вопросы