Documentation Tool for IBM Tivoli Identity Manager

Après avoir configuré une instance ITIM, il est intéressant d'en avoir une vue globale, ce que ne permet pas facilement la console. Ne serait-ce que pour une politique de provisionnement, il faut aller voir le détail de chaque attribut pour identifier le code javascript utilisé. IBM propose un outil, DocTool, qui génère un rapport sur une configuration existante.

D'après la documentation IBM : "DocTool tourne sur n'importe quel système Windows ou Unix qui a accès à l'annuaire LDAP ITIM (et à la base de données), et génère un rapport qui liste les rôles, politiques, groupes, ACI et autre éléments de configuration".

L'outil est disponible sur le site d'IBM : https://www-304.ibm.com/software/brandcatalog/ismlibrary/details?catalo…

Pour Linux, le programme est : ITIMDocToolInstaller51.bin.
Pour Windows, c'est : ITIMDocToolInstaller51.exe

Installation sur Linux

Une fois le logiciel récupéré sur le site IBM, on l'installe en lançant le fichier :

$ sh ITIMDocToolInstaller51.bin -i console
Preparing to install...
Extracting the installation resources from the installer archive...
Configuring the installer for this system's environment...

Launching installer...

Preparing CONSOLE Mode Installation...

==================================================================
ITIMDocTool51                     (created with InstallAnywhere by Macrovision)
-------------------------------------------------------------------------------

==================================================================
Introduction
------------

InstallAnywhere will guide you through the installation of ITIMDocTool51.

Respond to each prompt to proceed to the next step in the installation.  If you
want to change something on a previous step, type 'back'.

You may cancel this installation at any time by typing 'quit'.

PRESS  TO CONTINUE: 

Taper "1" pour accepter les termes de la licence. Il faut ensuite saisir le répertoire d'installation. Par défaut, l'installation se fait dans un sous-répertoire de l'utilisateur courant :

Choose Install Folder
---------------------

Specify the folder in which you would like to install the ITIMDocTool

Where would you like to install?

  Default Install Folder: /home/[USER]/ITIMDocTool51

ENTER AN ABSOLUTE PATH, OR PRESS  TO ACCEPT THE DEFAULT

Saisir ensuite le répertoire d'installation de WebSphere :

==================================================================
Specify WebSphere Home
----------------------

Please Enter the location of WebSphere HOME

WAS Home (DEFAULT: /): /product/websphere 

Puis le répertoire d'installation de ITIM :

==================================================================
Specify ITIM Home
-----------------

Please Specify the location where ITIM is installed (ITIM_HOME)

ITIM Home (DEFAULT: /): /product/itim

L'installateur affiche un résumé des paramètres saisis. Accepter en tapant sur la touche Entrée / Return. Si l'installation se termine correctement, le message suivant est affiché :

Congratulations. ITIMDocTool51 has been successfully installed to:

   /home/XFR0165002/ITIMDocTool51

PRESS  TO EXIT THE INSTALLER: 

Lancement des rapports

J'utilise un script qui lance les scripts voulus, via une commande crontab, toutes les semaines. Le script de lancement est le suivant :

#!/bin/bash
#
DOCTOOLDIR=/home/[USER]/ITIMDocTool51
TODAY=`date "+%Y%m%d"`
HTDOCS=/product/ibmhttpserver/V7.0/htdocs/reports

cd $DOCTOOLDIR
sh ./ITIMDocTool_HTML.sh

cp ITIMReport.html $HTDOCS/ITIMDoc-$TODAY.html

La copie dans le répertoire htdocs permet d'accéder aux rapports (HTML) directement via le navigateur, sans devoir télécharger le rapport sur un poste client. Note : j'ai du modifier le script ITIMDocTool_HTML.sh pour positionner la variable WAS_ROOT :

# Set the following to your WebSphere Application Server Home directory
# Example: WAS_ROOT=/opt/IBM/WebSphere/AppServer
WAS_ROOT=/product/websphere/AppServer

La variable CP a également été modifiée pour ajouter le driver ojdbc.jar (nous utilisons Oracle) comme base de données:

 CP=$ITIM_ROOT/data:$ITIM_LIB/jlog.jar:$ITIM_LIB/itim_api.jar:$ITIM_LIB/itim_server.jar:$ITIM_LIB/aspectjrt.jar:$ITIM_LIB/jffdc.j    ar:$ITIM_LIB/jsafe.jar:$ITIM_LIB/itim_common.jar:$ITIM_LIB/api_ejb.jar:$ITIM_LIB/db2jcc.jar:$ITIM_LIB/log4j-1.2.8.jar:$ITIM_LIB/    db2jcc_license_cu.jar:$ITIM_LIB/ojdbc.jar

Troubleshooting

Plusieurs essais ont été nécessaires pour que les rapports se lancent correctement, en désactivant certaines options dans le fichier ITIMReportDefinition.xml : Désactivation de la partie Organization

  <Section name="Organization">
       <Enabled>False</Enabled>

Désactivation de la partie Password Policy Rules :

<Iteration name="PasswordPolicies">
 <Enabled>True</Enabled>
 <Order>1</Order>
 <ClassName>com.ibm.itim.doctool.runtime.policies.PasswordPolicies</ClassName>
 <List name="Targets">
     <Enabled>True</Enabled>
     <Order>1</Order>
     <ClassName>com.ibm.itim.doctool.runtime.policies.PolicyTargets</ClassName>
  </List>
  <List name="Rules">
     <Enabled>False</Enabled>

Le rapport est constitué d'un seul fichier HTML, contenant plusieurs sections, par type d'élément de configuration.

Catégorie