Problèmes (et solutions)
Comme tout logiciel complexe ITIM est parfois la source de problèmes, plus ou moins graves.
Cette section recense les soucis que l'ai pu avoir sur le produit et son environnement (Websphere, ITDS)
Comme tout logiciel complexe ITIM est parfois la source de problèmes, plus ou moins graves.
Cette section recense les soucis que l'ai pu avoir sur le produit et son environnement (Websphere, ITDS)
Nous avons récemment voulu gérer des comptes dans ITIM, pour des besoins de provisionnement d'applications distantes, alimentées via des flux fichiers.
Pour éviter de mettre en place un flux fichier ou une autre ressource (type LDAP par exemple), nous avons pensé utiliser un service manuel : l'intérêt est de ne pas avoir de composant technique supplémentaire, tout en gardant la traçabilité des comptes de la personne.
Ceci se fait en plusieurs étapes :
Par défaut, ITIM est fourni avec un adaptateur LDAP, souvent fort utilisé.
L'adapatateur Active Directory est lui aussi généralement mis en place, couplé avec la synchronisation de mots de passe.
Cependant, il existe des cas où ces adapateurs ne sont pas suffisants :
Dans ces cas, il est nécessaire de développer de nouveaux types d'adaptateurs / services.
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.
La configuration IBM Tivoli Identity Manager est stocké principalement dans l'annuaire LDAP ITIM, lequel mélange les données et le paramétrage.
Dès lors, le passage d'un environnement à l'autre (typiquement développement / test / production) peut être problématique.
ITIM propose quand même des fonctions d'export / import, mais qui ne prend pas en compte tous les paramètres.
IBM Tivoli Identity Manager includes Export and Import data options, which can be used for several setup parameters : policies, groups, operations, roles, services or workflow.
Unfortunately, Forms are not exportable, and one can spend some times to design these forms. But in fact there is a simple solution to export these forms and reimport them in another TIM instance, or copy them for another entity.
La grande majorité des paramètres "système" ITIM se trouvent dans des fichiers .properties, situés dans le répertoire [ITIM_HOME]/data.
On y trouve par exemple :
Les paramètres liés au serveur de mail (sortant) pour ITIM se trouvent dans le fichier enRoleMail.properties
, lui-même situé dans le répertoire [ITIM_HOME]/data
, comme la plupart des fichiers de configuration.
Exemple de configuration :
IBM Tivoli Identity Manager permet de gérer une hiérarchie de rôles, qui peuvent être caractérisés (Business Role vs Application Role).
On peut donc avoir un rôle parent qui dispose de plusieurs rôles enfants, sachant qu'un rôle enfant peut avoir plusieurs parents (et pas que 2!).
Par contre, l'héritage marche un peu à l'envers : ce sont les rôles enfants qui doivent être des "Business Roles", et les rôles parents sont des rôles applicatifs "Application Role", qui sont utilisés dans les règles de provisionnement.
Exemple :
Nous avons eu récemment le besoin de notifier par mail les administrateurs de domaine, sur un service situé en haut de l'organisation (service partagé), alors que les personnes sont rattachées à des sous-domaines.
Du coup, le type de participant DOMAIN_ADMIN ne fonctionne pas, car il est rattaché au service.
Il a donc fallu développer un javascript spécifique pour arriver à nos fins. Celui-ci est finalement assez simple (une fois qu'on a réussi à naviger dans la documentation IBM...)