Rechercher et exporter des utilsateurs AD avec Powershell

Dans cet article nous allons voir comment utiliser la commande « get-aduser » pour rechercher des comptes ou réaliser un export personnalisé en csv.

La première commande permet de retrouver le compte dont le login est « pdupont ». Il peut y avoir aucune ou une réponse mais il ne peut y avoir plusieurs utilisateurs avec le même login.

Get-aduser –identity "pdupont" 

La commande suivante recherche tous les utilisateurs dont le prénom est « Philippe ». Elle peut donc contenir plusieurs réponses. Par exemple celles encadrées en vers ci-dessous :

Get-aduser –filter { givenname –eq "philippe"}

La commande suivante permet d’identifier l’ensemble des comptes désactivés dans notre domaine.

Get-ADUser -filter { enabled -eq $False }

De la même manière nous aurions pu rechercher l’ensemble des comptes actifs :

Get-aduser –filter { enabled –eq $true } 

Il est possible de limiter la recherche à une partie de l’annuaire en indiquant la valeur « -SearchBase ». Dans l’exemple ci-dessous nous nous limitons aux objets et sous objets contenu dans l’unité d’organisation « Utilisateurs ».

Get-ADUser -filter { enabled -eq $False } -SearchBase "OU=Utilisateurs,DC=AD1,DC=local"

Par défaut la commande get-aduser ne renvoie qu’une partie des propriétés de l’utilisateur. Il est possible d’en ajouter d’autres comme par exemple « EmployeeID ».

Get-aduser –identity "pdupont" –properties Name,Givenname,EmployeeID,Samaccountname

Néanmoins nous constatons dans l’image ci-dessus que les propriétés standards sont toujours présentes comme « DistinguishedName ».

Il est possible de remettre en forme le résultat précédent afin de ne conserver que les valeurs qui nous intéresse. Pour cela nous renvoyons le résultat de la première commande vers un « select-object » à l’aide de « | ».

Get-aduser –identity "pdupont" –properties Name,Givenname,EmployeeID,Samaccountname |select-object Name,Givenname,EmployeeID,Samaccountname  

Maintenant que le résultat nous parait mieux présenté, nous allons le renvoyer vers la commande Export-CSV afin de pouvoir récupérer le résultat dans un tableur en une ligne :

Get-aduser –identity "pdupont" –properties Name,Givenname,EmployeeID,Samaccountname |select-object Name,Givenname,EmployeeID,Samaccountname  | export-csv –path c:\temp\test.csv –delimiter ;

Et voilà comment réalisé un export simple en une seule ligne en Powershell !

 

Theme: 

Systeme: 

Annee: