LDAP - Update Users Node
| Description | The LDAP - Update Users node updates an existing user entry in the LDAP directory. It allows you to modify user attributes by adding new values, replacing existing ones, or removing attributes. |
| Available in | Authentication, Admin, Self Service, API, Consent, Library, Custom, User Defined |
| Node Name | LDAP - Update Users |
LDAP Configuration
Connection Mode
Defines the connection protocol used to communicate with the LDAP server. Option available: - **ldap**: Standard (non-secure) connection (port 389). - **ldaps**: Secure connection over SSL/TLS (port 636). - **start-tls**: Connection starts as a standard LDAP connection (typically on port 389) and is then upgraded to a secure channel using TLS.Hostname
Specifies the **hostname** or **IP address** of the LDAP server.Port
Defines the port used to connect to the LDAP server. Typical values: - **389** for LDAP - **636** for LDAPSConnection Timeout
Specifies the maximum time (in seconds) to wait for a connection to the LDAP server. A value of 0 usually means **no timeout**.Admin user DN
The **Distinguished Name (DN)** of the administrative user used to perform the LDAP search operation.Admin user Password
The password associated with the **admin user DN**.Base DN
Defines the **base context (starting point)** in the LDAP directory where the user search will be performed.Search Scope
Defines the scope of the LDAP search: - **base**: Searches only the base DN - **one**: Searches one level under the base DN - **sub**: Searches the entire subtree under the base DNSearch Filter
Specifies the LDAP search filter used to locate the user. Example: `(uid={{username}})` The filter can include variables to dynamically match user input.Node Configuration
Attributes to Add
Defines the attributes and values to be added to the user entry. If the attribute already exists, the new values will be appended (depending on LDAP schema rules). Each value can be assigned a static value or **dynamically populated** using variables returned by previous nodes in the flow (e.g `{{form.username}}`). Rule are defined as: `LDAP attribute : value` Example: `mail: {{form.mail}}` `givenName: {{form.givenName}}` #### Attribute Manipulation It is possible to use a set of basic functions to manipulate values, see [Attribute Manipulation]({filename}/pages/io/io-nodes/io-node-types/common-configurations.md#attribute-manipulation).Attributes to Replace
Defines the attributes whose values should be replaced. Any existing value for the specified attributes will be overwritten with the new ones. Each value can be assigned a static value or **dynamically populated** using variables returned by previous nodes in the flow (e.g `{{form.username}}`). Rule are defined as: `LDAP attribute : value` Example: `mail: {{form.mail}}` `givenName: {{form.givenName}}` #### Attribute Manipulation It is possible to use a set of basic functions to manipulate values, see [Attribute Manipulation]({filename}/pages/io/io-nodes/io-node-types/common-configurations.md#attribute-manipulation).Attributes to Delete
Defines the attributes to be removed from the user entry. The specified attributes (or their values) will be deleted from the LDAP record. Each value can be assigned a static value or **dynamically populated** using variables returned by previous nodes in the flow (e.g `{{form.username}}`). Rule are defined as: `LDAP attribute : value` Example: `mail: {{form.mail}}` `givenName: {{form.givenName}}` #### Attribute Manipulation It is possible to use a set of basic functions to manipulate values, see [Attribute Manipulation]({filename}/pages/io/io-nodes/io-node-types/common-configurations.md#attribute-manipulation).Save in the Flow store
Save in the Flow store
Attributes generated or retrieved from the node can be saved **into a variable**. They can then be **reused by other nodes** in the flow by referencing them as `{{variable.attribute}}`. To do this you choose attributes that need to be stored in the variable, and in the flow store (All attributes exposed by the node are listed in a **multi-select dropdown**, allowing the user to choose **one or more** of them), then a **variable name** that can be **freely defined** by the user. There is also a flag to make the variable available to the **frontend**.Default Output Node
- Success
- Partial Success
- No User Found
- Failure