public class SpringSecurityLdapTemplate
extends org.springframework.ldap.core.LdapTemplate
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DN_KEY
Every search results where a record is defined by a Map<String,String[]>
contains at least this key - the DN of the record itself.
|
static java.lang.String[] |
NO_ATTRS |
Constructor and Description |
---|
SpringSecurityLdapTemplate(org.springframework.ldap.core.ContextSource contextSource) |
Modifier and Type | Method and Description |
---|---|
boolean |
compare(java.lang.String dn,
java.lang.String attributeName,
java.lang.Object value)
Performs an LDAP compare operation of the value of an attribute for a particular
directory entry.
|
org.springframework.ldap.core.DirContextOperations |
retrieveEntry(java.lang.String dn,
java.lang.String[] attributesToRetrieve)
Composes an object from the attributes of the given DN.
|
java.util.Set<java.util.Map<java.lang.String,java.util.List<java.lang.String>>> |
searchForMultipleAttributeValues(java.lang.String base,
java.lang.String filter,
java.lang.Object[] params,
java.lang.String[] attributeNames)
Performs a search using the supplied filter and returns the values of each named
attribute found in all entries matched by the search.
|
java.util.Set<java.lang.String> |
searchForSingleAttributeValues(java.lang.String base,
java.lang.String filter,
java.lang.Object[] params,
java.lang.String attributeName)
Performs a search using the supplied filter and returns the union of the values of
the named attribute found in all entries matched by the search.
|
org.springframework.ldap.core.DirContextOperations |
searchForSingleEntry(java.lang.String base,
java.lang.String filter,
java.lang.Object[] params)
Performs a search, with the requirement that the search shall return a single
directory entry, and uses the supplied mapper to create the object from that entry.
|
static org.springframework.ldap.core.DirContextOperations |
searchForSingleEntryInternal(javax.naming.directory.DirContext ctx,
javax.naming.directory.SearchControls searchControls,
java.lang.String base,
java.lang.String filter,
java.lang.Object[] params)
Internal method extracted to avoid code duplication in AD search.
|
void |
setSearchControls(javax.naming.directory.SearchControls searchControls)
Sets the search controls which will be used for search operations by the template.
|
afterPropertiesSet, authenticate, authenticate, authenticate, authenticate, authenticate, authenticate, authenticate, authenticate, authenticate, authenticate, bind, bind, bind, create, delete, deleteRecursively, executeReadOnly, executeReadWrite, find, find, findAll, findAll, findByDn, findOne, getContextSource, getObjectDirectoryMapper, list, list, list, list, list, list, listBindings, listBindings, listBindings, listBindings, listBindings, listBindings, listBindings, listBindings, lookup, lookup, lookup, lookup, lookup, lookup, lookup, lookup, lookup, lookup, lookupContext, lookupContext, modifyAttributes, modifyAttributes, modifyAttributes, rebind, rebind, rebind, rename, rename, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, search, searchForContext, searchForObject, searchForObject, searchForObject, searchForObject, searchForObject, setContextSource, setDefaultCountLimit, setDefaultSearchScope, setDefaultTimeLimit, setIgnoreNameNotFoundException, setIgnorePartialResultException, setIgnoreSizeLimitExceededException, setObjectDirectoryMapper, unbind, unbind, unbind, unbind, update
public static final java.lang.String[] NO_ATTRS
public static final java.lang.String DN_KEY
public SpringSecurityLdapTemplate(org.springframework.ldap.core.ContextSource contextSource)
public boolean compare(java.lang.String dn, java.lang.String attributeName, java.lang.Object value)
dn
- the entry who's attribute is to be usedattributeName
- the attribute who's value we want to comparevalue
- the value to be checked against the directory valuepublic org.springframework.ldap.core.DirContextOperations retrieveEntry(java.lang.String dn, java.lang.String[] attributesToRetrieve)
dn
- the directory entry which will be readattributesToRetrieve
- the named attributes which will be retrieved from the
directory entry.public java.util.Set<java.lang.String> searchForSingleAttributeValues(java.lang.String base, java.lang.String filter, java.lang.Object[] params, java.lang.String attributeName)
base
- the DN to search infilter
- search filter to useparams
- the parameters to substitute in the search filterattributeName
- the attribute who's values are to be retrieved.public java.util.Set<java.util.Map<java.lang.String,java.util.List<java.lang.String>>> searchForMultipleAttributeValues(java.lang.String base, java.lang.String filter, java.lang.Object[] params, java.lang.String[] attributeNames)
base
- the DN to search infilter
- search filter to useparams
- the parameters to substitute in the search filterattributeNames
- the attributes' values that are to be retrieved.DN_KEY
.public org.springframework.ldap.core.DirContextOperations searchForSingleEntry(java.lang.String base, java.lang.String filter, java.lang.Object[] params)
Ignores PartialResultException if thrown, for compatibility with Active
Directory (see LdapTemplate.setIgnorePartialResultException(boolean)
).
base
- the search base, relative to the base context supplied by the context
source.filter
- the LDAP search filterparams
- parameters to be substituted in the search.org.springframework.dao.IncorrectResultSizeDataAccessException
- if no results are found or the
search returns more than one result.public static org.springframework.ldap.core.DirContextOperations searchForSingleEntryInternal(javax.naming.directory.DirContext ctx, javax.naming.directory.SearchControls searchControls, java.lang.String base, java.lang.String filter, java.lang.Object[] params) throws javax.naming.NamingException
javax.naming.NamingException
public void setSearchControls(javax.naming.directory.SearchControls searchControls)
searchControls
- the SearchControls instance which will be cached in the
template.