Hi all,
I am using spring security just for authentication. Roles will be get via db.
The first time I try to authenticate a user it fails returning:
Code:
2012-10-05 14:35:01,245 [qtp14301726-22] DEBUG org.springframework.security.ldap.search.FilterBasedLdapUserSearch - Searching for user 'dolbert', with user search [ searchFilter: '(uid={0})', searchBase: 'ou=users,ou=Internal,o=company', scope: subtree, searchTimeLimit: 0, derefLinkFlag: false ]
2012-10-05 14:35:01,861 [qtp14301726-22] DEBUG org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter - Authentication request failed: org.springframework.security.authentication.AuthenticationServiceException: [LDAP: error code 32 - No Such Object]; nested exception is javax.naming.AuthenticationException: [LDAP: error code 32 - No Such Object]
2012-10-05 14:35:01,861 [qtp14301726-22] DEBUG org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter - Updated SecurityContextHolder to contain null Authentication
2012-10-05 14:35:01,861 [qtp14301726-22] DEBUG org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter - Delegating to authentication failure handlerorg.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler@20c6a5
Then the second one login goes ok showing:
Code:
2012-10-05 14:38:27,397 [qtp14301726-26] DEBUG org.springframework.security.ldap.search.FilterBasedLdapUserSearch - Searching for user 'dolbert', with user search [ searchFilter: '(uid={0})', searchBase: 'ou=users,ou=Internal,o=company', scope: subtree, searchTimeLimit: 0, derefLinkFlag: false ]
2012-10-05 14:38:27,514 [qtp14301726-26] DEBUG org.springframework.security.ldap.SpringSecurityLdapTemplate - Searching for entry in under DN '', base = 'ou=users,ou=Internal,o=company', filter = '(uid={0})'
2012-10-05 14:38:27,576 [qtp14301726-26] DEBUG org.springframework.security.ldap.SpringSecurityLdapTemplate - Found DN: uid=dolbert,ou=users,ou=Internal,o=company
2012-10-05 14:38:27,596 [qtp14301726-26] DEBUG org.springframework.security.ldap.SpringSecurityLdapTemplate - Found DN: uid=dolbert,ou=users,ou=Internal,o=company
2012-10-05 14:38:27,613 [qtp14301726-26] DEBUG org.springframework.security.ldap.SpringSecurityLdapTemplate - Found DN: uid=dolbert,ou=users,ou=Internal,o=company
2012-10-05 14:38:27,626 [qtp14301726-26] DEBUG org.springframework.security.ldap.authentication.BindAuthenticator - Attempting to bind as uid=dolbert,ou=users,ou=Internal,o=company
2012-10-05 14:38:27,626 [qtp14301726-26] DEBUG org.springframework.security.ldap.DefaultSpringSecurityContextSource - Removing pooling flag for user uid=dolbert,ou=users,ou=Internal,o=company
2012-10-05 14:38:28,157 [qtp14301726-26] DEBUG org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator - Getting authorities for user uid=dolbert,ou=users,ou=Internal,o=company
2012-10-05 14:38:28,157 [qtp14301726-26] DEBUG org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator - Searching for roles for user 'dolbert', DN = 'uid=dolbert,ou=users,ou=Internal,o=company', with filter (uniqueMember={0}) in search base ''
2012-10-05 14:38:28,158 [qtp14301726-26] DEBUG org.springframework.security.ldap.SpringSecurityLdapTemplate - Using filter: (uniqueMember=uid=dolbert,ou=users,ou=Internal,o=company)
2012-10-05 14:38:28,274 [qtp14301726-26] DEBUG org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator - Roles from search: [EP_ESS_01_A_MUS]
My spring-security.xml
Code:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:security="http://www.springframework.org/schema/security"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-3.0.xsd">
<security:http auto-config="true"
access-denied-page="/flows/login/accessDenied.xhtml" create-session="never">
<security:http-basic />
<security:intercept-url pattern="/flows/admin/**"
access="ROLE_ADMIN" />
<security:intercept-url pattern="/flows/csrHandler/**"
access="ROLE_USER" />
<security:intercept-url pattern="/*"
access="IS_AUTHENTICATED_ANONYMOUSLY" />
<security:form-login login-processing-url="/j_spring_security_check"
login-page="/flows/login/login.xhtml" default-target-url="/flows/index.xhtml"
authentication-failure-url="/flows/login/login.xhtml?error='true'"
always-use-default-target='true' />
<security:logout logout-url="/flows/logout/logout.xhtml"
logout-success-url="/" />
</security:http>
<bean id="customUserContextMapper" class="com.company.boat.login.service.CustomUserDetailsMapper" />
<security:authentication-manager>
<security:ldap-authentication-provider
user-search-base="ou=users,ou=Internal,o=company"
user-search-filter="(uid={0})" user-context-mapper-ref="customUserContextMapper" />
</security:authentication-manager>
<security:ldap-server url="ldap://ecd.company.se"
manager-dn="uid=Uname,ou=Users,ou=Internal,o=company"
manager-password="PWD" />
</beans>
I am using spring security 3.0.5.RELEASE
I tried adding to the spring-security.xml in the
Code:
create-session="never"
and
Code:
<security:http-basic />
but the error is still there.
Any ideas?
Thanks in advance!