Thursday, March 12, 2015

OpenIDM and OrientDB

OpenIDM comes with OrientDB as the embedded database. It is a NoSQL database and makes things much easier to go with something OOTB. The following artifacts are stored in the OrientDB.

  • User / Group info
  • Activity Audit
  • Reconciliation Audit.
You can download the console from OrientDB Console Download

Start the console from $ORIENT_DB_HOME/bin directory as ./console.sh

Default DBName : openidm
Default credentials to connect to the db : admin/admin

SuperUser: openidm-admin / openidm-admin

Curl Command to Reset the admin password ( in repository and config files ) :

$ curl \
 --cacert self-signed.crt \
 --header "X-OpenIDM-Username: openidm-admin" \
 --header "X-OpenIDM-Password: openidm-admin" \
 --header "Content-Type: application/json" \
 --request POST \
 "https://localhost:8443/openidm/repo?_action=updateDbCredentials&user=admin&password=newPassword"
   




Setup cheatsheet for Beginners

I had been wanting to play around with OpenIDM for quite sometime and this week I just got to do it. Wow! it is super easy to set it up and get to running. I'm so happy I could have something running so fast!

Prerequisite:

Download JDK 1.7 from Oracle JDK7 

Installation

  1. Download the bits from ForgeRock backstage 
  2. Unzip the file to a folder where you want to have OpenIDM installed. 
Once the bits are installed, the services are ready to be up and running.  The default ports used are:
http : 8080
https: 8443

AdminConsole :

This is a apache Felix console at,   https://hostname:8443/system/console
Default username : admin
Default password: admin

Services Management

The services can be managed using CLI as

startup.sh -> brings up all the services.
shutdown.sh -> to shutdown the services.

Using Admin Console

at http://hostname:8080/system/console  

User Management REST Services

The user management is using the REST interfaces which can be easily handled using CURL commands for performing the following operations.

  • search
  • create
  • list
  • update
  • delete
In all the commands, the header parameters used include
"X-OpenIDM-Username: openidm-admin"
"X-OpenIDM-Password: openidm-admin"

The URL for performing the operations is http://localhost:8080/openidm/managed/user

SSL end point can be accessed with a additional parameter of --cacert <selfsigned certificate>