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'. PRESSTO 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 PRESSTO 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 PRESSTO 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.