Active Directory en ligne de commande : csvde, dsadd, dsmod, dsget et ldifde
- Loïs Dutour
Table of Contents
Gérer Active Directory en CLI plutôt que via l’interface graphique permet d’automatiser et de scripter les opérations répétitives. Ce mémo couvre les outils historiques de Windows Server : csvde, dsadd, dsmod, dsget et ldifde.
Import en masse avec csvde
csvde permet d’importer des objets AD depuis un fichier CSV.
Format du fichier CSV :
dn,objectClass,givenName,sn,sAMAccountName,userAccountControl
"CN=Jean DUPONT,OU=Utilisateurs,DC=infra,DC=lan",user,Jean,DUPONT,Jean.DUPONT,514
"CN=John DOE,OU=Utilisateurs,DC=infra,DC=lan",user,John,DOE,John.DOE,514
"CN=Jane DOE,OU=Utilisateurs,DC=infra,DC=lan",user,Jane,DOE,Jane.DOE,514
userAccountControl: 514= compte désactivé. Utilise512pour un compte actif.
Import :
csvde -i -f "C:\temp\import_users.csv"Création d’objets avec dsadd
Créer un groupe
dsadd group "CN=MonGroupe,OU=Utilisateurs,DC=infra,DC=lan" -samid MonGroupe -secgrp yes -scope g| Paramètre | Description |
|---|---|
-samid | Nom SAM du groupe |
-secgrp yes | Groupe de sécurité (sinon distribution) |
-scope g | Étendue globale (g = global, l = local, u = universel) |
Créer un ordinateur
dsadd computer "CN=DESKTOPXX,OU=Postes,DC=infra,DC=lan"Gestion des appartenances avec dsmod
Ajouter un utilisateur à un groupe
dsmod group "CN=MonGroupe,OU=Utilisateurs,DC=infra,DC=lan" -addmbr "CN=Jean DUPONT,OU=Utilisateurs,DC=infra,DC=lan"Retirer un utilisateur d’un groupe
dsmod group "CN=MonGroupe,OU=Utilisateurs,DC=infra,DC=lan" -rmmbr "CN=Jean DUPONT,OU=Utilisateurs,DC=infra,DC=lan"Consultation des appartenances avec dsget
Membres directs d’un groupe
dsget group "CN=MonGroupe,OU=Utilisateurs,DC=infra,DC=lan" -membersMembres récursifs (groupes imbriqués inclus)
dsget group "CN=MonGroupe,OU=Utilisateurs,DC=infra,DC=lan" -members -expandGroupes d’appartenance d’un utilisateur
dsget user "CN=Jane DOE,OU=Utilisateurs,DC=infra,DC=lan" -memberofAppartenance complète récursive
dsget user "CN=Jane DOE,OU=Utilisateurs,DC=infra,DC=lan" -memberof -expandModification en lot avec ldifde
ldifde permet des modifications complexes en une seule opération via un fichier .ldf.
Exemple – ajouter deux membres et en supprimer un dans le même groupe :
dn: CN=MonGroupe,OU=Utilisateurs,DC=infra,DC=lan
changetype: modify
add: member
member: CN=John DOE,OU=Utilisateurs,DC=infra,DC=lan
member: CN=Medhi TUNPEUX,OU=Utilisateurs,DC=infra,DC=lan
-
dn: CN=MonGroupe,OU=Utilisateurs,DC=infra,DC=lan
changetype: modify
delete: member
member: CN=Jean DUPONT,OU=Utilisateurs,DC=infra,DC=lan
-⚠️ Le tiret
-en fin de bloc et la ligne vide entre les blocs sont obligatoires, sans eux,ldifderetourne une erreur de parsing.
Import du fichier :
ldifde -i -f "C:\temp\GroupModif.ldf" -vLe flag -v active le mode verbose – utile pour déboguer.
Récapitulatif des outils
| Outil | Usage principal |
|---|---|
csvde | Import/export d’objets AD depuis un CSV |
dsadd | Création d’objets (groupes, utilisateurs, ordinateurs) |
dsmod | Modification d’objets existants |
dsget | Consultation des attributs et appartenances |
ldifde | Import/export et modifications complexes au format LDIF |
💡 Pour les environnements modernes, ces outils sont avantageusement remplacés par les cmdlets PowerShell du module
ActiveDirectory(New-ADUser,Add-ADGroupMember, etc.) qui offrent plus de flexibilité et une meilleure gestion des erreurs.