Vérifier rapidement l’état d’une relation d’approbation Active Directory

Envoyer

J’ai déjà mis à disposition un article pour vérifier, via un script, l’état de vos réplications Active Directory. Ce script est disponible ICI. Vous pouvez également consulter notre article sur le sujet « Audit Active Directory : Part 2 - les relations d'approbation ». Avec ce script, vous pouvez récupérer toutes les informations sur vos relations d'approbation et d’obtenir une synthèse au format CSV.

Toutefois, si vous voulez rapidement vérifier l’état d’un lien d’approbation entre deux domaines/forêts Active Directory, vous pouvez utiliser une simple requête WMI en PowerShell ou en VBS. Pour cela, nous allons utiliser le fournisseur WMI « TrustMon » (http://msdn.microsoft.com/en-us/library/windows/desktop/aa393921(v=vs.85).aspx), introduit avec Windows Server 2003 et plus particulièrement la classe « Microsoft_DomainTrustStatus » qui va permettre donc de recueillir des informations sur les relations d’approbation.

La requête WMI doit être exécutée idéalement sur le maître d’opération « Emulateur PDC ». Il va donc falloir l’identifier préalablement. Pour cela, exécuter la commande suivante « NETDOM query /domain:domaine.local fsmo ».

 

Une fois le maître d’opération « Emulateur PDC » identifié, vous pouvez exécuter la commande PowerShell suivante :

Get-WMIObject –Namespace root\MicrosoftActiveDirectory –Class Microsoft_DomainTrustStatus `
 –ComputerName emulateurPDC.domaine.local | ft TrustedDCName,TrustedDomain,TrustIsOk,TrustStatusString

 

 

La propriété « TrustIsOk » permet de valider l’état de la relation d’approbation et la propriété « TrustStatusString » va permettre d’avoir plus de détail sur une erreur éventuelle.

 

Si vous ne pouvez pas exécuter du PowerShell (ce qui serait quand même assez étonnant), vous pouvez utiliser le code ci-dessous au sein d’un fichier script VBS. Le script a été  généré à l’aide de l’outil Microsoft WMICodeCreator (http://www.microsoft.com/en-us/download/details.aspx?id=8572).

strComputer = "emulateurPDC.mondomaine.local" 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\MicrosoftActiveDirectory") 
Set colItems = objWMIService.ExecQuery( _
 "SELECT * FROM Microsoft_DomainTrustStatus",,48) 
For Each objItem in colItems 
 Wscript.Echo "-----------------------------------"
 Wscript.Echo "Microsoft_DomainTrustStatus instance"
 Wscript.Echo "-----------------------------------"
 Wscript.Echo "TrustedDCName: " & objItem.TrustedDCName
 Wscript.Echo "TrustedDomain: " & objItem.TrustedDomain
 Wscript.Echo "TrustIsOk: " & objItem.TrustIsOk
 Wscript.Echo "TrustStatusString: " & objItem.TrustStatusString
Next

Remarque : pensez à changer la variable strComputer en spécifiant votre contrôleur de domaine « Emulateur PDC ».

How to Find Active Directory Schema Update History by Using PowerShell

Mise à jour le Lundi, 29 Juillet 2013 21:11