Interagir sur Active Directory avec DSGET, DSQUERY et DSMOD

Requêter ou modifier automatiquement Active Directory à partir de lignes de commandes est très utile pour obtenir instantanément des informations globales sur les utilisateurs plutôt que de les rechercher ou les modifier graphiquement via une MMC, ce qui est purement et simplement un gouffre de temps. Rappelez-vous que le but de l’administrateur est toujours de se simplifier la vie dès que possible.

Prenons quelques exemples. Premièrement, pour savoir qui n’a pas de klogon utilisé dans un groupe donné d’une société donnée, on tape la commande suivante dans une invite de commande :

C:>dsget group "CN=GRPG-XitimCorp,OU=Groupes,DC=xitim,DC=com" -members -s srv-2003
|dsget user -samid -loscr -s srv-2003>c:export.txt

Remarquez que l’on renvoie le résultat de la commande dans un fichier texte export.txt qu’on écrit à la racine de C:. Cela évite un potentiel remplissage massif et illisible de votre output DOS et vous permettra au besoin de vous servir des données du fichier ainsi exporté pour ensuite les importer – pourquoi pas – dans un fichier CSV à tabulations…

Autre exemple, pour savoir les utilisateurs qui ont un répertoire de base et dont le compte est désactivé on tape :

C:>dsget group "CN=GRPG-XitimCorp,OU=Groupes,DC=xitim,DC=com" -members -s srv-2003
|dsget user -samid -hmdir -disabled -s srv-2003>c:export2.txt

Dernier exemple, pour récupérer tous les noms, prénoms et bureaux de chaque employé d’une société, on tape la commande suivante :

dsget group "CN=GRPG-XitimCorp,OU=Groupes,DC=xitim,DC=com" -members -s srv-2003
|dsget user -fn -ln -office -s srv-2003>c:export3.txt

Comment fonctionnent ces commandes ?

dsget group récupère la liste des membres du groupe choisi dans une arborescence d’OU de l’annuaire LDAP. Cette liste est redirigée à dsget user (via le pipe) qui récupère à son tour les informations en y ajoutant des arguments Active Directory.

Voici un panel non exhaustif d’arguments quasi indispensables dans l’exploitation quotidienne…

[table id=20 /]

Modifier Active Directory

Avec les exemples ci-dessous, on ajoute un utilisateur et/ou une machine à un groupe spécifié. Bien évidemment, on pourrait ajouter 1000 personnes ou ordinateurs d’un coup et utiliser des wildcards pour pousser l’automatisation un cran plus loin. Notez que pour modifier votre annuaire, ces commandes seront une base de travail fondamentale, afin de créer, notamment, des groupes dynamiques.

Exemple : ajout de l’utilisateur john doe au groupe zorro

C:>dsquery user "CN=john doe,OU=Test,DC=xitim,DC=com"
| dsmod group "CN=zorro,OU=Test,DC=xitim,DC=com" -addmbr
dsmod réussi:CN=zorro,OU=Test,DC=xitim,DC=com

Exemple : ajout de la machine VM-XPSP2 au groupe zorro

C:>dsquery computer "CN=VM-XPSP2,OU=Test,DC=xitim,DC=com"
| dsmod group "CN=zorro,OU=Test,DC=xitim,DC=com" -addmbr
dsmod réussi:CN=zorro,OU=Test,DC=xitim,DC=com

Pour en savoir plus, je vous invite à consulter les pages dédiées de DSGET et DSQUERY sur le site de Microsoft.

Advertisements

,

  1. #1 par Neolinux38 le 17 janvier 2017 - 12 h 22 min

    Bonjour, c’est bien de dire tous ça, mais OU=Test , c’est quoi ça , on le trouve ou , et comment?

  2. #2 par Neolinux38 le 17 janvier 2017 - 12 h 51 min

    En utilisant ADD-AD c’est plus simple
    Add-ADGroupMember -Identity TestGroup1 -Member $_.UserName

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :