PasswordSync détecte les changements de mot de passe d'utilisateur amorcés sur les domaines Windows et les transfère dans Identity Manager. Identity Manager synchronise ensuite ces changements de mots de passe avec les autres ressources définies dans Identity Manager.
Ce chapitre se compose des rubriques suivantes :
La fonctionnalité PasswordSync assure la synchronisation des changements de mot de passe effectués dans des domaines Windows Active Directory avec les autres ressources définies dans Identity Manager. PasswordSync doit être installé sur chacun des contrôleurs de domaine dans les domaines qui seront synchronisés avec Identity Manager. PasswordSync doit être installé séparément d'Identity Manager.
PasswordSync se compose d'un DLL (lhpwic.dll) qui réside sur chaque contrôleur de domaine. Ce DLL reçoit les notifications de mise à jour de mot de passe de Windows, les chiffre et les envoie via HTTPS à la servlet PasswordSync. La servlet PasswordSync se trouve sur le serveur d'application exécutant Identity Manager.
L'utilisation de HTTP est prise en charge mais celle de HTTPS reste préférable.
La servlet PasswordSync convertit la notification en un format compréhensible par Identity Manager. La servlet envoie ensuite le changement de mot de passe (toujours chiffré) à Identity Manager en utilisant l'une des méthodes suivantes :
Méthode directe. La servlet communique directement le changement de passe à Identity Manager en utilisant les classes Identity Manager natives (voir Présentation de PasswordSync).
La méthode de connexion directe est uniquement recommandée pour les environnement de petite taille peu complexes qui requièrent seulement la livraison de messages à un unique système et n'ont pas besoin que la livraison des messages soit garantie. Si, pour une raison quelconque, la livraison directe d'un message échoue, ce dernier est perdu. Il n'y a pas de livraison de secours.
Méthode JMS. La servlet envoie les informations de mot de passe à Identity Manager en utilisant JMS (Java Message Service). Avec JMS, la servlet envoie les changements de mot de passe à la file d'attente de messages de JMS. De son côté, l'adaptateur de ressources Listener JMS d'Identity Manager contrôle s'il n'y a pas de nouveaux messages dans la file d'attente. S'il détecte un message de changement de mot de passe en attente dans la file d'attente, l'adaptateur Listener JMS prélève le message de la file d'attente et l'importe dans Identity Manager (voir Figure 11–2).
La méthode JMS est recommandée pour les environnements complexes caractérisés par de grands volumes, la nécessité de délivrer des messages à plusieurs systèmes et requerrant une livraison garantie des messages. La file d'attente de messages de JMS peut être rendue hautement disponible. Du moment qu'un message est inséré dans la file d'attente, si sa livraison à Identity Manager échoue, la file d'attente conserve le changement jusqu'à ce que le message puisse être délivré à Identity Manager.
Vous devez installer et configurer JMS séparément.
La Figure 11–1 schématise une connexion directe. Dans cette configuration, la servlet PasswordSync envoie directement les messages de mise à jour à Identity Manager.
La Figure 11–2 schématise une connexion JMS. Dans cette configuration, la servlet PasswordSync envoie les messages de mise à jour à la file d'attente de messages de JMS. L'adaptateur de ressources Listener JMS d'Identity Manager contrôle périodiquement si la file d'attente (action indiquée par la flèche bleu clair sur le schéma) ne contient pas de nouveaux messages. La file d'attente répond en envoyant les messages à Identity Manager (action indiquée par la flèche bleu foncé).
Lorsqu'Identity Manager reçoit une notification de changement de mot de passe, il la déchiffre et traite le changement en utilisant une tâche de flux de travaux. Le mot de passe est mis à jour sur toutes les ressources assignées de l'utilisateur et un serveur SMTP envoie un e-mail à l'utilisateur l'avertissant du statut du changement de mot de passe.
Windows se limite à envoyer une notification de mise à jour en cas de réussite du changement de mot de passe. Si une demande de changement de mot de passe ne respecte pas la stratégie de mot de passe du domaine, Windows la rejette et aucune donnée de synchronisation n'est envoyée à Identity Manager.
La Figure 11–3 montre Identity Manager amorçant un flux de travaux et envoyant un e-mail à l'utilisateur après avoir reçu une notification de mise à jour de mot de passe.
PasswordSync rejette toutes les notifications de changement de compte relatives à des noms de compte se terminant par $ (signe des dollars). Les noms de compte se terminant par $ sont supposés être des comptes d'ordinateur Windows. Aucun nom de compte utilisateur se terminant par le signe des dollars ne sera transmis à Identity Manager.
La fonctionnalité PasswordSync peut uniquement être installée sur les contrôleurs de domaine Windows 2008, Windows 2003 et Windows 2000 (la prise en charge des contrôleurs de domaine Windows NT a été arrêtée dans la version 8.0 d'Identity Manager). Vous devez installer PasswordSync sur chacun des contrôleurs de domaine principaux et de sauvegarde qui seront synchronisés avec Identity Manager. Configurer PasswordSync pour HTTPS est vivement recommandé.
Les versions de PasswordSync antérieures à la version 7.1.1 doivent être mises à jour vers la version 7.1.1 minimum sur tous les contrôleurs de domaine.
La prise en charge de la servlet rpcrouter2 a été désapprouvée dans la version 8.0 et sera supprimée dans une version future. Les versions 7.1.1 et suivantes de PasswordSync prennent en charge le nouveau protocole.
Si JMS est utilisé, PasswordSync doit être connecté à un serveur JMS. Pour plus d'informations sur les exigences concernant le système JMS, voir la section consacrée à l'adaptateur de ressources Listener JMS dans le guide Sun Identity Manager 8.1 Resources Reference.
De plus, pour PasswordSync, vous devez :
installer Microsoft .NET 1.1 minimum sur chaque contrôleur de domaine ;
supprimer les versions précédentes de PasswordSync.
Ces exigences sont examinées plus en détail dans les sections suivantes.
Pour utiliser PasswordSync, vous devez installer au minimum Microsoft .NET 1.1 Framework. Microsoft .NET 1.1 Framework est installé par défaut si vous utilisez un contrôleur de domaine Windows 2003. Microsoft .NET 2.0 Framework est installé par défaut sur les contrôleurs de domaine Windows 2008. Si vous utilisez un contrôleur de domaine Windows 2000, aucun Framework n'est installé par défaut. Vous pouvez télécharger la boîte à outils du Centre de téléchargement de Microsoft à l'URL suivant :
http://www.microsoft.com/downloads
Saisissez .NET Framework Redistributable dans les mots-clés du champ de recherche pour localiser rapidement la boîte à outils Framework.
La boîte à outils installe .NET Framework.
Bien que les données sensibles soient chiffrées avant d'être envoyées au serveur Identity Manager, Sun Microsystems recommande de configurer PasswordSync afin d'utiliser une connexion SSL sécurisée (c'est-à-dire une connexion HTTPS).
Pour toute information sur l'installation des certificats SSL importés, lisez l'article suivant de la base de connaissances Comment faire de Microsoft :
http://support.microsoft.com/kb/816794
Une fois PasswordSync installé, vous pouvez vérifier que votre connexion SSL est correctement configurée en indiquant un URL HTTPS dans la boîte de dialogue Configuration de PasswordSync Configuration. Pour les instructions, voir Test de la configuration.
Vous devez supprimer toutes les instances de PasswordSync installées au préalable avant d'installer une version plus récente.
Si la version de PasswordSync installée au préalable prend en charge le programme d'installation IdmPwSync.msi, vous pouvez utiliser l'utilitaire Ajout/Suppression de programmes standard de Windows pour supprimer le programme.
Si la version de PasswordSync installée au préalable ne prend pas en charge le programme d'installation IdmPwSync.msi, utilisez le programme de désinstallation InstallAnywhere pour supprimer le programme.
Cette section contient des informations et des instructions relatives à l'installation et à la configuration de PasswordSync.
Ces informations sont organisées comme suit :
La procédure suivante détaille l'installation de l'application de configuration de PasswordSync.
Vous devez installer PasswordSync sur chaque contrôleur de domaine dans les domaines qui seront synchronisés avec Identity Manager.
Veillez à désinstaller toutes les versions installées au préalable de PasswordSync avant d'aller plus loin.
Depuis le support d'installation d'Identity Manager,
Si vous effectuez l'installation sur une version 32 bits de Windows, double-cliquez sur pwsync\IdmPwSync_x86.msi.
Si vous effectuez l'installation sur une version 64 bits de Windows, double-cliquez sur pwsync\IdmPwSync_x64.msi.
L'assistant d'installation s'ouvre et la fenêtre Welcome (Bienvenue) comportant les boutons de navigation suivants s'affiche :
Cancel (Annuler). Cliquez sur ce bouton pour quitter l'assistant à tout moment sans enregistrer aucune de vos modifications.
Back (Welcome). Cliquez sur ce bouton pour revenir à une boîte de dialogue précédente.
Next (Suivant). Cliquez sur ce bouton pour passer à la boîte de dialogue suivante.
Lisez les informations indiquées sur l'écran Welcome (Bienvenue) puis cliquez sur Next (Suivant) pour afficher la fenêtre Choose Setup Type (Choix du type d'installation).
Cliquez au choix sur Typical (Typique) ou Complete (Complète) pour installer l'intégralité du package PasswordSync, ou cliquez sur Custom (Personnalisée) pour contrôler les parties du package qui seront installées. Cliquez sur Next (Suivant) pour continuer.
Lorsque la fenêtre Ready to Install (Prêt pour l'installation) s'affiche, cliquez sur Install (Installer) pour installer le produit.
Une dernière fenêtre s'affiche. Activez la zone Launch Configuration Application (Lancer l'application de configuration) pour pouvoir commencer à configurer Password Sync puis cliquez sur Finish (Terminer) pour compléter le processus d'installation.
Les instructions à suivre pour configurer PasswordSync figurent au Chapitre 11PasswordSync.
Une boîte de dialogue s'affiche indiquant que vous devez redémarrer le système pour que les changements soient appliqués. Il n'est pas nécessaire de redémarrer avant de configurer PasswordSync, mais vous devez redémarrer le contrôleur de domaine avant d'implémenter PasswordSync.
Installation et configuration de PasswordSync sous Windows décrit les fichiers qui sont installés sur chaque contrôleur de domaine.
Composant installé |
Description |
---|---|
%$INSTALL_DIR$%\configure.exe |
Programme de configuration PasswordSync |
%$INSTALL_DIR$%\configure.exe.manifest |
Fichiers de données pour le programme de configuration |
%$INSTALL_DIR$%\passwordsyncmsgs.dll |
DLL gérant les messages de PasswordSync |
%SYSTEMROOT%\SYSTEM32\lhpwic.dll |
DLL de notification de mot de passe implémentant la fonction DLL PasswordChangeNotify() de Windows. |
Si vous exécutez l'application de configuration à partir du programme d'installation, l'application affiche les écrans de configuration sous la forme d'un assistant. Une fois l'assistant complété, toutes les fois que vous exécuterez l'application de configuration de PasswordSync, vous pourrez naviguer dans les écrans en sélectionnant un onglet.
Démarrez l'application de configuration de PasswordSync (si elle n'est pas déjà en cours d'exécution).
Par défaut, l'application de configuration est installées dans Program Files -> Sun Identity Manager PasswordSync -> Configuration.
Si vous ne projetez pas d'utiliser JMS, lancez l'application de configuration depuis une ligne de commande en veillant à inclure l'indicateur -direct comme suit :
C:\InstallDir\Configure.exe -direct
La boîte de dialogue de l'assistant PasswordSync Configuration (Configuration de PasswordSync) s'affiche (voir Figure 11–4).
Éditez les champs de cette boîte de dialogue comme requis.
Ces champs sont les suivants :
Server (Serveur) doit être remplacé par le nom complet de l'hôte ou l'adresse IP où Identity Manager est installé.
Protocol (Protocole) indique si établir des connexions sécurisées avec Identity Manager.
PasswordSync prend en charge la configuration d'un comportement de contrôle de certificats pour les connexions HTTPS. Lorsque vous activez HTTPS, les options suivantes s'affichent :
Allow revoked certificates (Autoriser les certificats révoqués). Ce paramètre mappe vers la valeur de registre securityIgnoreCertRevoke sur la connexion. Par défaut, PasswordSync n'ignore pas les problèmes de révocation et la valeur de registre securityIgnoreCertRevoke est définie sur 0.
Si vous voulez que PasswordSync ignore les messages relatifs aux certificats révoqués, cochez cette case (ou définissez la valeur de registre SECURITY_FLAG_IGNORE_REVOCATION sur 1).
Allow invalid certificates (Autoriser les certificats non valides). Ce paramètre s'applique aux options SECURITY_FLAG_IGNORE_CERT_CN_INVALID, SECURITY_FLAG_IGNORE_CERT_DATE_INVALID et SECURITY_FLAG_IGNORE_UNKNOWN_CA sur la connexion. Par défaut, PasswordSync n'autorise pas les certificats non valides et les valeurs de registre sont définies sur 0.
Cocher cette case ou définir la valeur de registre securityAllowInvalidCert sur 1 permet à PasswordSync d'utiliser des certificats qui échouent à un certain nombre de contrôles de sécurité. L'activation de cette option n'est pas recommandée pour un environnement de production.
Ces paramètres ne sont pas affichés pour le type de protocole HTTP et sont sans effet sur les paramètres HTTP.
Port (Port). Spécifiez un port disponible pour le serveur. Pour HTTP, le port par défaut est le 80. Pour HTTPS, le port par défaut est le 443.
Path (Chemin). Spécifiez le chemin d'Identity Manager sur le serveur d'application.
L'URL est généré en concaténant ensemble les autres champs. La valeur contenue dans le champ URL ne peut pas être éditée dans ce champ.
Settings re-init interval (seconds) (Intervalle de réinitialisation des paramètres (en secondes) précise la fréquence à laquelle le fichier dll de PasswordSync doit relire les paramètres dans le registre. La valeur par défaut est 2880 secondes ou 8 heures.
Cet assistant de configuration de PasswordSync affiche la valeur en secondes, mais la valeur du registre est effectivement stockée en millisecondes.
Le fichier dll de PasswordSync lit les paramètres de configuration dans le registre pendant que le dll est actif. Cette valeur d'intervalle est stockée dans la valeur de registre reinitIntervalMilli.
Les mots de passe ne peuvent pas être synchronisés pendant la mise à jour des paramètres, ce qui peut entraîner un petit délai dans le traitement d'un changement de mot de passe. En général, ce délai ne dépasse pas une seconde. PasswordSync traite tous les changements de mot de passe reçus pendant une mise à jour dès que celle-ci est terminée. Par ailleurs, PasswordSync ne traite pas les mises à jour des paramètres pendant qu'une synchronisation de mot de passe est en cours. La mise à jour sera reprogrammée et effectuée à un moment ultérieur.
Cliquez sur Next (Suivant) pour afficher la page Proxy Server Configuration (Configuration du serveur proxy) (Figure 11–5) et éditez les champs comme requis.
Ces champs sont les suivants :
Enable (Activer). Sélectionnez ce champ si un serveur proxy est nécessaire.
Server (Serveur). Vous devez saisir ici le nom d'hôte complet ou l'adresse IP du serveur proxy.
Port (Port). Spécifiez un numéro de port disponible pour le serveur (le port de proxy par défaut est le 8080 tandis que le port HTTPS par défaut est le 443).
Cliquez sur Next (Suivant).
Lorsque la boîte de dialogue des paramètres de JMS (Figure 11–6) s'affiche, effectuez l'une des actions suivantes :
Éditez les champs suivants comme nécessaire :
User (Utilisateur) indique le nom d'utilisateur JMS qui place les nouveaux messages dans la file d'attente.
Password (Mot de passe) et Confirm (Confirmer) spécifient le mot de passe de l'utilisateur JMS.
Connection Factory (Fabrique de connexion) indique le nom de la fabrique de connexion JMS à utiliser. Cette fabrique doit déjà exister sur le système JMS.
Dans la plupart des cas, Session Type (Type de session) doit être défini sur LOCAL, qui indique qu'une transaction de session locale sera utilisée. La session sera validée après la réception de chaque message. D'autres valeurs possibles sont AUTO, CLIENT et DUPS_OK.
Queue Name (Nom de la file) spécifie le nom de recherche de destination pour les événements de synchronisation de mot de passe.
Si vous ne projetez pas d'utiliser JMS et que vous avez lancé l'assistant de configuration avec l'indicateur -direct, cliquez sur Next (Suivant) pour afficher la boîte de dialogue User (Utilisateur). Allez directement à l'étape Figure 11–7.
Cliquez sur Next (suivant) pour afficher la boîte de dialogue des propriétés de JMS (Figure 11–7).
La boîte de dialogue des propriétés JMS permet de définir l'ensemble des propriétés qui sont utilisées pour construire le contexte JNDI initial. Vous devez définir les paires nom/valeur suivantes :
java.naming.provider.url : spécifiez l'URL de la machine exécutant le service JNDI.
java.naming.factory.initial : spécifiez le nom de la classe (package compris) de l'Initial Context Factory (Fabrique de contexte initiale) pour le Service Provider JNDI.
Le menu déroulant Name (Nom) contient une liste de classes du package java.naming. Sélectionnez une classe ou saisissez-en le nom puis entrez la valeur correspondante dans le champ Value (Valeur).
Si vous ne projetez pas d'utiliser JMS et que vous avez lancé l'assistant de configuration avec l'indicateur -direct, configurez l'onglet User (Utilisateur). Sinon, ignorez cette étape et passez directement à la suivante.
Pour configurer l'onglet User (Utilisateur), éditez les champs qui doivent l'être.
Account ID (ID de compte). Spécifiez le nom d'utilisateur que vous utiliserez pour vous connecter à Identity Manager.
Password (Mot de passe). Indiquez le mot de passe qui vous utiliserez pour vous connecter à Identity Manager.
Cliquez sur Next (Suivant) pour afficher la boîte de dialogue Email (E-mail) (Figure 11–8) et éditez les champs qui doivent l'être.
Pour envoyer une notification par e-mail lorsque la synchronisation d'un changement de mot de passe échoue à cause d'une erreur de communication ou d'une autre erreur externe à Identity Manager, utilisez les options suivantes de la boîte de dialogue Email (E-mail) pour paramétrer la notification et configurer l'e-mail.
Enable Email (Activer l'e-mail). Sélectionnez cette option pour activer cette fonctionnalité.
Email End User (E-mail à l'utilisateur final). Sélectionnez cette option pour que l'utilisateur reçoive des notifications. Sinon, seul l'administrateur sera averti.
SMTP Server (Serveur SMTP). Saisissez le nom complet ou l'adresse IP du serveur SMTP qui devra être utilisé pour envoyer les notifications d'échec.
Administrator Email Address (Adresse e-mail de l'administrateur). Saisissez l'adresse e-mail à laquelle vous voulez envoyer les notifications.
Sender’s Name (Nom de l'expéditeur). Saisissez le « nom convivial » de l'expéditeur.
Sender’s Address (Adresse de l'expéditeur). Saisissez l'adresse e-mail de l'expéditeur.
Message Subject (Objet du message). Saisissez la ligne d'objet qui sera utilisée pour toutes les notifications.
Message Body (Corps du message). Saisissez le texte de la notification.
Le corps du message peut contenir les variables suivantes :
$(accountId) : ID de compte de l'utilisateur tentant de changer son mot de passe.
$(sourceEndpoint) : nom d'hôte du contrôleur de domaine sur lequel le notificateur de mot de passe est installé, pour faciliter la localisation des machines défectueuses.
$(errorMessage) : message d'erreur décrivant l'erreur qui s'est produite.
Cliquez sur l'onglet Trace (Tracer) Figure 11–9.
Définissez les champs suivants :
Trace Level (Niveau de suivi),
Max File Size (MB) (Taille de fichier max. (en Mo)),
Trace File (Fichier de suivi).
Cliquez sur Finish (Terminer) pour enregistrer vos modifications.
Si vous exécutez de nouveau l'application de configuration, un ensemble d'onglets s'affiche à la place de l'assistant. Pour afficher cette application sous la forme d'un assistant, saisissez la ligne de commande suivante sur la ligne de commande :
C:\InstallDir\Configure.exe -wizard |
Pour tester votre configuration PasswordSync, voir Test de la configuration.
Vous pouvez configurer le programme d'installation de PasswordSync pour une installation silencieuse. Pour utiliser cette fonctionnalité, vous devez commencer par enregistrer les paramètres de configuration dans un fichier pendant que vous installez PasswordSync. Les futures installations référenceront ce fichier et réutiliseront les paramètres de configuration.
Pour utiliser la procédure d'installation silencieuse, vous devez installer le produit dans son intégralité sur chacun des serveurs qui l'utiliseront. L'enregistrement et la réutilisation des paramètres de configuration dépendent de l'application de configuration qui sera installée sur le système.
Le processus d'installation silencieuse utilise un utilitaire Windows appelé msiexec qui installe les fichiers .msi depuis la ligne de commande.
Saisissez msiexec /? à une invite de commande pour afficher les informations d'utilisation relatives à cet utilitaire.
De la documentation est également disponible sur le site Web de Microsoft. Par exemple, pour obtenir de la documentation sur l'utilisation de msiexec sous Windows Server 2003, reportez-vous à http://technet.microsoft.com/en-us/library/cc759262.aspx.
Suivez les instructions ci-après pour installer PasswordSync en utilisant l'assistant d'installation. L'utilitaire de configuration capture les paramètres de configuration et les écrit dans un fichier XML.
Supprimez les versions plus anciennes de PasswordSync avant l'installation.
Allez au répertoire contenant le fichier d'installation de PasswordSync (.msi ).
Pour plus d'informations, voir Pour installer l'application de configuration de PasswordSync.
Saisissez ce qui suit à une invite de commande : Les arguments et les valeurs sont sensibles à la casse.
msiexec /i pwSyncInstallFile CONFIGARGS="-writexml fullPathToFile" |
Où :
pwSyncInstallFile est le fichier d'installation de PasswordSync (IdmPwSync_86.msi ou IdmPwSync_x64.msi).
fullPathToFile spécifie où écrire le fichier XML.
Par exemple :
msiexec /i IdmPwSync_x86.msi CONFIGARGS="-writexml c:\tmp\myconfig.xml" |
Installez le produit.
Vous devez avoir créé un fichier XML de configuration d'installation. Pour les instructions, voir Pour capturer les paramètres d'installation dans un fichier de configuration.
Supprimez les versions plus anciennes de PasswordSync avant l'installation.
Copiez votre fichier XML de configuration d'installation dans un emplacement où il peut être lu par le programme d'installation.
Saisissez ce qui suit à une invite de commande. Les arguments et les valeurs sont sensibles à la casse.
msiexec /i pwSyncInstallFile ADDLOCAL="installFeature" CONFIGARGS="-readxml fullPathToFile" INSTALLDIR="installDir" /q |
Où :
pwSyncInstallFile est le fichier d'installation de PasswordSync (IdmPwSync_86.msi ou IdmPwSync_x64.msi).
installFeature indique les fonctionnalités de PasswordSync à installer. Choisissez l'une des options suivantes :
MainProgram : installe seulement le fichier .dll intercepteur.
Configuration : installe seulement l'application de configuration.
ALL : installe l'intégralité du produit.
Si aucune option n'est spécifiée, MainProgram est utilisé par défaut si l'option /q est fournie.
fullPathToFile spécifie le chemin du fichier XML de configuration.
installDir précise le chemin complet d'un répertoire d'installation personnalisé. Facultatif.
/q spécifie une installation sans IG qui redémarre automatiquement le serveur une fois terminée. S'il n'est pas inclus, l'assistant d'installation s'affichera mais la configuration s'exécutera avec les paramètres prédéfinis. Facultatif.
Exemples :
msiexec /i IdmPwSync_x86.msi CONFIGARGS="-readxml c:\tmp\myconfig.xml"
msiexec /i IdmPwSync_x86.msi ADDLOCAL="MainProgram" CONFIGARGS="-readxml c:\tmp\myconfig.xml" /q
msiexec /i IdmPwSync_x64.msi ADDLOCAL="Complete" CONFIGARGS="-readxml c:\tmp\myconfig.xml" INSTALLDIR="C:\Program Files\Sun Microsystems\MyCustomInstallDirectory" /q
Une fois PasswordSync installé sur vos contrôleurs de domaine Windows, vous devez effectuer les étapes supplémentaires suivantes sur le serveur d'application exécutant Identity Manager.
Vous n'avez pas à installer la servlet PasswordSync sur le serveur d'application. Elle a été installée automatiquement quand vous avez installé Identity Manager.
Pour terminer de déployer PasswordSync toutefois, vous devez effectuer les actions suivantes dans Identity Manager :
ajouter et configurer l'adaptateur Listener JMS (si vous utilisez JMS) ;
implémenter le flux de travaux « Synchronize User Password » (Synchroniser le mot de passe de l'utilisateur ) ;
paramétrer les notifications.
Si la servlet PasswordSync utilise JMS pour envoyer des messages à Identity Manager, vous devez ajouter l'adaptateur de ressource Listener JMS d'Identity Manager. L'adaptateur de ressource Listener JMS contrôle régulièrement si des messages n'ont pas été placés dans la file d'attente de messages de JMS par la servlet de PasswordSync. Si la file d'attente contient un nouveau message, l'adaptateur l'envoie à Identity Manager qui le traite.
Connectez-vous à l'interface administrateur d'Identity Manager (Interface administrateur d'Identity Manager).
Sélectionnez Ressources -> Configurer les types dans le menu principal.
La Page Configurer les ressources gérées s'ouvre comme indiqué à la Figure 11–10.
Vérifiez que la case à cocher Listener JMS dans la colonne Gérés ? est cochée comme indiqué à la Figure 11–10.
Si cette case n'est pas sélectionnée, cochez-la et cliquez sur Enregistrer.
Cliquez sur Lister les ressources dans le menu secondaire.
Localisez le menu déroulant Actions du type de ressources et sélectionnez Nouvelle ressource.
La page Nouvelle ressource s'affiche.
Pour ajouter l'adaptateur Listener JMS, sélectionnez Listener JMS dans le menu déroulant (comme indiqué à la Figure 11–11) et cliquez sur Nouveau.
Configurez les paramètres suivants sur la page Paramètres de ressource puis cliquez sur suivant.
Type de destination. Cette valeur est en général définie sur File d’attente (les rubriques ne sont en général pas applicables car il y a un abonné et, potentiellement, plusieurs éditeurs).
Propriétés JNDI du contexte initial. Définissez l'ensemble des propriétés qui sont utilisées pour construire le contexte JNDI initial.
Vous devez définir les paires nom/valeur suivantes :
java.naming.factory.initial. Spécifiez le nom de la classe (package compris) de l'Initial Context Factory (Fabrique de contexte initiale) pour le Service Provider JNDI.
java.naming.provider.url. Spécifiez l'URL de la machine exécutant le service JNDI.
Vous pouvez avoir à définir des propriétés supplémentaires. La liste des propriétés et valeurs doit correspondre à celles indiquées sur la page des paramètres JMS sur le serveur JMS. Par exemple, pour fournir les informations d'authentification et la méthode de liaison, il est possible que vous deviez spécifier les propriétés d'exemple suivantes :
java.naming.security.principal : DN de liaison (par exemple, cn=Directory manager).
java.naming.security.authentication : méthode de liaison (par exemple, simple).
java.naming.security.credentials : mot de passe.
Nom JNDI de la fabrique de connexion. Saisissez le nom d'une fabrique de connexion tel que défini sur le serveur JMS.
Nom JNDI de destination. Saisissez le nom d'une destination tel que défini sur le serveur JMS.
Utilisateur et Mot de passe. Saisissez le nom et le mot de passe du compte de l'administrateur qui demande de nouveaux événements de la file d'attente.
Support de messagerie fiable. Sélectionnez LOCAL (transactions locales). Les autres options ne sont pas applicables pour la synchronisation des mots de passe.
Mappage des messages. Entrez java:com.waveset.adapter.jms.PasswordSyncMessageMapper. Cette classe convertit les messages provenant du serveur JMS en un format pouvant être utilisé par le flux de travaux Synchronize User Password.
Sur la page de l'assistant Attributs de compte (Figure 11–12), cliquez sur Ajouter un attribut et mappez les attributs suivants, qui sont mis à la disposition de l'adaptateur Listener JMS par PasswordSyncMessageMapper.
IDMAccountId : cet attribut est résolu par PasswordSyncMessageMapper, sur la base des attributs resourceAccountId et resourceAccountGUID transmis dans le message JMS.
password: mot de passe chiffré transféré dans le message JMS.
Cliquez sur Suivant.
La page de l'assistant Modèle d’identité s'ouvre comme indiqué à la Figure 11–13. Vous remarquerez que les attributs que vous avez ajoutés à l'étape précédente sont disponibles dans la section des mappages d’attributs de l'assistant Ressources (Figure 11–13).
Cliquez sur Suivant et configurez les options de la page Paramètres du système d’identité qui doivent l'être.
Pour plus d'informations sur le paramétrage de l'adaptateur de ressources Listener JMS, voir le guide Sun Identity Manager 8.1 Resources Reference.
À la réception d'une notification de changement de mot de passe, Identity Manager lance le flux de travaux Synchronize User Password (Synchroniser le mot de passe de l'utilisateur). Le flux de travaux Synchronize User Password par défaut contrôle l'afficheur ChangeUserPassword puis l'enregistre de nouveau. Le flux de travaux traite ensuite tous les comptes de ressource (à l'exception de la ressource Windows qui a envoyé la notification de changement de mot de passe initiale). Pour finir, Identity Manager envoie à l'utilisateur un e-mail indiquant si le changement de mot de passe a réussi sur toutes les ressources.
Pour utiliser l'implémentation par défaut du flux de travaux Synchronize User Password, assignez-le en tant que règle de traitement pour l'instance d'adaptateur Listener JMS en question. Les règles de traitement peuvent être assignées quand vous configurez le Listener JMS pour la synchronisation (voir Configuration d'Active Sync).
Pour modifier le flux de travaux, copiez le fichier $WSHOME/sample/wfpwsync.xml et effectuez les modifications de votre choix. Importez ensuite le flux de travaux modifié dans Identity Manager.
Les modifications susceptibles d'être apportées au flux de travaux par défaut peuvent porter sur :
les entités qui sont averties lorsqu'un mot de passe est changé ;
ce qui se passe si un compte Identity Manager est introuvable ;
la façon dont les ressources sont sélectionnées dans le flux de travaux ;
si autoriser les changements de mot de passe depuis Identity Manager.
Pour des informations détaillées sur l'utilisation des flux de travaux, voir le Chapitre 1, Workflow du Sun Identity Manager Deployment Reference.
Identity Manager fournit deux modèles d'e-mails pouvant informer les utilisateurs de l'issue d'un changement de mot de passe sur les différentes ressources.
Ces modèles sont les suivants :
Avis de synchronisation du mot de passe,
Avis d’échec de la synchronisation du mot de passe.
Ces deux modèles doivent être mis à jour pour fournir des informations spécifiques à l'entreprise sur ce que doivent faire les utilisateurs quand ils ont besoin d'assistance supplémentaire. Pour plus d'informations, voir Personnalisation des modèles d'e-mails au Chapitre 4Configuration des objets d'administration d'entreprise.
Identity Manager peut utiliser Java Message Service (JMS) pour recevoir les notifications de changement de mot de passe de la servlet PasswordSync. En plus de garantir la livraison, JMS est en mesure de délivrer les messages à plusieurs systèmes.
Pour plus d'informations sur cet adaptateur, voir Sun Identity Manager 8.1 Resources Reference.
Cette section précise, en utilisant un exemple de scénario, les instructions à suivre pour configurer PasswordSync avec un serveur JMS Sun.
Ces informations sont organisées comme suit :
Un cas d'utilisation typique (simple) de la configuration de PasswordSync avec un serveur JMS est celui dans lequel les utilisateurs sont autorisés à changer leurs mots de passe sous Windows et où Identity Manager prélève les nouveaux mots de passe et met à jour les comptes utilisateur avec les nouveaux mots de passe sur un serveur Sun Directory.
L'environnement suivant a été configuré pour ce scénario :
Windows Server 2003 Enterprise Edition– Active Directory ;
Sun JavaTM System Identity Manager 6.0 2005Q4M3 ;
MySQL exécuté sous SUSE Linux 10.0 ;
Tomcat 5.0.28 exécuté sous SUSE Linux 10.0 ;
Sun Java System Message Queue 3.6 SP3 2005Q4 exécuté sous SUSE Linux 10.0 ;
Sun Java System Directory Server 5.2 SP4 exécuté sous SUSE Linux 10.0 ;
Java 1.5 (Java 5.0).
Les fichiers suivants ont été copiés du répertoire common/lib de Tomcat pour activer JMS et JNDI :
jms.jar (de la file d'attente de messages Sun),
fscontext.jar (de la file d'attente de messages Sun),
imq.jar (de la file d'attente de messages Sun),
jndi.jar (du SDK Java).
Cette section contient les instructions à suivre pour créer et stocker les objets administrés suivants, indispensables pour que le scénario d'exemple fonctionne correctement :
les objets Fabrique de connexion,
les objets Destination.
Vous pouvez stocker les objets administrés dans un annuaire LDAP ou dans un fichier. Si vous utilisez un fichier, toutes les instances de ce fichier doivent être identiques.
Pour les instructions, voir
Les instructions de cette section supposent que vous avez installé la file d'attente de messages Sun Java System Message Queue (les outils nécessaires figurent dans le répertoire bin/ de votre installation de Message Queue).
Vous pouvez utiliser l'interface graphique administrative de Message Queue administrative imqadmin ) ou l'outil de ligne de commande imqobjmgr) pour créer ces objets administrés. Les instructions suivantes utilisent l'outil de ligne de commande.
PasswordSync et le Listener JMS peuvent être configurés pour utiliser les objets administrés stockés dans un annuaire LDAP. La Figure 11–14 illustre le processus. La servlet PasswordSync et le listener JMS doivent tout deux récupérer les paramètres de fabrique de connexion et de destination de l'annuaire LDAP pour envoyer et recevoir des messages.
Cette section explique l'utilisation de l'outil de ligne de commande de Message Queue (imqobjmgr) pour stocker les objets administrés dans un annuaire LDAP.
Ouvrez l'outil de ligne de commande de Message Queue (imqobjmgr) et saisissez les commandes de Stockage des objets Fabrique de connexion pour stocker les objets Fabrique de connexion.
#> ./imqobjmgr add -l "cn=mytestFactory" -j "java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory" -j "java.naming.provider.url=ldap://gwenig.coopsrc.com:389/ou=sunmq,dc=coopsrc,dc=com" -j "java.naming.security.principal=cn=directory manager" -j "java.naming.security.credentials=password" -j "java.naming.security.authentication=simple" -t qf -o "imqAddressList=mq://gwenig.coopsrc.com:7676/jms" Adding a Queue Connection Factory object with the following attributes: imqAckOnAcknowledge [Message Service Acknowledgement of Client Acknowledgements] ... imqSetJMSXUserID [Enable JMSXUserID Message Property] false Using the following lookup name: cn=mytestFactory The object’s read-only state: false To the object store specified by: java.naming.factory.initial com.sun.jndi.ldap.LdapCtxFactory java.naming.provider.url ldap://gwenig.coopsrc.com:389/ou=sunmq,dc=coopsrc,dc=com java.naming.security.authentication simple java.naming.security.credentials netscape java.naming.security.principal cn=directory manager Object successfully added. |
Dans les Stockage des objets Fabrique de connexion imqAddressList définit le nom d'hôte du serveur/courtier JMS (gwenig.coopsrc.com ), le port (7676) et la méthode d'accès (jms).
Dans l'outil de ligne de commande de Message Queue (imqobjmgr), saisissez les commandes de Stockage des objets Destination pour stocker les objets Destination.
#> ./imqobjmgr add -l "cn=mytestDestination" -j "java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory" -j "java.naming.provider.url=ldap://gwenig.coopsrc.com:389/ou=sunmq,dc=coopsrc,dc=com" -j "java.naming.security.principal=cn=directory manager" -j "java.naming.security.credentials=password" -j "java.naming.security.authentication=simple" -t q -o "imqDestinationName=mytestDestination" Adding a Queue object with the following attributes: imqDestinationDescription [Destination Description] A Description for the Destination Object imqDestinationName [Destination Name] mytestDestination Using the following lookup name: cn=mytestDestination The object’s read-only state: false To the object store specified by: java.naming.factory.initial com.sun.jndi.ldap.LdapCtxFactory java.naming.provider.url ldap://gwenig.coopsrc.com:389/ ou=sunmq,dc=coopsrc,dc=com java.naming.security.authentication simple java.naming.security.credentials netscape java.naming.security.principal cn=directory manager Object successfully added. |
Vous pouvez contrôler l'objet nouvellement créé avec une ldapsearch ou un navigateur LDAP.
La section consacrée au stockage des objets administrés sur un serveur LDAP est terminée. Ignorez la section suivante, qui explique comment stocker les objets administrés dans un fichier et allez directement à la section consacrée à la Configuration de l'adaptateur Listener JMS pour ce scénario.
PasswordSync et le Listener JMS peuvent être configurés pour utiliser les objets administrés stockés dans un fichier. Si vous ne stockez pas les objets administrés sur un serveur LDAP (Stockage des objets administrés dans un annuaire LDAP), suivez les instructions de cette section.
Ouvrez l'outil de ligne de commande de Message Queue (imqobjmgr) et saisissez les commandes de Stockage des objets Fabrique de connexion pour stocker les objets Fabrique de connexion et indiquer un nom de recherche.
#> ./imqobjmgr add -l "mytestFactory" -j "java.naming.factory.initial= com.sun.jndi.fscontext.RefFSContextFactory" -j "java.naming.provider.url=file:///home/gael/tmp" -t qf -o "imqAddressList=mq://gwenig.coopsrc.com:7676/jms" Adding a Queue Connection Factory object with the following attributes: imqAckOnAcknowledge [Message Service Acknowledgement of Client Acknowledgements] ... imqSetJMSXUserID [Enable JMSXUserID Message Property] false Using the following lookup name: mytestFactory The object’s read-only state: false To the object store specified by: java.naming.factory.initial com.sun.jndi.fscontext.RefFSContextFactory java.naming.provider.url file:///home/gael/tmp Object successfully added. To specify a destination: #> ./imqobjmgr add -l "mytestQueue" -j "java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory" -j "java.naming.provider.url=file:///home/gael/tmp" -t q -o "imqDestinationName=myTestQueue" Adding a Queue object with the following attributes: imqDestinationDescription [Destination Description] A Description for the Destination Object imqDestinationName [Destination Name] myTestQueue Using the following lookup name: mytestQueue The object’s read-only state: false To the object store specified by: java.naming.factory.initial com.sun.jndi.fscontext.RefFSContextFactory java.naming.provider.url file:///home/gael/tmp Object successfully added. |
Par défaut, le courtier Sun Message Queue permet de créer automatiquement la destination de la file d'attente (voir config.properties, où la valeur par défaut de imq.autocreate.queue est true).
Si la destination de la file d'attente n'est pas créée automatiquement, vous devez créer l'objet Destination sur le courtier en utilisant la commande indiquée dans Création de la destination sur le courtier (où myTestQueue est la destination).
name (Queue name): #> cd /opt/sun/mq/bin #>./imqcmd create dst -t q -n mytestQueue Username: <admin> Password: <admin> Creating a destination with the following attributes: Destination Name mytestQueue Destination Type Queue On the broker specified by: ------------------------- Host Primary Port ------------------------- localhost 7676 Successfully created the destination. |
Vous pouvez stocker les objets administrés dans un annuaire ou dans un fichier :
Dans un annuaire : utiliser un annuaire permet de stocker les objets Fabrique de connexion et Destination de manière centralisée.
Quand vous utilisez un annuaire, ces objets administrés sont stockés sous la forme d'entrées d'annuaire.
Si la servlet PasswordSync d'Identity Manager et le serveur d'Identity Manager ne sont pas la même machine, chacune des machines doit pouvoir accéder au fichier .bindings. Vous pouvez répéter deux fois (une par machine) la création des objets administrés ou copier le fichier .bindings dans l'emplacement approprié sur chaque machine.
Dans un fichier : si la servlet PasswordSync d'Identity Manager et le serveur d'Identity Manager sont exécutés sur le même serveur (ou si vous n'avez pas d'annuaire disponible), vous pouvez stocker les objets administratifs dans un fichier.
Lorsque vous utilisez un fichier, les deux objets administrés sont stockés dans un unique fichier (appelé .bindings sous à la fois Windows et UNIX), sous le répertoire que vous spécifiez pour le java.naming.provider.url (par exemple, file:///c:/temp sous Windows ou file:///tmp sous UNIX).
Configurez l'adaptateur Listener JMS sur le serveur d'application. Suivez les instructions de la section Ajout et configuration d'un adaptateur Listener JMS.
Configurez ensuite le listener JMS pour la synchronisation. Active Sync est requis si vous utilisez JMS, mais n'est pas utilisé pour les connexions directes.
Dans l'interface administrateur, cliquez sur Ressources dans le menu.
Dans la Liste des ressources, cochez la case à cocher Listener JMS.
Dans la liste Actions de ressource, sélectionnez Éditer la stratégie de synchronisation.
La page Éditer la stratégie de synchronisation relative à la ressource Listener JMS s'ouvre (Figure 11–15).
Sous Paramètres communs, localisez Administrateur mandataire et sélectionnez pwsyncadmin (cet administrateur est associé à un formulaire vide).
Sous Paramètres communs, localisez Règle de traitement et sélectionnez Synchronize User Password (Synchroniser le mot de passe de l'utilisateur) dans la liste. Le flux de travaux Synchronize User Password par défaut accepte chaque demande provenant de l'adaptateur Listener JMS, contrôle l'afficheur ChangeUserPassword puis enregistre de nouveau l'afficheur ChangeUserPassword.
Indiquez dans la zone Chemin d’accès du fichier le chemin du répertoire dans lequel les fichiers journaux actif et archivés doivent être créés.
À des fins de débogage, définissez le Niveau du journal sur 4 pour générer un journal détaillé.
Cliquez sur Enregistrer.
Vous pouvez utiliser l'application Windows PasswordSync Configuration pour déboguer le côté Windows de votre configuration.
Démarrez l'application de configuration de PasswordSync si elle n'est pas déjà en cours d'exécution.
Par défaut, l'application de configuration est installée dans Program Files -> Sun Java System Identity Manager PasswordSync -> Configuration.
Quand la boîte de dialogue de configuration de PasswordSync s'affiche, cliquez sur le bouton Essai.
Si vous utilisez JMS, la boîte de dialogue Vérifier la connexion s'affiche avec un message indiquant si la vérification de la connexion s'est terminée avec succès.
Cliquez sur Fermer pour fermer la boîte de dialogue Vérifier la connexion.
Cliquez sur OK pour fermer la boîte de dialogue de configuration de PasswordSync.
L'adaptateur Listener JMS s'exécute ensuite en mode débogage et génère des informations de débogage dans un fichier, similaire à celui de la figure suivante.
PasswordSync écrit tous les échecs dans l'Observateur d'événements de Windows (si vous avez besoin d'aide pour utiliser l'Observateur d'événements, reportez-vous à l'aide de Windows). Le nom de la source pour les entrées du journal des erreurs est PasswordSync.
Pour toute information sur le dépannage de PasswordSync sous Windows, voir le Sun Identity Manager 8.1 System Administrator’s Guide.
Pou désinstaller l'application PasswordSync, allez au Panneau de configuration de Windows et sélectionnez Ajout/Suppression de programmes. Sélectionnez ensuite Sun Java System Identity Manager PasswordSync et cliquez sur Supprimer.
PasswordSync peut aussi être désinstallé (ou réinstallé) en chargeant le support d'installation d'Identity Manager et en cliquant sur l'icône pwsync\IdmPwSync.msi.
Vous devez redémarrer votre système pour compléter le processus.
Cette section répond à certaines questions fréquemment posées sur PasswordSync.
Question :PasswordSync peut-il être implémenté sans Java Messaging Service ?
Réponse :Oui, mais procéder de la sorte élimine les avantages découlant de l'utilisation d'un JMS pour suivre les événements de changement de mot de passe.
Pour implémenter PasswordSync sans JMS, lancez l’application de configuration avec l’indicateur suivant :
Configure.exe -direct
Lorsque l’indicateur -direct est spécifié, l’application de configuration affiche l’onglet User (Utilisateur).
Si vous implémentez PasswordSync sans JMS, il est inutile de créer un adaptateur Listener JMS. Vous pouvez par conséquent ignorer les procédures listées dans la section Déploiement de PasswordSync sur le serveur d'application. Si vous souhaitez configurer des notifications, vous devrez peut être modifier le flux de travaux Change User Password (Changer le mot de passe utilisateur).
Si vous exécutez ensuite l'application de configuration sans spécifier l'indicateur -direct, PasswordSync aura besoin d'un JMS pour être configuré. Relancez l’application avec l’indicateur -direct pour éviter de nouveau le JMS.
PasswordSync peut-il être utilisé en conjonction avec d'autres filtres de mots de passe Windows utilisés pour appliquer les stratégies de mot de passe personnalisées ?
Réponse :Oui, vous pouvez utiliser PasswordSync en conjonction avec d'autres filtres de mots de passe _WINDOWS_. PasswordSync devra toutefois être le dernier filtre de mots de passe listé dans la valeur de registre Notification Package (Package de notification).
Vous devez utiliser le chemin de registre suivant :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Notification Packages (value of type REG_MULTI_SZ)
Par défaut, le programme d'installation place l'intercepteur de mots de passe Identity Manager en fin de liste, mais si vous avez installé le filtre de mots de passe personnalisé après l'installation, vous devrez déplacer lhpwic à la fin de la liste Notification Packages (Packages de notification).
Vous pouvez utiliser PasswordSync en conjonction avec d'autres stratégies de mot de passe Identity Manager. Lorsque les stratégies sont contrôlées sur le côté serveur d'Identity Manager, toutes les stratégies de mot de passe de ressource doivent réussir pour que la synchronisation du mot de passe soit transmise à d'autres ressources. C'est pourquoi vous devez rendre la stratégie de mot de passe Windows native aussi restrictive que la plus restrictive des stratégies de mot de passe définies dans Identity Manager.
Le DLL intercepteur de mots de passe ne met pas en œuvre de stratégies de mot de passe.
La servlet PasswordSync peut-elle être installée sur un serveur d'application autre qu'Identity Manager ?
Réponse :Oui. La servlet PasswordSync a besoin des fichiers jar spml.jar et idmcommon.jar en plus de tous les fichiers jar requis par l'application JMS.
Question :Le service PasswordSync envoie-t-il les mots de passe au serveur lh en texte clair ?
Réponse :Même si les pratiques recommandées préconisent d'exécuter PasswordSync sur SSL, toutes les données sensibles sont chiffrées avant d'être envoyées au serveur Identity Manager.
Pour toute information, voir Configuration de PasswordSync pour SSL.
Question :Pourquoi certains changements de mot de passe résultent-ils en com.waveset.exception.ItemNotLocked ?
Réponse :Si vous activez PasswordSync, un changement de mot de passe (même initié depuis l'interface utilisateur) se traduit par un changement de mot de passe sur la ressource, ce qui fait que la ressource contacte Identity Manager.
Si vous configurez correctement la variable de flux de travaux passwordSyncThreshold, Identity Manager examine l'objet Utilisateur et décide qu'il a déjà géré le changement de mot de passe. Cependant, si l'utilisateur ou l'administrateur effectue un autre changement de mot de passe pour le même utilisateur au même moment, l'objet Utilisateur peut être verrouillé.