Class AbstractLdapAuthenticationManagerFactory<T extends AbstractLdapAuthenticator>
java.lang.Object
org.springframework.security.config.ldap.AbstractLdapAuthenticationManagerFactory<T>
- Direct Known Subclasses:
LdapBindAuthenticationManagerFactory
,LdapPasswordComparisonAuthenticationManagerFactory
public abstract class AbstractLdapAuthenticationManagerFactory<T extends AbstractLdapAuthenticator>
extends Object
Creates an
AuthenticationManager
that can perform LDAP authentication.- Since:
- 5.7
-
Method Summary
Modifier and TypeMethodDescriptionfinal AuthenticationManager
Returns the configuredAuthenticationManager
that can be used to perform LDAP authentication.protected abstract T
Allows subclasses to supply the defaultAbstractLdapAuthenticator
.protected final org.springframework.ldap.core.support.BaseLdapPathContextSource
Gets theBaseLdapPathContextSource
used to perform LDAP authentication.void
setAuthoritiesMapper
(GrantedAuthoritiesMapper authoritiesMapper) Sets theGrantedAuthoritiesMapper
used for converting the authorities loaded from storage to a new set of authorities which will be associated to theUsernamePasswordAuthenticationToken
.void
setContextSource
(org.springframework.ldap.core.support.BaseLdapPathContextSource contextSource) Sets theBaseLdapPathContextSource
used to perform LDAP authentication.void
setLdapAuthoritiesPopulator
(LdapAuthoritiesPopulator ldapAuthoritiesPopulator) Sets theLdapAuthoritiesPopulator
used to obtain a list of granted authorities for an LDAP user.void
setUserDetailsContextMapper
(UserDetailsContextMapper userDetailsContextMapper) Sets a custom strategy to be used for creating theUserDetails
which will be stored as the principal in theAuthentication
.void
setUserDnPatterns
(String... userDnPatterns) If your users are at a fixed location in the directory (i.e.void
setUserSearchBase
(String userSearchBase) Search base for user searches.void
setUserSearchFilter
(String userSearchFilter) The LDAP filter used to search for users (optional).
-
Method Details
-
setContextSource
public void setContextSource(org.springframework.ldap.core.support.BaseLdapPathContextSource contextSource) Sets theBaseLdapPathContextSource
used to perform LDAP authentication.- Parameters:
contextSource
- theBaseLdapPathContextSource
used to perform LDAP authentication
-
getContextSource
protected final org.springframework.ldap.core.support.BaseLdapPathContextSource getContextSource()Gets theBaseLdapPathContextSource
used to perform LDAP authentication.- Returns:
- the
BaseLdapPathContextSource
used to perform LDAP authentication
-
setLdapAuthoritiesPopulator
Sets theLdapAuthoritiesPopulator
used to obtain a list of granted authorities for an LDAP user.- Parameters:
ldapAuthoritiesPopulator
- theLdapAuthoritiesPopulator
to use
-
setAuthoritiesMapper
Sets theGrantedAuthoritiesMapper
used for converting the authorities loaded from storage to a new set of authorities which will be associated to theUsernamePasswordAuthenticationToken
.- Parameters:
authoritiesMapper
- theGrantedAuthoritiesMapper
used for mapping the user's authorities
-
setUserDetailsContextMapper
Sets a custom strategy to be used for creating theUserDetails
which will be stored as the principal in theAuthentication
.- Parameters:
userDetailsContextMapper
- the strategy instance
-
setUserDnPatterns
If your users are at a fixed location in the directory (i.e. you can work out the DN directly from the username without doing a directory search), you can use this attribute to map directly to the DN. It maps directly to the userDnPatterns property of AbstractLdapAuthenticator. The value is a specific pattern used to build the user's DN, for example "uid={0},ou=people". The key "{0}" must be present and will be substituted with the username.- Parameters:
userDnPatterns
- the LDAP patterns for finding the usernames
-
setUserSearchFilter
The LDAP filter used to search for users (optional). For example "(uid={0})". The substituted parameter is the user's login name.- Parameters:
userSearchFilter
- the LDAP filter used to search for users
-
setUserSearchBase
Search base for user searches. Defaults to "". Only used withsetUserSearchFilter(String)
.- Parameters:
userSearchBase
- search base for user searches
-
createAuthenticationManager
Returns the configuredAuthenticationManager
that can be used to perform LDAP authentication.- Returns:
- the configured
AuthenticationManager
-
createDefaultLdapAuthenticator
Allows subclasses to supply the defaultAbstractLdapAuthenticator
.- Returns:
- the
AbstractLdapAuthenticator
that will be configured for LDAP authentication
-