Spring security ldap аутентификация - PullRequest
1 голос
/ 03 ноября 2010

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

applicationContextSecurity.xml

<ldap-server id="contextSource"
  url="ldap://192.168.0.1:389/DC=cn,DC=bleum,DC=com"
     manager-dn="cn=buddy,ou=Neil,OU=Development,OU=Micosoft,DC=cn,DC=Micosoft,DC=com" 
     manager-password="A,1234567890" />

 <authentication-manager alias="authenticationManager" erase-credentials="true"> 
    <!--<authentication-provider user-service-ref="securityManagerSupport"/> -->
    <ldap-authentication-provider server-ref="contextSource" role-prefix="none" user-search-filter="(uid={0})" 
         user-search-base="ou=Neil,OU=Development,OU=Micosoft" user-context-mapper-ref="contextMapper">
    </ldap-authentication-provider>
 </authentication-manager>

 <beans:bean id="contextMapper" class="com.micosoft.neil.security.UserDetailsContextMapperSupport"/>


Error:

[DEBUG,FilterBasedLdapUserSearch] Searching for user 'test', with user search [ searchFilter: '(samaccountname={0})', searchBase: 'dc=company,dc=com', scope: subtree, searchTimeLimit: 0, derefLinkFlag: false ]
[DEBUG,AbstractContextSource] Got Ldap context on server 'ldap://adapps.company.com:389/dc=company,dc=com'
[INFO,SpringSecurityLdapTemplate] Ignoring PartialResultException
[DEBUG,XmlWebApplicationContext] Publishing event in Root WebApplicationContext: org.springframework.security.authentication.event.AuthenticationFailureBadCredentialsEvent[source=org.springframework.security.authentication.UsernamePasswordAuthenticationToken@488b5f0b: Principal: test; Password: [PROTECTED]; Authenticated: false; Details: org.springframework.security.web.authentication.WebAuthenticationDetails@fffd148a: RemoteIpAddress: 127.0.0.1; SessionId: 0718B7EED3F930C63C03DA97C4344CBD; Not granted any authorities]
[DEBUG,UsernamePasswordAuthenticationFilter] Authentication request failed: org.springframework.security.authentication.BadCredentialsException: Bad credentials
[DEBUG,UsernamePasswordAuthenticationFilter] Updated SecurityContextHolder to contain null Authentication
[DEBUG,UsernamePasswordAuthenticationFilter] Delegating to authentication failure handlerorg.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler@395158
[DEBUG,TokenBasedRememberMeServices] Interactive login attempt was unsuccessful.
[DEBUG,TokenBasedRememberMeServices] Cancelling cookie

Ответы [ 2 ]

0 голосов
/ 23 марта 2012

У меня та же ошибка с почти такой же конфигурацией.Я пока не могу дать вам ответ (извините!), Но при запуске отладчика через классы Spring кажется, что они пытаются сравнить пароль, введенный пользователем в виде строки (и отладчик подтверждает, что это правильный пароль)к паролю, полученному из LDAP - который является нулевым - который затем терпит неудачу.

0 голосов
/ 05 ноября 2010

Исходя из этого, похоже, что пароль был неверным, поэтому, если вы пытались ввести неправильный пароль / пользователя, то да, это именно то, что и ожидалось.

Действительно не уверен, что ваш вопросхоть?Вы ожидали чего-то другого?Вы ввели правильные учетные данные?

...