public class LdapClient extends Object implements ICacheEnabled<String,Set<String>>
Modifier and Type | Field and Description |
---|---|
static String |
JNDI_AUTH_ALIAS_KEY |
protected static org.apache.logging.log4j.Logger |
log |
Constructor and Description |
---|
LdapClient() |
LdapClient(Map<String,Object> options) |
LdapClient(Properties options) |
Modifier and Type | Method and Description |
---|---|
String |
authenticate(String username,
String password,
String searchDN,
String baseDN,
String searchFilter,
String returnedAttributeDN,
String returnedAttributeResult) |
String |
checkPassword(String userDN,
String password,
String baseDN,
String returnedAttribute) |
void |
close() |
protected void |
configure() |
Map<String,String> |
getAttributeMap(NamingEnumeration<SearchResult> searchResultEnum)
Returns a Map of attribute values.
|
Map<String,List<String>> |
getAttributeMultiMap(NamingEnumeration<SearchResult> searchResultEnum)
Returns a MultiMap of attribute values.
|
Set<String> |
getAttributeSet(NamingEnumeration<SearchResult> searchResultEnum)
Returns a Set of attribute values.
|
ICache<String,Set<String>> |
getCache() |
DirContext |
getContext()
Gets the Context
When InitialContextFactory and ProviderURL are set, these are used to get the Context . |
String |
getFirstAttribute(SearchResult searchResult) |
String |
getFirstSearchResult(NamingEnumeration<SearchResult> searchResultEnum) |
protected Hashtable<String,Object> |
getJndiEnv(Set optionSet) |
void |
mapMultipleAttributes(NamingEnumeration<SearchResult> searchResultEnum,
Callback<Attribute,Object> callback)
runs a set of attribute values through a Mapper.
|
void |
mapMultiValuedAttribute(NamingEnumeration<SearchResult> searchResultEnum,
Callback<Attribute,Object> callback) |
void |
open() |
NamingEnumeration<SearchResult> |
search(DirContext context,
String searchDN,
String filter,
Set<String> returnedAttributes,
int scope) |
NamingEnumeration<SearchResult> |
search(DirContext context,
String searchDN,
String filter,
String[] returnedAttributes,
int scope) |
NamingEnumeration<SearchResult> |
search(DirContext context,
String searchDN,
String filter,
String returnedAttribute,
int scope) |
NamingEnumeration<SearchResult> |
searchInObject(DirContext context,
String objectDN,
String baseDn,
String attribute) |
Map<String,String> |
searchObjectForMultipleAttributes(String objectDN,
String baseDn,
Set<String> attributes)
Search LDAP without filter, for example to find attributes of a specific user/object.
|
Map<String,List<String>> |
searchObjectForMultipleMultiValuedAttributes(String objectDN,
String baseDn,
Set<String> attributes) |
protected Set<String> |
searchObjectForMultiValuedAttribute(DirContext context,
String objectDN,
String baseDn,
String attribute) |
Set<String> |
searchObjectForMultiValuedAttribute(String objectDN,
String baseDn,
String attribute)
Search LDAP without filter, for example to find attributes of a specific user/object.
|
protected Set<String> |
searchObjectForMultiValuedAttributeWithCache(DirContext context,
String objectDN,
String baseDn,
String attribute,
boolean cacheNullResultsAsEmptySet) |
String |
searchObjectForSingleAttribute(DirContext context,
String objectDN,
String baseDn,
String attribute) |
String |
searchObjectForSingleAttribute(String objectDN,
String baseDn,
String attribute)
Search LDAP without filter, for example to find attributes of a specific user/object.
|
protected String |
searchObjectForSingleAttributeWithCache(DirContext context,
String objectDN,
String baseDn,
String attribute) |
String |
searchObjectForSingleAttributeWithCache(String objectDN,
String baseDn,
String attribute) |
Set<String> |
searchRecursivelyViaAttributes(String uid,
String baseDn,
String attribute) |
NamingEnumeration<SearchResult> |
searchSubtree(DirContext context,
String searchDN,
String filter,
Object[] params,
String returnedAttribute) |
NamingEnumeration<SearchResult> |
searchSubtree(DirContext context,
String searchDN,
String filter,
Object[] params,
String[] returnedAttributes) |
NamingEnumeration<SearchResult> |
searchSubtree(DirContext context,
String searchDN,
String filter,
String param,
Set<String> returnedAttributes) |
NamingEnumeration<SearchResult> |
searchSubtree(DirContext context,
String searchDN,
String filter,
String param,
String returnedAttribute) |
Map<String,String> |
searchSubtreeForMultipleAttributes(String searchDN,
String filter,
String param,
Set<String> attributes)
Search LDAP for an object in some group (specified by the filter), for example to search for a user/object.
|
Map<String,List<String>> |
searchSubtreeForMultipleMultiValuedAttributes(String searchDN,
String filter,
String param,
Set<String> attributes) |
Set<String> |
searchSubtreeForMultiValuedAttribute(String searchDN,
String filter,
String param,
String attribute) |
String |
searchSubtreeForSingleAttribute(String searchDN,
String filter,
String param,
String attribute) |
void |
setCache(ICache<String,Set<String>> cache)
optional
cache definition |
protected static org.apache.logging.log4j.Logger log
public static String JNDI_AUTH_ALIAS_KEY
public LdapClient()
public LdapClient(Properties options)
protected void configure() throws ConfigurationException
ConfigurationException
public void open() throws SenderException
SenderException
public void close() throws SenderException
SenderException
public void setCache(ICache<String,Set<String>> cache)
ICacheEnabled
cache
definitionsetCache
in interface ICacheEnabled<String,Set<String>>
public ICache<String,Set<String>> getCache()
getCache
in interface ICacheEnabled<String,Set<String>>
public DirContext getContext() throws NamingException
Context
. Otherwise the the InitialContext is
retrieved without parameters.NamingException
- Description of the Exceptionpublic NamingEnumeration<SearchResult> search(DirContext context, String searchDN, String filter, String returnedAttribute, int scope) throws NamingException
NamingException
public NamingEnumeration<SearchResult> search(DirContext context, String searchDN, String filter, Set<String> returnedAttributes, int scope) throws NamingException
NamingException
public NamingEnumeration<SearchResult> search(DirContext context, String searchDN, String filter, String[] returnedAttributes, int scope) throws NamingException
NamingException
public NamingEnumeration<SearchResult> searchSubtree(DirContext context, String searchDN, String filter, String param, Set<String> returnedAttributes) throws NamingException
NamingException
public NamingEnumeration<SearchResult> searchSubtree(DirContext context, String searchDN, String filter, String param, String returnedAttribute) throws NamingException
NamingException
public NamingEnumeration<SearchResult> searchSubtree(DirContext context, String searchDN, String filter, Object[] params, String returnedAttribute) throws NamingException
NamingException
public NamingEnumeration<SearchResult> searchSubtree(DirContext context, String searchDN, String filter, Object[] params, String[] returnedAttributes) throws NamingException
NamingException
public Set<String> searchRecursivelyViaAttributes(String uid, String baseDn, String attribute) throws NamingException
NamingException
public Map<String,String> searchObjectForMultipleAttributes(String objectDN, String baseDn, Set<String> attributes) throws NamingException
NamingException
public Map<String,List<String>> searchObjectForMultipleMultiValuedAttributes(String objectDN, String baseDn, Set<String> attributes) throws NamingException
NamingException
protected Set<String> searchObjectForMultiValuedAttributeWithCache(DirContext context, String objectDN, String baseDn, String attribute, boolean cacheNullResultsAsEmptySet) throws NamingException
NamingException
public Set<String> searchObjectForMultiValuedAttribute(String objectDN, String baseDn, String attribute) throws NamingException
NamingException
protected Set<String> searchObjectForMultiValuedAttribute(DirContext context, String objectDN, String baseDn, String attribute) throws NamingException
NamingException
public String searchObjectForSingleAttributeWithCache(String objectDN, String baseDn, String attribute) throws NamingException
NamingException
protected String searchObjectForSingleAttributeWithCache(DirContext context, String objectDN, String baseDn, String attribute) throws NamingException
NamingException
public String searchObjectForSingleAttribute(String objectDN, String baseDn, String attribute) throws NamingException
NamingException
public String searchObjectForSingleAttribute(DirContext context, String objectDN, String baseDn, String attribute) throws NamingException
NamingException
public NamingEnumeration<SearchResult> searchInObject(DirContext context, String objectDN, String baseDn, String attribute) throws NamingException
NamingException
public Map<String,String> searchSubtreeForMultipleAttributes(String searchDN, String filter, String param, Set<String> attributes) throws NamingException
NamingException
public Set<String> searchSubtreeForMultiValuedAttribute(String searchDN, String filter, String param, String attribute) throws NamingException
NamingException
public Map<String,List<String>> searchSubtreeForMultipleMultiValuedAttributes(String searchDN, String filter, String param, Set<String> attributes) throws NamingException
NamingException
public String searchSubtreeForSingleAttribute(String searchDN, String filter, String param, String attribute) throws NamingException
NamingException
public String getFirstSearchResult(NamingEnumeration<SearchResult> searchResultEnum) throws NamingException
NamingException
public String getFirstAttribute(SearchResult searchResult) throws NamingException
NamingException
public Set<String> getAttributeSet(NamingEnumeration<SearchResult> searchResultEnum) throws NamingException
NamingException
public Map<String,String> getAttributeMap(NamingEnumeration<SearchResult> searchResultEnum) throws NamingException
NamingException
public Map<String,List<String>> getAttributeMultiMap(NamingEnumeration<SearchResult> searchResultEnum) throws NamingException
NamingException
public void mapMultiValuedAttribute(NamingEnumeration<SearchResult> searchResultEnum, Callback<Attribute,Object> callback) throws NamingException
NamingException
public void mapMultipleAttributes(NamingEnumeration<SearchResult> searchResultEnum, Callback<Attribute,Object> callback) throws NamingException
NamingException
public String checkPassword(String userDN, String password, String baseDN, String returnedAttribute) throws NamingException
NamingException
public String authenticate(String username, String password, String searchDN, String baseDN, String searchFilter, String returnedAttributeDN, String returnedAttributeResult) throws NamingException
NamingException
Copyright © 2023 Frank!Framework. All rights reserved.