Samples Provided With IDM

This section lists the samples provided with IDM, with a high-level overview of each sample.

A number of samples are provided in the openidm/samples directory:

Getting Started

The Getting Started sample describes how to install and evaluate IDM.

(samples/getting-started)

Synchronize Data From a CSV File to IDM

This sample demonstrates one-way synchronization from an external resource to an IDM repository. The external resource in this case is a simple CSV file. User objects in that file are synchronized with the managed users in the IDM repository.

(samples/sync-with-csv)

One Way Synchronization From LDAP to IDM

This sample uses the generic LDAP connector to connect to an LDAP directory. The sample includes one mapping from the LDAP directory to the managed user repository, and demonstrates reconciliation from the external resource to the repository.

(samples/sync-with-ldap)

Two Way Synchronization Between LDAP and IDM

This sample uses the generic LDAP connector to connect to an LDAP directory. The sample includes two mappings - one from the LDAP directory to the managed user repository, and one in the opposite direction. The sample demonstrates reconciliation from the LDAP directory to the repository and implicit synchronization from the managed user repository to the LDAP directory.

(samples/sync-with-ldap-bidirectional)

Synchronize LDAP Groups

This sample uses the generic LDAP connector to connect to an LDAP directory. The sample builds on the previous sample by providing an additional mapping, from the LDAP groups object, to the managed groups object. The sample illustrates a new managed object type (groups) and shows how this object type is synchronized with group containers in LDAP.

(samples/sync-with-ldap-groups)

Synchronize LDAP Group Membership

This sample uses the generic LDAP connector to connect to an LDAP directory. The sample includes two mappings, one from the LDAP directory to the managed user repository, and one from the repository to the LDAP directory. The sample demonstrates synchronization of group membership, that is, how the value of the ldapGroups property in a managed user object is mapped to the corresponding user object in LDAP.

(samples/sync-with-ldap-group-membership)

Synchronize Data Between Two External Resources

This sample demonstrates synchronization between two external resources, routed through the IDM repository. The resources are named LDAP and AD and represent two separate LDAP directories. In the sample both resources are simulated with simple CSV files.

(samples/sync-two-external-resources)

Asynchronous Reconciliation Using a Workflow

This sample shows how you can use workflows to launch an asynchronous reconciliation operation.

(samples/sync-asynchronous)

LiveSync With an LDAP Server

This sample illustrates the liveSync mechanism that pushes changes from an external resource to the IDM repository. The sample uses an LDAP connector to connect to an LDAP directory, either ForgeRock Directory Services (DS) or Active Directory.

(samples/livesync-with-ad)

Synchronize Accounts With the Google Apps Connector

This sample uses the Google Apps Connector to create users and groups on an external Google system and to reconcile those accounts with the IDM managed user repository.

(samples/sync-with-google)

Synchronize Users Between Salesforce and IDM

This sample demonstrates how to create and update users in Salesforce, using the Salesforce Connector. The sample also shows synchronization of users between Salesforce and the IDM managed user repository.

(samples/sync-with-salesforce)

Synchronize Kerberos User Principals

This sample demonstrates how to use the scripted Kerberos connector to manage Kerberos user principals and to reconcile user principals with IDM managed user objects.

(samples/sync-with-kerberos)

Store Multiple Passwords For Managed Users

This sample demonstrates how to set up multiple passwords for managed users and how to synchronize separate passwords to different external resources. The sample includes two target LDAP servers, each with different password policy and encryption requirements. The sample also shows how to extend the password history policy to apply to multiple password fields.

(samples/multiple-passwords)

Link Multiple Accounts to a Single Identity

This sample illustrates how IDM addresses links from multiple accounts to one identity. The sample shows how you can create links between a single source account and multiple target accounts, using link qualifiers that enable one-to-many relationships in mappings and policies.

(samples/multi-account-linking)

Link Historical Accounts

This sample demonstrates the retention of inactive (historical) LDAP accounts that have been linked to a corresponding managed user account.

(samples/historical-account-linking)

Provision Users With Roles

This sample builds on the sample described in One Way Synchronization From LDAP to IDM, and demonstrates how attributes are provisioned to an external system (an LDAP directory), based on role membership.

(samples/provisioning-with-roles)

Provision Users With Workflow

The provisioning workflow sample demonstrates a typical use case of a workflow — provisioning new users. The sample demonstrates the use of the End User UI to allow users to complete a registration process.

(samples/provisioning-with-workflow)

Connect to DS With ScriptedREST

This sample uses the Groovy Connector Toolkit to implement a ScriptedREST connector that interacts with the DS REST API.

(samples/scripted-rest-with-dj)

Connect to a MySQL Database With ScriptedSQL

This sample uses the Groovy Connector Toolkit to implement a ScriptedSQL connector that interacts with an external MySQL database.

(samples/scripted-sql-with-mysql)

Connect to Active Directory With the PowerShell Connector

This sample uses the MS Active Directory PowerShell module to demonstrate how you can synchronize managed objects with a Microsoft Active Directory deployment. The sample provides a number of PowerShell scripts that enable you to perform basic CRUD (create, read, update, delete) operations on an Active Directory server.

(samples/scripted-powershell-with-ad)

Direct Audit Information To MySQL

This sample uses a ScriptedSQL implementation of the Groovy Connector Toolkit to direct audit information to a MySQL database.

(samples/audit-jdbc)

Direct Audit Information to a JMS Broker

This sample demonstrates how the JMS audit event handler can publish messages that comply with the Java(TM) Message Service Specification Final Release 1.1

(samples/audit-jms)

Synchronize Data Between MongoDB and IDM

This sample uses the Groovy Connector Toolkit to implement a scripted connector that interacts with a MongoDB Database. The connector can be used for provisioning MongoDB database users and roles from an IDM managed repository.

(samples/sync-with-mongodb)

Synchronize Data Between IDM and HubSpot

This sample demonstrates bidirectional synchronization between IDM managed users and HubSpot contacts.

(samples/sync-with-hubspot)

Synchronize Data Between IDM and DocuSign

This sample demonstrates bidirectional synchronization between IDM managed users and DocuSign user accounts.

(samples/sync-with-docusign)

Synchronize Data Between IDM and a SCIM Provider

This sample demonstrates bidirectional synchronization between IDM managed users and roles with corresponding users and roles from a SCIM provider.

(samples/sync-with-scim)

Subscribe to JMS Messages

This sample demonstrates the scripted JMS message handler, and how it performs ForgeRock REST operations.

(samples/scripted-jms-subscriber)

Authenticate Using a Trusted Servlet Filter

This sample demonstrates how to use a custom servlet filter and the "Trusted Request Attribute Authentication Module" to allow IDM to authenticate through another service.

(samples/trusted-servlet-filter)

Create a Custom Endpoint

IDM supports scriptable custom endpoints that enable you to launch arbitrary scripts through an IDM REST URI. This example shows how custom endpoints are configured and returns a list of variables available to each method used in a custom endpoint script.

(samples/example-configurations/custom-endpoint)

Example Configuration Files

In addition to these samples, IDM provides example configuration and data files that you can use to set up your own project. These files are in the samples/example-configurations directory. Details on each of these files is provided in the documentation that corresponds to the purpose of the file. For example, the conf/external.email.json file is described in Configure Outbound Email.

Read a different version of :