SetPassword

Sets the password of a Login entry in a Medico connected 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 sets the password for Login entries in connected systems of type Medico. You use it when a password change stored in the Identity Store must be written to the Medico environment identified by tsresource medico in cluster medico.

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

Category

Target Realtime / Medico

Technology

Java-based real-time workflow

LDAP object class

dxmIDMWorkflowDefinition

Workflow type

ProvisionTS

Connected system / controller type

Medico

Configuration wizard

wf-Provisioning-SetPassword.xml

Active in the factory data

FALSE

Factory data version

8.0

Factory data path

Workflows/Default/Target Realtime/Medico/SetPassword

Prerequisites

  • A connected directory of type Medico that uses Spmlv1SoapConnector2TS, with the bind profile Dummy set so the workflow can reach the Medico endpoint and change passwords.

  • A target system of type Medico in the Identity Store that is linked to that connected directory and contains the Login entries that you want to update.

  • The Java-based Server that runs the workflow must be able to reach both the Identity Store and the Medico endpoint; SSL is not enabled on the TS port in the factory data.

Workflow and Activities

Activity Type Component description Description Ports

error

error

provisioningActivity

Error Activity

Message

join

ProvisionTS

provisioningActivity

Join activity for the provision-to-TS workflow

IdentityDomain, notify, ts

Ports

Activity Port Component description Connector Connected directory Bind profile SSL

error

Message

errorPort

ErrorNotifyMailConnector

-

-

not set

join

IdentityDomain

provisioningPort

LdapConnector

Identity Store

Domain_Admin

not set

join

notify

notificationPort

NotifyMailPwdConnector

-

-

not set

join

TS

provisioningPort

Spmlv1SoapConnector2TS

Medico

Dummy

not set

Channels

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

group

Channel for groups

not set

SearchAttributes

login

Channel for accounts

not set

SearchAttributes

person

Channel for accounts

ManyToOne

SearchAttributes

profile

Channel for profiles

not set

SearchAttributes

role

Channel for roles

not set

SearchAttributes

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

groups

Channel for medico groups

not set

not set

logins

Channel for accounts of type login

not set

not set

persons

Channel for accounts of type person

ManyToOne

not set

profiles

Channel for accounts of type person

not set

not set

roles

Channel for accounts of type person

not set

not set

setPassword

Channel for setting a password

ManyToOne

not set

Filters

Port Filter Description Sequence

TS

MedicoCryptFilter

encrypt pawo

1

Configuration Parameters

Table 3. Workflow parameters of SetPassword
Parameter Default value

timeout

P0Y0M4DT0H0M0S

tscluster

medico

tsresource

medico

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 join
Parameter Default value

resourcefamily

Medico

retrylimit

3

timeout

P0Y0M1DT0H0M0S

waitbeforeretry

P0Y0M0DT0H30M0S

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

decrypt.attribute

userPassword

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

decrypt.attribute

userPassword

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

decrypt.attribute

userPassword

ssltoidsc

FALSE

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 join activity handles the password request. Its IdentityDomain port reads the affected Medico objects from the login, person, group, profile, and role channels in the Identity Store, and its TS port writes the resulting state to Medico on the logins, persons, groups, profiles, roles, and setPassword channels. MedicoCryptFilter encrypts the password value as pawo before the request leaves the workflow.

A request that fails is retried up to 3 times (retrylimit) with 30 minutes between the attempts (waitbeforeretry). If it still fails, the error activity takes it over and sends a notification through the Message port; the workflow parameter timeout gives a request 4 days before it is discarded.

Operation

  1. A password change request marks the affected Medico login in the target system subtree of the Identity Store.

  2. The Java-based Server passes the request to the join activity of this workflow.

  3. The IdentityDomain port reads the affected entry and its related Medico objects from the Identity Store.

  4. The TS port sends the password change to Medico on the setPassword channel and applies any accompanying object updates on the matching object channels.

  5. The result is written back into the Identity Store so that the request state reflects what happened in Medico.

  6. The notify port sends the configured password notification.

  7. Requests that fail permanently are handed to the error activity, 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.