| Namespace | http://www.mulesoft.org/schema/mule/ldap |
|---|---|
| Schema Location | http://www.mulesoft.org/schema/mule/ldap/current/mule-ldap.xsd (View Schema) |
| Schema Version | 3.3 |
| Minimum Mule Version | 3.2.0 |
The LDAP Connector will allow to connect to any LDAP server and perform every LDAP operation:
| URL |
The connection URL to the LDAP server. LDAP connection URLs have the following syntax: ldap[s]://hostname:port/base_dn
|
| Type |
The implementation of the connection to be used. Right now the only available implementation is JNDI, though any other
implementation can be used (For example using Novell libraries). If you want to create your own implementation you should
extend the class LDAPConnection
|
| Initial Pool Size | The string representation of an integer that represents the number of connections per connection identity to create when initially creating a connection for the identity. To disable pooling, just set this value to 0 (zero). |
| Max Pool Size | The string representation of an integer that represents the maximum number of connections per connection identity that can be maintained concurrently. |
| Pool Timeout | The string representation of an integer that represents the number of milliseconds that an idle connection may remain in the pool without being closed and removed from the pool. |
| Referral |
Constant that holds the name of the environment property for specifying how referrals encountered by the service provider are to be processed.
The value of the property is one of the following strings:
|
| Extended Configuration |
This is a Map instance holding extended configuration attributes that will be used in the Context environment.
Values configured here have less precedence than the other values that are allowed
in the module configuration.
Some examples of extended properties (key: value) are:
|
| Configuration | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Configure an instance of this module
| |||||||||||
| Transformers | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Transforms a
LDAPEntry to a String in LDIF representation (RFC 2849). | |||||||||||
Creates the Map representation of an
LDAPEntry. | |||||||||||
Creates a
LDAPEntry from its Map representation. | |||||||||||
| Message Processors | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Creates a new
LDAPEntry in the LDAP server. | |||||||||||
Creates a new entry in the LDAP server from a Map representation.
| |||||||||||
Adds all the values for an attribute in an existing LDAP entry.
| |||||||||||
Adds a value for an attribute in an existing LDAP entry.
| |||||||||||
Performs an LDAP bind (login) operation.
| |||||||||||
Deletes the LDAP entry represented by the provided distinguished name.
| |||||||||||
Deletes all the values matching attributeValues of the attribute defined by attributeName.
| |||||||||||
Deletes the value matching attributeValue of the attribute defined by attributeName.
| |||||||||||
Checks whether a LDAP entry exists in the LDAP server or not.
| |||||||||||
Retrieves an entry from the LDAP server base on its distinguished name (DN).
| |||||||||||
Updates an existing
LDAPEntry in the LDAP server. | |||||||||||
Updates an existing entry in the LDAP server from a Map representation.
| |||||||||||
Updates (replaces) the value or values of the attribute defined by attributeName with the new values defined by
attributeValues.
| |||||||||||
Updates (replaces) the value or values of the attribute defined by attributeName with the new value defined by
attributeValue.
| |||||||||||
Performs a LDAP search and streams result to the rest of the flow.
| |||||||||||
Renames and existing LDAP entry (moves and entry from a DN to another one).
| |||||||||||
Performs a LDAP search returning a list with all the resulting LDAP entries.
| |||||||||||
Performs a LDAP search that is supposed to return a unique result.
| |||||||||||
To use the this module within a flow the namespace to the module must be included. The resulting flow will look similar to the following:
<mule xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ldap="http://www.mulesoft.org/schema/mule/ldap"
xsi:schemaLocation="
http://www.mulesoft.org/schema/mule/core
http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/ldap
http://www.mulesoft.org/schema/mule/ldap/current/mule-ldap.xsd">
<!-- here goes your flows and configuration elements -->
</mule>
This module is configured using the config element. This element must be placed outside of your flows and at the root of your Mule application. You can create as many configurations as you deem necessary as long as each carries its own name.
Each message processor, message source or transformer carries a config-ref attribute that allows the invoker to specify which configuration to use.
| Attributes | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Type | Name | Default Value | Description | Java Type | MIME Type | Encoding | Optional. Give a name to this configuration so it can be later referenced. | ||||
| Optional. This is a Map instance holding extended configuration attributes that will be used in the Context environment. | |||||||||||
| 1 | Optional. The string representation of an integer that represents the number of connections per connection identity to create when initially creating a connection for the identity. | ||||||||||
| 5 | Optional. The string representation of an integer that represents the maximum number of connections per connection identity that can be maintained concurrently. | ||||||||||
| 60000 | Optional. The string representation of an integer that represents the number of milliseconds that an idle connection may remain in the pool without being closed and removed from the pool. | ||||||||||
| IGNORE | Optional. Constant that holds the name of the environment property for specifying how referrals encountered by the service provider are to be processed (follow, ignore, throw). | ||||||||||
| JNDI | Optional. The implementation of the connection to be used. | ||||||||||
The connection URL to the LDAP server with the following syntax: ldap[s]://hostname:port/base_dn. |
|||||||||||
<!-- Case 1: Simple Bind (User/Password) --> <ldap:config name="ldapConf" url="ldap://localhost:389/" authDn="uid=admin,ou=people,dc=mulesoft,dc=org" authPassword="secret"/>
<!-- Case 2: Anonymous Bind --> <ldap:config name="ldapConf" url="ldap://localhost:389/" authentication="none" authDn="ANONYMOUS"/>
<!-- Case 3: Active Directory providing username@domain instead of DN --> <ldap:config name="ldapConf" url="ldap://dc1.company.com:389/" authDn="user@company.com" authPassword="secret"/>
This connector offers automatic connection management via the use of a connection pool. The pool will act a storage mechanism for all the connections that are in-use by the user of this connector.
Prior to execution of a processor, the connector will attempt to lookup an already established connection and if one doesn't exists it will create one. That lookup mechanism is done in the connection pool via the use of connection variables declared as keys.
The user of the connector can configure the pool by adding a connection-pooling-profile to the connector configuration like this:
<ldap:connection-pooling-profile maxActive="10" maxIdle="10"
exhaustedAction="WHEN_EXHAUSTED_GROW" maxWait="120" minEvictionMillis="60000" evictionCheckIntervalMillis="30000"/>
The following is a list of connection attributes, each connection attribute can be configured at the config element level or they can also be added to each processor. If they are used at the processor level they get the benefit of full expression resolution.
| Connection Attributes | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
| Optional. Specify which configuration to use. | |||||||||||
| The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
Reconnection Strategies specify how a connector behaves when its connection fails. You can control how Mule attempts to reconnect by specifying a number of criteria:
With a reconnection strategy, you can better control the behavior of a failed connection, by configuring it, for example, to re-attempt the connection only once every 15 minutes, and to give up after 30 attempts. You can also send an automatic notification to your IT administrator whenever this reconnection strategy goes into effect. You can even define a strategy that attempts to reconnect only during business hours. Such a setting can prove useful if your server is frequently shut down for nightly maintenance.
A reconnection strategy that allows the user to configure how many times a reconnection should be attempted and how long to wait between attempts.
<ldap:config>
<reconnect count="5" frequency="1000"/>
</ldap:config>
| Reconnect Attributes | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Name | Default Value | Description | |||||||||
| Optional. How often (in ms) to reconnect | |||||||||||
| Optional. How many reconnection attempts to make | |||||||||||
For more information about reconnection strategies in Mule, or even how to write your own custom reconnection strategy please check this section.
Creates a new LDAPEntry in the LDAP server. The entry should contain the distinguished name (DN), the objectClass
attributes that define its structure and at least a value for all the required attributes (required attributes depend on the
object classes assigned to the entry. You can refer to RFC 4519 for standard object classes and attributes.
<!-- Case 1: LDAPEntry object is in a session variable --> <ldap:add config-ref="ldapConfig"> <ldap:entry ref="#[header:session:entryToAdd]"/> </ldap:add>
<!-- Case 2: LDAPEntry object is in the payload --> <ldap:add config-ref="ldapConfig"/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| #[payload:] | Optional. The LDAPEntry that should be added. |
LDAPEntry | */* | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to add entries under any of the RDN (relative DN) that compose the entry DN. |
| InvalidAttributeException | If the structure of the entry is invalid (for example there are missing required attributes or it has attributes that are not part of any of the defined object classes) |
| NameAlreadyBoundException | If there is already an existing entry with the same DN in the LDAP server tree. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error creating the entry. |
Creates a new entry in the LDAP server from a Map representation. The distinguished name (DN) of the
entry is first obtained from the optional parameter dn and if this value is blank (null, empty string
or string with only space chars) then the DN should be a present in the entry map as a String value
under the key "dn" (see MAP_DN_KEY).
"dn" (see MAP_DN_KEY) and the value
a String representing the distinguished name (for example cn=andy,ou=people,dc=mulesoft,dc=org).<!-- Case 1: Reference an existing map object --> <ldap:add-from-map dn="uid=newuser,ou=people,dc=mulesoft,dc=org" config-ref="ldapConfig"> <ldap:entry ref="#[header:session:newUserMap]"/> </ldap:add-from-map>
<!-- Case 2: Reference an existing map object --> <ldap:add-from-map config-ref="ldapConfig"> <ldap:entry> <ldap:entry key="dn" value-ref="#[payload.getDn()]"/> <ldap:entry key="uid">newuser</ldap:entry> <ldap:entry key="sn">Doe</ldap:entry> <ldap:entry key="cn">John Doe</ldap:entry> </ldap:entry> </ldap:add-from-map>
<!-- Case 3: The map is in the payload and the DN is in the map --> <ldap:add-from-map/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| Optional. The primary value to use as DN of the entry. If not set, then the DN will be retrieved from the map representing the entry under the key dn. | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| #[payload:] | Optional. Map representation of the LDAP entry. | Map<String, Object> |
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to add entries under any of the RDN (relative DN) that compose the entry DN. |
| InvalidAttributeException | If the structure of the entry is invalid (for example there are missing required attributes or it has attributes that are not part of any of the defined object classes) |
| NameAlreadyBoundException | If there is already an existing entry with the same DN in the LDAP server tree. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error creating the entry (for example if the DN is not passed as an argument nor in the entry map). |
Adds all the values for an attribute in an existing LDAP entry. If the entry already contained a value (or values) for the given attributeName then these values will be added. The attribute should allow multiple values or an exception will be raised.
<ldap:add-multi-value-attribute config-ref="ldapConf" dn="#[map-payload:dn]" attributeName="#[map-payload:attributeName]"> <ldap:attribute-values ref="#[map-payload:attributeValues]" /> </ldap:add-multi-value-attribute>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The DN of the LDAP entry to modify | String | */* | UTF-8 | ||||||||
| The name of the attribute to add values to. | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| The values for the attribute | List<Object> |
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to update the entry. |
| NameNotFoundException | If there is no existing entry for the given DN. |
| InvalidAttributeException | If the attribute value is invalid or the entry already has the provided value. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error updating the entry. |
Adds a value for an attribute in an existing LDAP entry. If the entry already contained a value for the given attributeName then this value will be added (only if the attribute is multi value and there entry didn't have the value already).
If you want to add a value with a type different than String, then you can use the add-multi-value-attribute operation and define a one element list with the value.<ldap:add-single-value-attribute config-ref="ldapConf" dn="#[map-payload:dn]" attributeName="#[map-payload:attributeName]" attributeValue="#[map-payload:attributeValue]"/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The DN of the LDAP entry to modify | String | */* | UTF-8 | ||||||||
| The name of the attribute to add a value to. | String | */* | UTF-8 | ||||||||
| The value for the attribute | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to update the entry. |
| InvalidAttributeException | If the attribute value is invalid or the entry already has the provided value. |
| NameNotFoundException | If there is no existing entry for the given DN. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error updating the entry. |
Performs an LDAP bind (login) operation. After login there will be a LDAP connection pool ready to use for other operations using the authenticated user. If no values are provided to override authDn and authPassword then using this operation will just re-bind (re-authenticate) the user/password defined in the config element. If new values are provided for authDn and authPassword, then authentication will be performed.
<!-- Case 1: Using Config Credentials --> <ldap:bind config-ref="ldapConf"/>
<!-- Case 2: Using New Credentials --> <ldap:bind config-ref="ldapConf" authDn="uid=anotherUser,ou=people,dc=mulesoft,dc=org" authPassword="secret"/>
<!-- Case 3: Anonymous Bind --> <ldap:bind config-ref="ldapConf" authDn="ANONYMOUS" authentication="none"/>
<!-- Case 4: Using New Credentials provided in Mule Expressions --> <ldap:bind config-ref="ldapConf" authDn="#[payload.getDN()]" authPassword="#[payload.getPassword()]"/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to perform the lookup for its own LDAP entry. |
| NameNotFoundException | If base DN is invalid (for example it doesn't exist) |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error performing the login and posterior lookup. |
Deletes the LDAP entry represented by the provided distinguished name. The entry should not have child entries, in which case a
ContextNotEmptyException is thrown.
NameNotFoundException if any of the intermediate contexts do not exist.
<ldap:delete dn="uid=userToDelete,ou=people,dc=mulesoft,dc=org"/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| #[payload:] | Optional. The DN of the LDAP entry to delete | String | */* | UTF-8 | |||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to delete the entry. |
| NameNotFoundException | If an intermediate context does not exist. |
| ContextNotEmptyException | If the entry to delete has child entries. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error deleting the entry. |
Deletes all the values matching attributeValues of the attribute defined by attributeName. Values that are not present in the entry are ignored. If no values are specified, then the whole attribute is deleted from the entry.
<ldap:delete-multi-value-attribute config-ref="ldapConf" dn="#[map-payload:dn]" attributeName="#[map-payload:attributeName]"> <ldap:attribute-values ref="#[map-payload:attributeValues]" /> </ldap:delete-multi-value-attribute>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The DN of the LDAP entry to modify | String | */* | UTF-8 | ||||||||
| The name of the attribute to delete its values. | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| Optional. The values that should be deleted. | List<Object> |
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to update the entry. |
| NameNotFoundException | If there is no existing entry for the given DN. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error updating the entry. |
Deletes the value matching attributeValue of the attribute defined by attributeName. If the entry didn't have the value, then the entry stays the same. If no value is specified, then the whole attribute is deleted from the entry.
If you want to delete a value with a type different than String, then you can use the delete-multi-value-attribute operation and define a one element list with the value.<ldap:delete-single-value-attribute config-ref="ldapConf" dn="#[map-payload:dn]" attributeName="#[map-payload:attributeName]" attributeValue="#[map-payload:attributeValue]"/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The DN of the LDAP entry to modify | String | */* | UTF-8 | ||||||||
| The name of the attribute to delete its value. | String | */* | UTF-8 | ||||||||
| Optional. The value that should be deleted. | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to update the entry. |
| NameNotFoundException | If there is no existing entry for the given DN. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error updating the entry. |
Checks whether a LDAP entry exists in the LDAP server or not.
<ldap:exists dn="ou=people, dc=domain, dc=org"/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The DN of the LDAP entry that will be retrieved. | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Return Type | Description |
|---|---|
| boolean | true if the LDAP entry represented by dn exists or false if not |
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to perform the lookup for the given DN. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| NameNotFoundException | Only in case throwException is true and the LDAP entry does not exist. |
| Exception | In case there is any other error checking for entry existence. |
Retrieves an entry from the LDAP server base on its distinguished name (DN). DNs are the unique identifiers of an LDAP entry, so this method will perform a search based on this ID and so return a single entry as result or throw an exception if the DN is invalid or inexistent.
Use this operation oversearchOne(String, String, List, SearchScope, int, long, boolean) when you know the DN of the object you want to
retrieve.
<!-- Case 1: Returning all attributes of the entry -->
<ldap:lookup dn="uid=aUser,ou=people,dc=mulesoft,dc=org"/><!-- Case 2: Returning only the attributes defined in the list provided with an expression -->
<ldap:lookup dn="#[header:dn]">
<ldap:attributes ref="#[header:attributes]" />
</ldap:lookup><!-- Case 3: Returning only the attributes defined in the list provided in the XML config -->
<ldap:lookup dn="#[header:dn]">
<ldap:attributes>
<ldap:attribute>uid</ldap:attribute>
<ldap:attribute>mail</ldap:attribute>
<ldap:attribute>cn</ldap:attribute>
</ldap:attributes>
</ldap:lookup>| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The DN of the LDAP entry that will be retrieved. | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| Optional. A list of the attributes that should be returned in the result. If the attributes list is empty or null, then by default all LDAP entry attributes are returned. | List<String> |
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to perform the lookup for the given DN. |
| NameNotFoundException | If base DN is invalid (for example it doesn't exist) |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error performing the lookup. |
Updates an existing LDAPEntry in the LDAP server. The entry should contain an existing distinguished name (DN), the objectClass
attributes that define its structure and at least a value for all the required attributes (required attributes depend on the
object classes assigned to the entry. You can refer to RFC 4519 for standard object classes and attributes.
dn: cn=entry,ou=group,dc=company,dc=org
cn: entry
attr1: Value1
attr2: Value2
multi1: Value3
multi1: Value4
objectclass: top
objectclass: myentry
dn: cn=entry,ou=group,dc=company,dc=org
attr1: NewValue
attr3: NewAttributeValue
dn: cn=entry,ou=group,dc=company,dc=org
cn: entry
attr1: NewValue
attr2: Value2
multi1: Value3
multi1: Value4
attr3: NewAttributeValue
objectclass: top
objectclass: myentry
<!-- Case 1: LDAP entry is in the payload --> <ldap:modify config-ref="ldapConfig"/>
<!-- Case 2: LDAP entry is in a session variable --> <ldap:modify config-ref="ldapConfig"> <ldap:entry ref="#[header:session:entryToModify]"/> </ldap:modify>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| #[payload:] | Optional. The LDAPEntry that should be updated. |
LDAPEntry | */* | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to update entries under any of the RDN (relative DN) that compose the entry DN. |
| InvalidAttributeException | If the structure of the entry is invalid (for example there are missing required attributes or it has attributes that are not part of any of the defined object classes) |
| NameNotFoundException | If there is no existing entry with the same DN in the LDAP server tree. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error updating the entry. |
Updates an existing entry in the LDAP server from a Map representation. The distinguished name (DN) of the
entry is first obtained from the optional parameter dn and if this value is blank (null, empty string
or string with only space chars) then the DN should be a present in the entry map as a String value
under the key "dn" (see MAP_DN_KEY).
dn: cn=entry,ou=group,dc=company,dc=org
cn: entry
attr1: Value1
attr2: Value2
multi1: Value3
multi1: Value4
objectclass: top
objectclass: myentry
dn: cn=entry,ou=group,dc=company,dc=org
attr1: NewValue
attr3: NewAttributeValue
dn: cn=entry,ou=group,dc=company,dc=org
cn: entry
attr1: NewValue
attr2: Value2
multi1: Value3
multi1: Value4
attr3: NewAttributeValue
objectclass: top
objectclass: myentry
In order to represent a LDAP entry as a map, you should consider the following rules for the map key/value pair:
"dn" (see MAP_DN_KEY) and the value
a String representing the distinguished name (for example cn=andy,ou=people,dc=mulesoft,dc=org).<!-- Case 1: Reference an existing map object --> <ldap:modify-from-map dn="uid=user,ou=people,dc=mulesoft,dc=org" config-ref="ldapConfig"> <ldap:entry ref="#[header:session:ldapUserMap]"/> </ldap:modify-from-map>
<!-- Case 2: Reference an existing map object --> <ldap:modify-from-map config-ref="ldapConfig"> <ldap:entry> <ldap:entry key="dn" value-ref="#[payload.getDn()]"/> <ldap:entry key="uid">user</ldap:entry> <ldap:entry key="sn">Doe</ldap:entry> <ldap:entry key="cn">John Doe</ldap:entry> </ldap:entry> </ldap:modify-from-map>
<!-- Case 3: The map is in the payload and the DN is in the map --> <ldap:modify-from-map/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| Optional. The primary value to use as DN of the entry. If not set, then the DN will be retrieved from the map representing the entry under the key dn. | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| #[payload:] | Optional. Map representation of the LDAP entry. | Map<String, Object> |
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to update entries under any of the RDN (relative DN) that compose the entry DN. |
| InvalidAttributeException | If the structure of the entry is invalid (for example there are missing required attributes or it has attributes that are not part of any of the defined object classes) |
| NameNotFoundException | If there is no existing entry with the same DN in the LDAP server tree. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error updating the entry (for example if the DN is not passed as an argument nor in the entry map). |
Updates (replaces) the value or values of the attribute defined by attributeName with the new values defined by attributeValues. If the attribute was not present in the entry, then the value is added.
<ldap:modify-multi-value-attribute config-ref="ldapConf" dn="#[map-payload:dn]" attributeName="#[map-payload:attributeName]"> <ldap:attribute-values ref="#[map-payload:attributeValues]" /> </ldap:modify-multi-value-attribute>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The DN of the LDAP entry to modify | String | */* | UTF-8 | ||||||||
| The name of the attribute to update its values. | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| The new values for the attribute | List<Object> |
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to update the entry. |
| NameNotFoundException | If there is no existing entry for the given DN. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error updating the entry. |
Updates (replaces) the value or values of the attribute defined by attributeName with the new value defined by attributeValue. If the attribute was not present in the entry, then the value is added.
If you want to update a value with a type different than String, then you can use the update-multi-value-attribute operation and define a one element list with the value.<ldap:modify-single-value-attribute config-ref="ldapConf" dn="#[map-payload:dn]" attributeName="#[map-payload:attributeName]" attributeValue="#[map-payload:attributeValue]"/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The DN of the LDAP entry to modify | String | */* | UTF-8 | ||||||||
| The name of the attribute to update its value. | String | */* | UTF-8 | ||||||||
| The new value for the attribute | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to update the entry. |
| NameNotFoundException | If there is no existing entry for the given DN. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error updating the entry. |
Performs a LDAP search and streams result to the rest of the flow. This means that instead of returning a list with all results it partitions the LDAP search result into pages (individual entry if resultPageSize is 1) or lists of size resultPageSize.
For queries returning large results it is recommended to use pagination (not all LDAP servers support this or are configured to support it). For that you need to provide a page size value that should be less or equal than max results (count limit). If you are getting a Size Limit Exceeded exception message then you should check that the authenticated user has enough privileges or the LDAP server is not limited by configuration.<!-- Case 1: Paging control to retrieve pages of 100 entries from the LDAP server returning one entry at a time -->
<ldap:paged-result-search baseDn="ou=people,dc=mulesoft,dc=org" filter="(objectClass=person)" scope="SUB_TREE" pageSize="100" resultPageSize="1"/><!-- Case 2: Return lists of 100 LDAP entries -->
<ldap:paged-result-search baseDn="ou=people,dc=mulesoft,dc=org" filter="(objectClass=person)" scope="SUB_TREE" resultPageSize="100">
<ldap:attributes>
<ldap:attribute>uid</ldap:attribute>
<ldap:attribute>cn</ldap:attribute>
</ldap:attributes>
</ldap:paged-result-search>| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The base DN of the LDAP search. | String | */* | UTF-8 | ||||||||
A valid LDAP filter. The LDAP connector supports LDAP search filters as defined in RFC 2254. Some examples are:
|
String | */* | UTF-8 | ||||||||
| ONE_LEVEL | Optional. The scope of the search. Valid attributes are:
|
SearchScope | */* | ||||||||
| 0 | Optional. Search timeout in milliseconds. If the value is 0, this means to wait indefinitely. | int | */* | ||||||||
| 0 | Optional. The maximum number of entries that will be returned as a result of the search. 0 indicates that all entries will be returned. | long | */* | ||||||||
| false | Optional. Enables/disables returning objects returned as part of the result. If disabled, only the name and class of the object is returned. If enabled, the object will be returned. | boolean | */* | ||||||||
| 0 | Optional. If the LDAP server supports paging results set in this attribute the size of the page. If the pageSize is less or equals than 0, then paging will be disabled. | int | */* | ||||||||
| 1 | Optional. The size of the list this operation streams. If this value is less than 1, then it will be considered that the page size is 1. | int | */* | ||||||||
| 0 | Optional. Considering the results are paged in resultPageSize pages, then this is the first page that should be retrieved. | int | */* | ||||||||
| 0 | Optional. How many pages of size resultPageSize starting at resultOffset should be returned/processed. If zero (0) or less or if resultPageCount is greater than the total amount of pages, then all pages are returned. | int | */* | ||||||||
| Optional. Name of the LDAP attribute used to sort results. | String | */* | UTF-8 | ||||||||
| Used to stream results | SourceCallback | */* | |||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| Optional. A list of the attributes that should be returned in the result. If the attributes list is empty or null, then by default all LDAP entry attributes are returned. | List<String> |
| Return Type | Description |
|---|---|
| List<Object> | A list with individual results of executing the rest of flow with each results page. |
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to perform the search under the given base DN. |
| NameNotFoundException | If base DN is invalid (for example it doesn't exist) |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error performing the search. |
Renames and existing LDAP entry (moves and entry from a DN to another one).
<ldap:rename oldDn="cn=origin, dc=domain, dc=org" newDn="cn=destination, dc=domain, dc=org" />
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| DN of the existing entry that will be renamed. | String | */* | UTF-8 | ||||||||
| Destination DN | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Payload Class | Description |
|---|---|
| NameAlreadyBoundException | If there is already an existing entry with the same DN as newDn. |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error deleting the entry. |
Performs a LDAP search returning a list with all the resulting LDAP entries.
For queries returning large results it is recommended to use pagination (not all LDAP servers support this or are configured to support it). For that you need to provide a page size value that should be less or equal than max results (count limit). If you are getting a Sizelimit Exceeded exception then you should check that the authenticated user has enough privileges or the LDAP server is not limited by configuration.<!-- Case 1: Simple SUB_TREE search -->
<ldap:search baseDn="ou=people,dc=mulesoft,dc=org" filter="(&(objectClass=person)(sn=Doe))" scope="SUB_TREE"/><!-- Case 2: Search that will return the username and fullname of at most 100 results -->
<ldap:search baseDn="ou=people,dc=mulesoft,dc=org" filter="(objectClass=person)" scope="SUB_TREE" maxResults="100">
<ldap:attributes>
<ldap:attribute>uid</ldap:attribute>
<ldap:attribute>cn</ldap:attribute>
</ldap:attributes>
</ldap:search><!-- Case 3: Search that receives all attributes from Mule Expressions -->
<ldap:search baseDn="#[header:baseDn]"
filter="#[header:filter]"
scope="#[header:scope]"
timeout="#[header:timeout]"
maxResults="#[header:maxResults]"
returnObject="#[returnObject]">
<ldap:attributes ref="#[header:attributes]" />
</ldap:search>| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The base DN of the LDAP search. | String | */* | UTF-8 | ||||||||
A valid LDAP filter. The LDAP connector supports LDAP search filters as defined in RFC 2254. Some examples are:
|
String | */* | UTF-8 | ||||||||
| ONE_LEVEL | Optional. The scope of the search. Valid attributes are:
|
SearchScope | */* | ||||||||
| 0 | Optional. Search timeout in milliseconds. If the value is 0, this means to wait indefinitely. | int | */* | ||||||||
| 0 | Optional. The maximum number of entries that will be returned as a result of the search. 0 indicates that all entries will be returned. | long | */* | ||||||||
| false | Optional. Enables/disables returning objects returned as part of the result. If disabled, only the name and class of the object is returned. If enabled, the object will be returned. | boolean | */* | ||||||||
| 0 | Optional. If the LDAP server supports paging results set in this attribute the size of the page. If the pageSize is less or equals than 0, then paging will be disabled. | int | */* | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| Optional. A list of the attributes that should be returned in the result. If the attributes list is empty or null, then by default all LDAP entry attributes are returned. | List<String> |
| Return Type | Description |
|---|---|
| List<LDAPEntry> | A java.util.List of LDAPEntry objects with the results of the search. If the search throws no results, then this is an empty list. |
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to perform the search under the given base DN. |
| NameNotFoundException | If base DN is invalid (for example it doesn't exist) |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error performing the search. |
Performs a LDAP search that is supposed to return a unique result. If the search returns more than one result, then a warn log message is generated and the first element of the result is returned.
Use this operation overlookup(String, List) when you know don't know the DN of the entry you need
to retrieve but you have a set of attributes that you know should return a single entry (for example an email address)
<!-- Case 1: Simple SUB_TREE search returning the first result -->
<ldap:search baseDn="ou=people,dc=mulesoft,dc=org" filter="(&(objectClass=person)(mail=jdoe@mail.com))" scope="SUB_TREE"/>| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The base DN of the LDAP search. | String | */* | UTF-8 | ||||||||
A valid LDAP filter. The LDAP connector supports LDAP search filters as defined in RFC 2254. Some examples are:
|
String | */* | UTF-8 | ||||||||
| ONE_LEVEL | Optional. The scope of the search. Valid attributes are:
|
SearchScope | */* | ||||||||
| 0 | Optional. Search timeout in milliseconds. If the value is 0, this means to wait indefinitely. | int | */* | ||||||||
| 0 | Optional. The maximum number of entries that will be returned as a result of the search. 0 indicates that all entries will be returned. | long | */* | ||||||||
| false | Optional. Enables/disables returning objects returned as part of the result. If disabled, only the name and class of the object is returned. If enabled, the object will be returned. | boolean | */* | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| Optional. A list of the attributes that should be returned in the result. If the attributes list is empty or null, then by default all LDAP entry attributes are returned. | List<String> |
| Return Type | Description |
|---|---|
| LDAPEntry | A LDAPEntry with the first element of the search result or null if there are no results. |
| Payload Class | Description |
|---|---|
| NoPermissionException | If the current binded user has no permissions to perform the search under the given base DN. |
| NameNotFoundException | If base DN is invalid (for example it doesn't exist) |
| LDAPException | In case there is any other exception, mainly related to connectivity problems or referrals. |
| Exception | In case there is any other error performing the search. |
Transforms a LDAPEntry to a String in LDIF representation (RFC 2849).
<ldap:ldap-entry-to-ldif/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
The LDAPEntry to transform to LDIF. |
LDAPEntry | */* | |||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Return Type | Description |
|---|---|
| String | The LDIF representation of the entry. |
Creates the Map representation of an LDAPEntry.
"dn" (see MAP_DN_KEY).byte[]).byte[]).<ldap:ldap-entry-to-map/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
The LDAPEntry to transform to map. |
LDAPEntry | */* | |||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Return Type | Description |
|---|---|
| Map<String, Object> | The Map representation of the entry. |
Creates a LDAPEntry from its Map representation. This transformer won't check that the entry is valid. The only validation
that is performed is the presence of the distinguished name.
"dn" (see MAP_DN_KEY) and the value a String representing the distinguished name
(for example cn=andy,ou=people,dc=mulesoft,dc=org).<ldap:map-to-ldap-entry/>
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. The DN (distinguished name) of the user (for example: uid=user,ou=people,dc=mulesoft,dc=org). If using Microsoft Active Directory, instead of the DN, you can provide the user@domain (for example: user@mulesoft.org) | String | */* | UTF-8 | ||||||||
| Optional. The password of the user | String | */* | UTF-8 | ||||||||
Optional. Specifies the authentication mechanism to use. For the Sun LDAP service provider, this can be one of the following strings:
|
String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| Map representation of the LDAP entry. | Map<String, Object> |
| Payload Class | Description |
|---|---|
| Exception | If the map entry is invalid (for example, it doesn't contain the DN) |