Extending Password Synchronization Workflows

This chapter describes how to create Java-based extensions for password synchronization workflows. This comprises currently only the User Password Event Manager workflow. For information on extending event-based processing workflows, see the next chapter.

You can extend the User Password Event Manager workflow via user hooks.

Prerequisites

We assume that you are familiar with Java and with building Java projects and that Ant and a Java compiler are installed and in your path.

Documentation

To understand this issue, we recommend that you read the following chapters:

DirX Identity Connectivity Administration Guide

Managing Passwords

You should read this chapter as an introduction.

DirX Identity Application Development Guide

Understanding the Default Application Workflow Technology -> Understanding Java-based Workflows

Read the entire chapter, especially these sections:

Java-based Workflow Architecture - provides overall information for understanding Java-based workflow features and architecture.

Customizing Password Synchronization Workflows - explains in detail how to customize password synchronization workflow, namely usage of user hooks:

Using User Hooks - explains how to use user hooks for customization.

JavaDoc

For a detailed description of the relevant Java interface, see the Java documentation in the folders Documentation/DirXIdentity/ConnFrameWork and Documentation/DirXIdentity/RealtimeWorkflows on the product DVD.

You can also find information about reading the configuration and working with requests and responses in this guide.

Most of the classes reflecting SPML/DSML are generated from the SPML schemata. Therefore, the inline java documentation of these classes does not help. For understanding them, please read the XML schemata and check request and response samples.

Writing a User Hook

For samples of user hooks, review the contents of the Additions/RealtimeWorkflows/samples folder on the product DVD.

A simple implementation of the password user hook IPasswordUserHook is available as an abstract Java class AbstractPasswordUserHook.java and is contained in the sub-folder userhooks/common. It should be used as a common super class for custom implementation of password user hook in order to minimize implementation effort.