FIM Custom Activity – Guide de création (partie 1)

Quel que soit le projet FIM que vous êtes en train ou allez conduire, il est quasiment certain que vous aurez besoin de développer une ou plusieurs activités de Workflow personnalisées. Que ce soit pour palier un manque de fonctionnalité de FIM ou pour répondre à un cas particulier relatif à votre environnement, le développement que Microsoft annonçait comme terminé avec le provisioning déclaratif de FIM se mue souvent en un besoin de développement de ces fameuses Custom Activities !

Mais d’abord c’est quoi une Custom Activity ?

FIM Service permet de déclencher des actions sur des ressources du portail FIM sur la base de deux types de déclencheurs : une demande faite au web service FIM (création, modification, suppression ou lecture d’une ressource) ou bien sur le changement d’état d’appartenance à un ensemble FIM (les SET). Ces déclencheurs sont représentés dans le portail FIM par des règles de stratégie de gestion (les fameuses MPR) qui ne sont pas des régles d’octroi de droits (la case Accorde une autorisation est décochée). Ces règles peuvent faire appel à des Workflows constitués d’activités reparties dans trois grands types : Authentification, Autorisation et Action.

Plusieurs activités sont disponibles à l’installation du portail FIM (Activité de règles de synchronisation, Notification, Approbation, Activité de réinitialisation de mot de passe Active Directory, etc.). Comme tout est ressource dans le portail, il est possible d’ajouter ses propres activités. Pour cela il est nécessaire de sortir son bon vieux manuel de C#, d’installer Visual Studio 2010 (2008 suffit puisque .NET Framework 3.5 est nécessaire), de préparer un bon litre de café et de s’armer d’un bon tuto (j’espère que celui-ci vous satisfera).

Read More

Ajuster la durée de rétention des ressources dans le portail FIM

Par défaut la durée de rétention des ressources système est de 30 jours, cette valeur ne peut être modifiée pas même par les administrateurs du portail sans avoir au préalable créé une MPR appropriée. Cette durée de 30 jours peut provoquer un alourdissement de la base de données important selon le nombre de synchronisations et la fréquence de celles-ci. De manière générale une période de 48h est plus raisonnable, mais cette valeur doit être ajustée en fonction de vos besoins.

NOTE : La durée de rétention des ressources système permet de marquer toutes les ressources créées dans le portail d’une date d’expiration : cette date correspondant à la date de création plus la durée de rétention.

Read More

Sauvegarde et restauration de la configuration d’un serveur FIM Service

Microsoft fournit des Cmdlets Powershell permettant d’exporter et d’importer la configuration d’un serveur FIM Service. Ces commandes sont inclus dans le module FIM Automation pour Powershell et sont fort utile pour : sauvegarder la configuration, restaurer la configuration, migrer la configuration, ou encore exporter et importer des ressources dans le portail FIM.

Les Cmdlets disponibles sont les suivants :

Compare-FIMConfig : Compare les attributs de ressources FIM et retourne une liste des changements à effectuer.
ConvertFrom-FIMResource : Sérialise une ressource FIM et l’exporte sous forme d’un fichier XML (converti une ressource en XML).
ConvertTo-FIMResource : Désérialise une ressource FIM depuis un fichier XML donné (converti des données XML en une ressource).
Export-FIMConfig : Exporte les ressources FIM de configuration depuis FIM Service (appel au Web Service FIM).
Import-FIMConfig : Importe une liste de changement dans FIM Service en utilisant le Web Service.
Join-FIMConfig : Joint deux listes d’objets de type ressource FIM en utilisant un ou plusieurs critères de rapprochement.

Grâce à ces Cmdlets il est possible de faire une sauvegarde de la configuration de FIM Service ou de restaurer cette configuration. Il est possible également de migrer la configuration d’un serveur vers un autre, par exemple pour appliquer des changements effectués sur un serveur de développement sur un serveur de production.

Vous trouverez des exemples de script que j’ai écrit sur la page code source de ce site. Notamment les scripts s’inspirant des exemples du Technet et s’intitulant : Backup-FIM-Configuration et Restore-FIM-Configuration

Vous trouverez également de nombreux exemples sur les différents liens du technet et sur la FIM Scriptbox du Forum FIM :

ADFS 2.0 Attribute Store pour FIM 2010

Henrik Nilsson est un MVP FIM particulièrement efficace sur l’aspect Custom Activity (Worklfows personnalisés) , ses nombreuses interventions sur le Forum FIM 2010 et la publication de code source sur les Custom Activities m’ont permis de vraiment comprendre comment étendre les fonctionnalités de FIM.

Bon après les fleurs, revenons à cette actualité intéressante. Henrik Nilsson a participé à la création d’un module FIM 2010 permettant de communiquer avec ADFS 2.0

Ce module appelé ADFS 2.0 Attribute Store permet de remonter dans FIM des valeurs d’attributs via ADFS et de faire des claims d’identité depuis FIM.

Toutes les informations sur ce projet sur : http://fimattributestore.codeplex.com/

Réindexation des bases de données FIM 2010

Lorsqu’une base de données SQL traite de nombreuses transactions, il s’en suit une fragmentation des données, à la manière des informations écrites sur un disque dur. Dans le cas des bases de données FIM Service et FIM Synchronization Service utilisées par FIM 2010, cela peut entrainer un timeout lors du traitement des synchronisation ou lorsque l’on effectue des requêtes de recherche dans le portail FIM.

Pour éviter ce genre de désagrément il est fort utile de ré-indexer régulièrement les bases de données utilisées par FIM 2010. Et comme on est tous un peu fainéant, le mieux est encore de charger SQL de le faire tout seul avec un Job planifié.

Read More

Astuce pour tester les filtres XPath dans FIM 2010

N’étant pas un génie du langage XPath j’ai souvent besoin de tester mes filtres XPath pour vérifier leur bonne syntaxe.

Lorsque l’on définit les critères d’un Ensemble (ou Set), il existe plusieurs cas où une définition est impossible à décrire avec le formulaire, il est donc nécessaire d’écrire un filtre XPath et de l’insérer directement dans l’attribut Filter d’une Ressource de type Set (disponible dans les attributs étendus de la vue avancée) entre les balises <filter></filter>.

D’abord tenté par écrire un script PowerShell permettant de tester les filtres XPath, par manque de temps je me suis tourné vers une autre solution : utiliser  l’aperçu du formulaire des Ressources de type Search Scope .

Read More

FIM Synchronization Error : app-store-import-exception

Cette erreur peux survenir lors de l’exécution d’un profil d’Import du FIM Management Agent (FIMMA).

Cette erreur indique que lors de l’import des données de la base FIMService vers le Connector Space (CS) du FIMMA, le format des données ne correspond pas au schéma du CS.

Il suffit de rafraichir le schéma du FIMMA puis de faire un staging (Full Import) pour corriger le problème.

Une désynchronisation du schéma survint généralement lorsque par exemple on retire un attribut ou une ressource du schéma du portail FIM, et que cet attribut ou ressource était présent dans les flux d’attribut du FIMMA.

Comment configurer le Management Agent FIM 2010

Les services FIM synchronisent les informations entre le Portail FIM et le moteur de synchronisation via un connecteur spécifique : le FIM Management Agent.

La première étape avant de pouvoir gérer les identités dans le portail FIM consiste donc à paramétrer ce connecteur depuis la console de gestion des services de synchronisation FIM.

Read More

Installer FIM 2010 tout en français : Yes we can !

Forefront-IM2010_h_rgbComme beaucoup de produits pure IT, FIM est destiné à être déployé sur des OS anglais et toute la documentation que vous pourrez trouver sur le sujet n’existe que en anglais.

Pourtant il existe une loi en France qui oblige à déployer des solutions informatiques avec l’interface utilisateur en Français pour tous les organismes de l’administration et de l’éducation en France.

Si FIM est fourni avec les Languages Pack permettant de passer le portail FIM et le client pour Outlook dans plus de 10 langues différentes, reste à savoir si la solution peut être déployé sur des OS Français.

Comme dirait le regretté Pierre Desproges : J’ai testé pour vous !

Le résultat et le suivant :

  • Windows 2008 64bits FR ou Windows 2008 FR – OK
  • SQL Serveur 2008 64bits SP2 FR – OK
  • Windows SharePoint Server 3.0 FR – KO
  • Visual Studio 2008 FR ou Visual Studio 2010 FR – OK

Pour réussir l’installation de FIM Services and Portal avec WSS 3.0 FR il est nécessaire de mettre le pack de Langue English US, ce qui permet à l’assistant d’installation de trouver ces petits lors de la configuration du site SharePoint.

Je recommande plutôt de faire l’inverse : installer WSS 3.0 en anglais, installer FIM Services and Portal, puis passer le pack de langue Français sur SharePoint si vous voulez l’interface d’administration en français.

Pour avoir tester les deux méthodes, c’est cette dernière qui passe à tout les coups ;)

Se former sur Forefront Identity Manager 2010

Ramp Up - FIM 2010 Microsoft a mis en ligne récemment de la documentation technique destiné à mieux comprendre Forefront Identity Manager 2010. Les documents disponibles sont classées en trois grandes catégories :

  • des articles, expliquant les concepts de FIM
  • des vidéos, illustrant ces concepts
  • des labs, permettant d’implémenter et de mieux comprendre ces concepts

Les thèmes abordés le sont intelligemment et que vous soyez curieux de savoir ce que FIM peux faire pour vous ou désireux d’implémenter FIM, ces guides sont suffisamment complets pour répondre à bon nombres de questions.

Pour lire les articles suivez ce lien