Pour utiliser les commandes PowerShell du module AD, il est nécessaire d'importer le module avec la commande « Import-Module ActiveDirectory » |
Nous allons voir maintenant comment gérer les membres des groupes.
La commande « Get-ADGroupMember SG-Service-Informatique » permet d'obtenir la liste des objets (utilisateurs ou autres groupes) membre de ce groupe.
Dans l'exemple suivant le groupe global « SG-Service-Informatique » est membre du groupe « SDL-Service-Informatique ».
L'option "-recursive" permet de remplacer le groupe "SG-Service-Informatique" par ces membres.
La commande suivante permet d'ajouter l'utilisateur Alexis au groupe SG-Service-Achats.
Pour ajouter un utilisateur à un groupe, vous devez disposer du droit d'écriture sur le groupe et non sur l'utilisateur. Gardez cette remarque à l'esprit surtout dans un environnement multi-domaines si votre groupe n'est pas dans le même domaine que l'utilisateur. |
Add-ADGroupMember SG-Service-Achats -Members "CN=Alexis Test,OU=Utilisateurs,DC=htrab,DC=lan"
Comme vous pouvez le constater l'utilisateur a été ajouté au groupe.
Vous avez sans doute remarqué dans la commande précédente que nous avons utilisé le nom LDAP de l'utilisateur qui est un peu long. Vous avez la possibilité également d'utiliser une variable pour indiquer une liste de membres.
Par exemple la commande suivante, renvoie la liste de tous les utilisateurs dont le prénom commence par P et la stocke dans la variable $liste :
$liste=get-aduser –filter { givenname –like "P*" } –properties *
La commande suivante permet d'ajouter l'ensemble des utilisateurs de la variable $liste comme membre du groupe :
Add-ADGroupMember SG-Service-Achats -Members $liste
Vous pouvez voir le résultat dans la console « Utilisateurs et Ordinateurs Active Directory » :
La commande « Remove-ADGroupMember » permet de supprimer un membre d'un groupe. L'exemple suivant nous montre comment supprimer l'utilisateur Alexis du groupe « SG-Service-Achats » :
Remove-ADGRoupMember SG-SERVICE-ACHATS -Members "CN=ALEXIS TEST,OU=UTILISATEURS,DC=HTRAB,DC=LAN"
Si vous souhaitez utiliser la commande dans un script, il est préférable d'ajouter l'option « confirm :$false », sinon il vous faudra confirmer la modification.
Il est également possible d'ajouter certains types de groupe dans un autre groupe en respectant la portée des groupes. Le principe reste identique. |
L'exemple suivant nous montre comment ajouter le groupe global « SG-Service-Achats » comme membre du groupe de domaine local « SDL-R-Partage-Compta» :
Add-ADGroupMember SDL-R-Partage-Compta -Members "CN=SG-Service-Achats,OU=Securite_global,OU=Groupes,DC=htrab,DC=lan"