Ident_ESSOExtranetPortal_Realtime

Sample workflow to provision an Evidian Esso/Active Directory domain from a DirX Identity target system.

A provisioning workflow transfers the account, group and membership changes that DirX Identity has calculated for a target system into the connected system, and acknowledges the result back into the Identity Store. It is the workflow that executes what privilege resolution has decided: when a user gains or loses a privilege, the resolution writes the resulting account or membership change into the target system subtree of the Identity Store, and this workflow applies that change to the connected system.

The workflow processes single requests as they arrive, so it reflects changes with little delay. Use the corresponding validation workflow to detect changes that were made in the connected system outside of DirX Identity.

Ident_ESSOExtranetPortal_Realtime is the provisioning workflow for connected systems of type LDAP that represent an Evidian ESSO/Active Directory Extranet Portal. It keeps the ESSO portal’s account directory in step with the Identity Store target system subtree for the Extranet Portal. The EvidianEssoConnector on the TS port reaches the Evidian ESSO directory, and the CryptFilter on the same port decrypts the secret password attribute before it is written.

The workflow parameter assocts identifies the associated target system subtree (cn=Extranet Portal,cn=TargetSystems,cn=My-Company), which the join activity uses to locate the correct accounts in the Identity Store.

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

Ident_ESSOExtranetPortal_Realtime

Category

ESSO Provisioning

Technology

Java-based real-time workflow

LDAP object class

dxmIDMWorkflowDefinition

Workflow type

ProvisionTS

Connected system / controller type

LDAP

Configuration wizard

LDAP-ESSO

Active in the factory data

FALSE

Factory data version

8.0

Factory data path

Workflows/Default/ESSO Provisioning/Ident_ESSOExtranetPortal_Realtime

Prerequisites

  • A connected directory of type LDAP that points to the Evidian ESSO directory, named Evidian Esso, with the bind profile ADSadmin set to an account that may create, modify and delete entries in the portal’s account container.

  • SSL is switched on for the TS port (TRUE), so the Evidian ESSO server must offer LDAPS and its certificate must be trusted by the Java-based Server.

  • A target system of type LDAP representing the Extranet Portal in the Identity Store, linked to the Evidian Esso connected directory, with a completed initial load.

  • The Identity Store must be accessible through the Identity Store connected directory using the bind profile Domain_Admin.

Workflow and Activities

Activity Type Component description Description Ports

error

error

provisioningActivity

Error Activity

Message

join

ProvisionTS

provisioningActivity

Join activity for the provision-to-ADS workflow

event, IdentityDomain, notify, ts

Ports

Activity Port Component description Connector Connected directory Bind profile SSL

error

Message

errorPort

ErrorNotifyMailConnector

-

-

not set

join

event

notificationPort

JmsConnector

-

-

not set

join

IdentityDomain

provisioningPort

LdapConnector

Identity Store

Domain_Admin

not set

join

notify

notificationPort

NotifyMailConnector

-

-

not set

join

TS

provisioningPort

EvidianEssoConnector

Evidian Esso

ADSadmin

TRUE

Channels

Table 1. Channels of port event (activity join)
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

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

accountsesso

Channel for accounts

OneToOne

SearchAttributes

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

accounts

Channel for accounts

OneToOne

SearchAttributes

Filters

Port Filter Description Sequence

TS

CryptFilter

decryption

1

Configuration Parameters

Table 4. Workflow parameters of Ident_ESSOExtranetPortal_Realtime
Parameter Default value

assocts

cn=Extranet Portal,cn=TargetSystems,cn=My-Company

timeout

P0Y0M0DT1H0M0S

Table 5. Parameters of activity error
Parameter Default value

resourcefamily

LDAP

retrylimit

3

timeout

P0Y0M1DT0H0M0S

waitbeforeretry

P0Y0M0DT2H0M0S

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

decrypt.attribute

dxmPassword

Table 7. Parameters of activity join
Parameter Default value

resourcefamily

EvidianESSO

retrylimit

3

timeout

P0Y0M0DT2H0M0S

waitbeforeretry

P0Y0M0DT0H20M0S

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

appid

event

decrypt.attribute

userPassword

tgtisjmsclient

false

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

decrypt.attribute

userPassword

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

decrypt.attribute

userPassword

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

decrypt.attribute

secret

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 does the provisioning work. Its IdentityDomain port reads the requested state from the Identity Store over the accountsesso channel, and its TS port writes that state into the Evidian ESSO directory over the accounts channel using the EvidianEssoConnector with the ADSadmin bind profile. The CryptFilter on the TS port decrypts the secret attribute before it is handed to the connector.

A request that fails is retried up to three times (retrylimit) with 20-minute waits (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 one hour before it is discarded. The event port publishes change events over JMS, and the notify port sends the configured e-mail notifications.

Operation

  1. Privilege resolution writes an account change into the Extranet Portal target system subtree of the Identity Store and marks it for provisioning.

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

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

  4. The TS port applies the change in the Evidian ESSO directory using the EvidianEssoConnector over the accounts channel; the CryptFilter decrypts the secret attribute before it reaches the connector.

  5. The result is written back into the Identity Store so that the target system entry reflects what happened in the Evidian ESSO directory.

  6. The event port publishes the change as a JMS event; the notify port sends the configured e-mail notifications.

  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 Evidian Esso connected directory, and activate the copy.