Exporter graphiquement la configuration de FIMSync et MIMService – MIMConfigDocumenter

Shape, calendar, arrow

Description automatically generatedLes articles publiés sur ce blog, ont pour but de partager des connaissances/concepts techniques et sont tous réalisés dans un environnement de test. Par conséquent, les auteurs dégagent toute responsabilité, de quelque ordre que ce soit, quant aux dommages directs, indirects ou consécutifs résultant de l’utilisation des informations contenus dans ceux-ci.

 

Introduction

A notre connaissance, il n’existe pas de moyen simple de récupérer aisément/graphiquement, la configuration d’un MIM (Atrribute flow, set, workflow,MPR, custom attribute, etc…).

MIM Configuration Documenter apporte une aide dans la mesure où cet outil génère un rapport html qui contient toute la configuration FIMSync & MIMService. Comme nous le verrons, le rapport html n’est pas aisément exploitable, mais c’est toujours mieux que rien.

A noter que cet outil n’outrepasse en rien l’obligation d’avoir des sauvegardes régulières et exploitables des bases de données FIMSync et FIMService.

Prérequis

  1. Framework .NET 4.5 présent pour exécuter l’outil.
  2. Module PowerShell FIMAutomation installé sur le serveur MIM pour pouvoir exporter et générer le rapport sur la configuration de MIM Service.
  3. Navigateur web (ex: Microsoft Edge) pour visualiser le rapport.
  4. Télécharger la dernier version de l’outil MIMConfigDocumenter (téléchargez le fichier MIMConfigDocumenter.zip)
  5. S’assurer que le fichier zip téléchargé précédemment ne soit pas bloqué avant de le décompresser dans un répertoire vide.
  6. Téléchargez les fichiers :
    1. ExportSchema.ps1
    2. ExportPolicy.ps1

Installation

Téléchargez et décompressez le fichier MIMConfugDocumenter.zip (ex: c:\MIMConfigDocumenter)

Copiez les fichiers ExportSchema.ps1 et ExportPolicy.ps1 dans le répertoire décompressé MIMConfigDocumenter

  

FIMAutomation

Le module FIMAutomation est généralement installé lorsqu’on installe MIMService. Cependant, il arrive que celui-ci soit « écrasé » quand on déploie le module PowerShell LithnetRMA ou LithnetMIISAutomation.

Dans les étapes ci-dessous nous allons voir comment générer le module FIMAutomation nécessaire pour l’exécution du MIMConfigDocumenter.

Sur le serveur MIM, aller dans le répertoire C:\Program Files\Microsoft Forefront Identity Manager\2010\Service

Recherchez les fichiers :

  • Microsoft.ResourceManagement.Automation.dll
  • Microsoft.ResourceManagement.dll

Dans le répertoire C:\Windows\System32\WindowsPowerShell\v1.0\Modules\

Créer le répertoire FIMAutomation

Copiez les fichiers dll, indiqués précédemment, dans le répertoire FIMAutomation

Ouvrez une console PowerShell en Runas administrator et tapez les cmdlets suivantes :

A computer screen with text on it

Description automatically generated

La cmdlet New-ModuleManifest a permit de créer le module PowerShell FIMAutomation

Configuration

ExportPolicy.ps1

Editez le fichier ExportPolicy.ps1

Préfixez la ligne ci-dessous par un « # » afin de commenter celle-ci

Remplacer la ligne par:

A screenshot of a computer program

Description automatically generated

ExportSchema.ps1

Editez le fichier ExportSchema.ps1

Préfixez la ligne ci-dessous par un « # » afin de commenter celle-ci

Remplacez la ligne par:

A screenshot of a computer program

Description automatically generated

MIMConfigDocumenter.psm1

Editez le fichier MIMConfigDocumenter.psm1

Préfixez la ligne ci-dessous par « # »

Par défaut la cmdlet se base sur le DisplayName pour différencier les objets. Hors cet attribut n’est pas unique surtout dans le portail car certains types d’objets ont le même DisplayName, raison pour laquelle l’ObjectID a été choisi car lui est unique.

Remplacez la ligne par

A screen shot of a computer program

Description automatically generated

MIMConfigDocumenter

Dans le répertoire MIMConfigDocumenter\Data

Copiez le répertoire Contoso (ainsi que sa sous-arborescene)

Copiez le et renommez le en MyMIMConfig

Faites une copie du fichier InvokeDocumenter-Constoso.ps1

Renommez le fichier copié (ex : InvokeDocumenter-MIMConfig-PRD.ps1)

Éditez le fichier InvokeDocumenter-MIMConfig-PRD.ps1

Modifiez la ligne $pilotConfig

Remplacez Contoso\Pilot par MyMIMConfig\Pilot

A screenshot of a computer program

Description automatically generated

Export des configurations FIM Synchronizatoin et MIM Service

FIMSync

Lancez la console Synchronization Service Manager

Sélectionnez le menu File

Sélectionnez Export Server Configuration…

A screenshot of a computer

Description automatically generated

Cliquez sur OK

A screenshot of a computer error

Description automatically generated

L’export doit être réalisé dans un répertoire vide pour que celui-ci fonctionne

A screenshot of a computer

Description automatically generated

Le répertoire c:\temp contient un fichier MV.xml (MetaVerse) MA-xxxx.xml (un fichier pour chaque Management Agent configuré)

Copiez les fichier nouvellement créés dans c:\temp dans le répertoire C:\MIMConfigDocumenter\Data\MyMIMConfig\Pilot\SyncConfig

Pensez à purger les fichiers éventuellement présents dans le répertoire SyncConfig

MIM Service

Ouvrez un prompt PowerShel Runas administrator et tapez les cmdlets suivantes :

A screen shot of a computer program

Description automatically generated

A screen shot of a computer program

Description automatically generated

Copiez les fichiers de configuration policy.xml et schema.xml dans C:\MIMConfigDocumenter\Data\MyMIMConfig\Pilot\ServiceConfig

Les fichiers FIM/MIM Service schema et policy doivent impérativement porter les noms schema.xml et policy.xml.

Génération du rapport MIMConfigDocumenter

Exécution InvokeDocumenter-MIMConfig-PRD.ps1

Ouvrez un prompt PowerShell Runas administrator et tapez

A screenshot of a computer program

Description automatically generated

Récupération/analyse du rapport de configuration

Allez dans le répertoire c:\MIMConfigDocumenter

Dans le répertoire Report, créé par InvokeDocumenter-MIMConfig-PRD.ps1, lancez le fichier html correspondant au rapport de configuration.

Privilégiez un navigateur web récent

A screenshot of a computer

Description automatically generated
A screenshot of a computer

Description automatically generated

Conclusion

Comme indiqué en introduction le rapport html n’est pas aisément exploitable.

Cependant, l’outil nous permet également de faire des comparaisons de configuration entre différents environnements. Ce qui peut nous aider à détecter d’éventuels problèmes de configuration ou vérifier les modifications apportées depuis la dernière exécution. Dans notre cas, nous l’utilisons comme archive en cas de corruption/perte des backups des bases de données FIMSync et FIMService ou d’audit. Bien que cela n’empêchera pas de tout réinstaller/reconfigurer, cela permettra au moins de ne pas se poser la question de comment étaient configurés certains set, workflows, etc… avant la corruption

A ciao have fun !!!

Leave a Reply

Your email address will not be published. Required fields are marked *