README revision 4b3769ce483ece06f60f983193712492b920144f
Sample 1 - One-Way XML -> Internal Repository
---------------------------------------------
Copyright (c) 2012-2014 ForgeRock AS
This work is licensed under a Creative Commons Attribution-
NonCommercial-NoDerivs 3.0 Unported License. See
http://creativecommons.org/licenses/by-nc-nd/3.0/
The documentation at http://openidm.forgerock.org/doc/install-guide/index.html#chap-sample
describes how to get started with this sample.
The sample demonstrates reconciliation between the OpenIDM internal
repository and an external XML file, with data flowing from the XML
file into the internal repository.
The configuration files used in this sample are as follows:
* samples/sample1/conf/provisioner.openicf-xml.json shows the XML connector configuration.
* samples/sample1/conf/schedule-reconcile_systemXmlAccounts_managedUser.json includes a
schedule configuration you can use to run reconciliation periodically.
* samples/sample1/conf/sync.json describes how identities in the XML file source map to
identities in the internal repository target.
Data for this sample is stored in samples/sample1/data/xmlConnectorData.xml. The initial
XML file contains two identities.
To run the sample, start OpenIDM with the configuration for sample 1:
$ cd /path/to/openidm
$ ./startup.sh -p samples/sample1
Initiate a reconciliation operation over the REST interface, as follows:
$ curl -k --header "Content-type: application/json" -u "openidm-admin:openidm-admin" -X POST "https://localhost:8443/openidm/recon?_action=recon&mapping=systemXmlfileAccounts_managedUser"
Alternatively, edit samples/sample1/conf/schedule-reconcile_systemXmlAccounts_managedUser.json
to enable scheduled reconciliation:
"enabled" : true,
The following curl command requests all identifiers in OpenIDM's internal
repository. Use it to see the results after reconciliation for example.
$ curl -k -u "openidm-admin:openidm-admin" "https://localhost:8443/openidm/managed/user?_queryId=query-all&fields=*&_prettyPrint=true"
{
"result" : [ {
"mail" : "bjensen@example.com",
"sn" : "Jensen",
"passwordAttempts" : "0",
"lastPasswordAttempt" : "Sun Mar 16 2014 20:54:53 GMT-0700 (PDT)",
"address2" : "",
"givenName" : "Barbara",
"securityQuestion" : "1",
"country" : "",
"city" : "",
"lastPasswordSet" : "",
"postalCode" : "",
"_id" : "bjensen",
"_rev" : "1",
"description" : "Created By XML1",
"accountStatus" : "active",
"telephoneNumber" : "1234567",
"roles" : "openidm-authorized",
"postalAddress" : "",
"stateProvince" : "",
"userName" : "bjensen@example.com"
}, {
"mail" : "scarter@example.com",
"sn" : "Carter",
"passwordAttempts" : "0",
"lastPasswordAttempt" : "Sun Mar 16 2014 20:54:53 GMT-0700 (PDT)",
"address2" : "",
"givenName" : "Steven",
"securityQuestion" : "1",
"country" : "",
"city" : "",
"lastPasswordSet" : "",
"postalCode" : "",
"_id" : "scarter",
"_rev" : "1",
"description" : "Created By XML1",
"accountStatus" : "active",
"telephoneNumber" : "1234567",
"roles" : "admin",
"postalAddress" : "",
"stateProvince" : "",
"userName" : "scarter@example.com"
} ],
"resultCount" : 2,
"pagedResultsCookie" : null,
"remainingPagedResults" : -1
}