Introduction

Août 2010. Oracle annonce la mise à disposition de la nouvelle version de son logiciel de gestion d’identité et de provisioning : Oracle Identity Manager (OIM) 11g. Il apporte son lot de modifications par rapport à l’ancienne version OIM 9.1. Ces modifications s’inscrivent dans la volonté d’Oracle d’homogénéiser sa suite de produit 11g tant du point de vue de l’interface utilisateur qu’au niveau de l’interconnexion avec ses produits existants.

L’objectif de cet article est d’en lister les principales modifications parmi les plus visibles. D’autres articles du blog détaillant plus en profondeur certaines fonctionnalités suivront ensuite.

Nouvelle interface Web

La modification la plus visible est certainement l’interface Web en grande partie réécrite avec le framework Oracle Application Development Framework (ADF). Ce framework s’inscrit dans la volonté d’Oracle d’uniformiser les interfaces web de l’ensemble de ses produits. Nous retrouvons ainsi la même apparence pour OIM 11g, OIA 11g et Weblogic.

Console OIM

Nouvelle gestion des workflows d’approbation et connexion au moteur BPEL

Les “approval workflow” de la version 9.1 ont laissé la place aux workflows intégrés au moteur BPEL. Ces workflow se configurent via jDevelopper, l’environnement de développement d’Oracle. Cette intégration permet une souplesse plus importante et introduit des fonctionnalités avancées à OIM (mise en parallèle des approbations, branchements conditionnels…).

BPEL Web OIM

Gestion des événements de réconciliation

La version 9 imposait aux utilisateurs finaux de passer par le client java lourd de OIM pour gérer les événements de réconciliation. La version 11g permet maintenant de passer directement par l’interface Web. Parmi les fonctionnalités accessibles depuis l’interface web, on retrouve :

  • Lecture de l’évènement de réconciliation ;
  • Lien manuel avec un utilisateur ;
  • Résolution des conflits si plusieurs utilisateurs ont été détectés pour un même événement de réconciliation.

MDS

La configuration d’une partie des éléments de OIM se trouve maintenant dans une base de données stockée au format XML. En pratique, son utilisation se limite à y importer des fichiers lors de certaines opérations de configuration:

  • création de tâches planifiées ;
  • création de plugin et d’event handler.

Plusieurs outils existent pour gérer cette base:

  • des outils en ligne de commande ;
  • un navigateur intégré à jDevelopper, l’environnement de développement d’Oracle.

ICF

Les connecteurs GTC (Generic Technologie connectors) ont laissé la place à ICF (Identity Connector Framework). Il s’agit d’un framework opensource hérité du rachat de Sun qui permettra de profiter de la technologie utilisée par l’outil de provisioning de Sun IDM. A terme, tous les connecteurs migreront vers cette nouvelle architecture.

Nouvelle gestion des tâches planifiées

Les tâches planifiées doivent maintenant être instanciées sous forme de scheduled jobs. L’intérêt est de pouvoir définir des tâches utilisant la même méthode d’une classe java tout en utilisant d’autres valeurs paramètres. Il n’est plus nécessaire de recréer un à un les paramètres des tâches lors de chaque création de tâche.

Nouveaux champs utilisateurs

Les deux principales modifications du profil utilisateur sont l’ajout de nouveaux champs et la catégorisation des champs. La copie d’écran ci-dessous présente un exemple de fiche identité utilisateur obtenue sans aucune configuration :

OIM User Page

Nouvelles APIs

Cette nouvelle version a été l’occasion pour Oracle de repackager une partie de ses méthodes. Celles-ci sont listées dans le guide de développement OIM 11g.
Les anciennes méthodes ont toutefois été gardées afin de maintenir une compatibilité ascendante.

Au vue de ces éléments et suite à une première expérience, nous avons établi la liste des principaux éléments à prendre en considération lors d’une migration de OIM 9 vers OIM 11g:

  • migration des workflows d’approbation vers le moteur BPEL ;
  • migration des entity adapters vers des events handlers ;
  • instanciation des tâches planifiées en scheduled job ;
  • remplacement des champs utilisateurs personnalisés de la version OIM 9 avec ceux existants en standard dans la version 11g ;

conversion des méthodes java utilisées dans les développements annexes: connecteurs, tâches planifiées, outils annexes.