SetPassword in LDAP

Sets the password in an LDAP target system.

A set-password workflow propagates a password from DirX Identity to the accounts of one connected system. It is triggered when a user or an administrator changes a password in the Identity Store, or when the password synchronization workflows distribute a password change. The workflow reads the password over the setPassword channel of the Identity Store port and writes it through the target system port; it does not synchronize any other account attribute.

Because a set-password workflow carries credentials, its ports decrypt the password attribute explicitly through the decrypt.attribute parameter, and failures are reported by a dedicated password notification connector instead of the regular notification connector.

SetPassword in LDAP is the password workflow for connected systems of type LDAP. You use it when password changes must be sent to the LDAP target system without running the broader account provisioning workflow.

The sample listens in the target-system context defined by tscluster localhost and tsresource My-Company1. The workflow parameter topicprefix shows that password requests are routed with the prefix dxm.setPasswordRequest..

The workflows in this reference are delivered as factory data and are loaded into the Connectivity configuration database during the initial configuration. They are samples: use the Identity Manager to copy a workflow into your own scenario and adapt the copy. Do not change the delivered objects, because a product update can replace them.

At a Glance

Name

SetPassword in LDAP

Category

Target Realtime / LDAP

Technology

Java-based real-time workflow

LDAP object class

dxmIDMWorkflowDefinition

Workflow type

ProvisionTS

Connected system / controller type

LDAP

Configuration wizard

wf-Provisioning-SetPassword.xml

Active in the factory data

FALSE

Factory data version

8.0

Factory data path

Workflows/Default/Target Realtime/LDAP/SetPassword in LDAP

Prerequisites

  • You need a connected directory of type LDAP with bind profile Admin.

  • You need a target system of type LDAP in the Identity Store that matches tscluster localhost and tsresource My-Company1.

  • The Java-based Server (IdS-J) must reach the Identity Store through Domain_Admin and the LDAP connected directory through the TS port.

  • If you use password notifications, configure the notify port that uses NotifyMailPwdConnector.

Workflow and Activities

Activity Type Component description Description Ports

error

error

provisioningActivity

Error Activity

Message

SetPassword

ProvisionTS

provisioningActivity

setPassword activitity to update passwords in an LDAP target system

IdentityDomain, notify, ts

Ports

Activity Port Component description Connector Connected directory Bind profile SSL

error

Message

errorPort

ErrorNotifyMailConnector

-

-

not set

SetPassword

IdentityDomain

provisioningPort

LdapConnector

Identity Store

Domain_Admin

not set

SetPassword

notify

notificationPort

NotifyMailPwdConnector

-

-

not set

SetPassword

TS

provisioningPort

LdapConnector

LDAP

Admin

not set

Channels

Table 1. Channels of port IdentityDomain (activity SetPassword)
Channel Description Reference type Delta type

accounts

Channel for accounts

OneToOne

SearchAttributes

groups

Channel for groups

OneToOne

SearchAttributes

members

Channel for members

OneToOne

SearchAttributes

Table 2. Channels of port TS (activity SetPassword)
Channel Description Reference type Delta type

accounts

Channel for accounts

OneToOne

SearchAttributes

groups

Channel for groups

OneToOne

SearchAttributes

members

Channel for members

OneToOne

SearchAttributes

setPassword

Channel for setting a password

OneToOne

SearchAttributes

Filters

Port Filter Description Sequence

TS

CryptFilter

decryption

1

Configuration Parameters

Table 3. Workflow parameters of SetPassword in LDAP
Parameter Default value

timeout

P0Y0M4DT0H0M0S

topicprefix

dxm.setPasswordRequest.

tscluster

localhost

tsresource

My-Company1

Table 4. Parameters of activity error
Parameter Default value

resourcefamily

Mail

retrylimit

3

timeout

P0Y0M1DT0H0M0S

waitbeforeretry

P0Y0M0DT2H0M0S

Table 5. Parameters of port Message (activity error)
Parameter Default value

decrypt.attribute

dxmPassword

Table 6. Parameters of activity SetPassword
Parameter Default value

resourcefamily

LDAP

retrylimit

3

timeout

P0Y0M1DT0H0M0S

waitbeforeretry

P0Y0M0DT0H30M0S

Table 7. Parameters of port IdentityDomain (activity SetPassword)
Parameter Default value

decrypt.attribute

userPassword

Table 8. Parameters of port notify (activity SetPassword)
Parameter Default value

decrypt.attribute

userPassword

Table 9. Parameters of port TS (activity SetPassword)
Parameter Default value

decrypt.attribute

userPassword

A Java-based real-time workflow runs as a permanently loaded configuration in the Java-based Server (IdS-J). It is triggered by a request or an event rather than by a schedule. Each workflow consists of activities; an activity opens one port per system it talks to, and each port uses a connector to reach that system.

Most provisioning workflows contain a join activity that performs the actual work and an error activity that receives requests which still fail after all retries and sends a notification about them. The retrylimit, waitbeforeretry and timeout parameters of an activity control how often and how long a failed request is retried before it is handed to the error activity.

The event port publishes change events over JMS, and the notify port sends e-mail notifications. Neither port is bound to a connected directory.

The SetPassword activity reads the affected account state from IdentityDomain and writes the password update to the LDAP connected directory through TS. The target-side channel is setPassword, and CryptFilter decrypts the protected password value before the connector sends it to the directory.

This workflow has no event port because it focuses on password handling only. The notify port uses NotifyMailPwdConnector for password-related notifications. If processing still fails after three retries with a 30-minute wait, the workflow routes the request to error, which sends the error notification through Message.

Operation

  1. A password request for the target-system context of SetPassword in LDAP is routed with the prefix dxm.setPasswordRequest..

  2. The Java-based Server (IdS-J) passes the request to SetPassword.

  3. The IdentityDomain port reads the affected entry from the Identity Store.

  4. The TS port writes the new password to the LDAP connected directory through setPassword; CryptFilter decrypts the protected value before the connector uses it.

  5. The notify port sends the configured password notification.

  6. Requests that fail permanently are handed to error, which reports them by e-mail.

The workflow is delivered inactive (dxmActive is FALSE). Copy it into your own scenario, connect the copy to your connected directory and activate the copy.