From: Mathieu Baudier Date: Wed, 28 Apr 2010 09:55:47 +0000 (+0000) Subject: Add a proper LDAP user details X-Git-Tag: argeo-commons-2.1.30~1625 X-Git-Url: https://git.argeo.org/?a=commitdiff_plain;h=90c20e8a20aaed36e8a5ff55205737574d7775db;p=lgpl%2Fargeo-commons.git Add a proper LDAP user details git-svn-id: https://svn.argeo.org/commons/trunk@3510 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/security/modules/org.argeo.security.manager.ldap/META-INF/spring/ldap-osgi.xml b/security/modules/org.argeo.security.manager.ldap/META-INF/spring/ldap-osgi.xml index d3623c3c4..12f8909eb 100644 --- a/security/modules/org.argeo.security.manager.ldap/META-INF/spring/ldap-osgi.xml +++ b/security/modules/org.argeo.security.manager.ldap/META-INF/spring/ldap-osgi.xml @@ -12,7 +12,7 @@ - diff --git a/security/modules/org.argeo.security.manager.ldap/META-INF/spring/ldap.xml b/security/modules/org.argeo.security.manager.ldap/META-INF/spring/ldap.xml index 3f6f3db58..bd117530d 100644 --- a/security/modules/org.argeo.security.manager.ldap/META-INF/spring/ldap.xml +++ b/security/modules/org.argeo.security.manager.ldap/META-INF/spring/ldap.xml @@ -53,8 +53,8 @@ - + userNatureMappers; public void afterPropertiesSet() throws Exception { @@ -83,15 +87,19 @@ public class ArgeoSecurityDaoLdap implements ArgeoSecurityDao, InitializingBean userDetailsManager = ludm; } -// if (ldapUserDetailsService == null) { -// ldapUserDetailsService = new LdapUserDetailsService(null, -// authoritiesPopulator); -// ldapUserDetailsService.setUserDetailsMapper(userDetailsMapper); -// } + if (ldapUserDetailsService == null) { + FilterBasedLdapUserSearch ldapUserSearch = new FilterBasedLdapUserSearch( + userBase, "(" + usernameAttributeName + "={0})", + contextSource); + ldapUserDetailsService = new LdapUserDetailsService(ldapUserSearch, + authoritiesPopulator); + ldapUserDetailsService.setUserDetailsMapper(userDetailsMapper); + } } - public ArgeoSecurityDaoLdap(ContextSource contextSource) { - ldapTemplate = new LdapTemplate(contextSource); + public ArgeoSecurityDaoLdap(BaseLdapPathContextSource contextSource) { + this.contextSource = contextSource; + ldapTemplate = new LdapTemplate(this.contextSource); } public void create(ArgeoUser user) { @@ -279,8 +287,8 @@ public class ArgeoSecurityDaoLdap implements ArgeoSecurityDao, InitializingBean this.groupClasses = groupClasses; } - public UserDetailsManager getUserDetailsManager() { - return userDetailsManager; + public UserDetailsService getUserDetailsService() { + return ldapUserDetailsService; } }