Chapter 140. Spring LDAP
Spring LDAP Component
Available since Camel 2.11
The spring-ldap: component provides a Camel wrapper for Spring LDAP.
Maven users will need to add the following dependency to their
pom.xml
for this component:
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-spring-ldap</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency>
URI format
spring-ldap:springLdapTemplate[?options]
Where springLdapTemplate is the name of the Spring LDAP Template bean. In this bean, you configure the URL and the credentials for your LDAP access.
Options
Name | Type | Description |
---|---|---|
operation
|
String |
The LDAP operation to be performed. Must be one of search , bind , or unbind .
|
scope
|
String |
The scope of the search operation. Must be one of object , onelevel , or subtree , see also http://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol#Search_and_Compare
|
Usage
The component supports producer endpoint only. An attempt to create a consumer endpoint will result in an
UnsupportedOperationException
. The body of the message must be a map (an instance of java.util.Map
). This map must contain at least an entry with the key dn
that specifies the root node for the LDAP operation to be performed. Other entries of the map are operation-specific (see below).
The body of the message remains unchanged for the
bind
and unbind
operations. For the search
operation, the body is set to the result of the search, see http://static.springsource.org/spring-ldap/site/apidocs/org/springframework/ldap/core/LdapTemplate.html#search%28java.lang.String,%20java.lang.String,%20int,%20org.springframework.ldap.core.AttributesMapper%29.
Search
The message body must have an entry with the key
filter
. The value must be a String representing a valid LDAP filter, see http://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol#Search_and_Compare.
Bind
The message body must have an entry with the key
attributes
. The value must be an instance of javax.naming.directory.Attributes This entry specifies the LDAP node to be created.
Unbind
No further entries necessary, the node with the specified
dn
is deleted.
Key definitions
In order to avoid spelling errors, the following constants are defined in
org.apache.camel.springldap.SpringLdapProducer
:
- public static final String DN = "dn"
- public static final String FILTER = "filter"
- public static final String ATTRIBUTES = "attributes"