À l’aide du module PowerShell ActiveDirectory, vous pouvez interroger les groupes AD avec Get-AdGroup, ajouter, mettre à jour et supprimer des groupes et des membres de groupe. Dans ce billet de blog, vous allez apprendre un peu sur les cmdlets PowerShell pour les groupes Active Directory, avec de nombreux exemples à titre de référence.
Cmdlets pour les groupes Active Directory
Une fois que vous avez installé le module PowerShell ActiveDirectory, vous trouverez quelques cmdlets disponibles pour gérer les groupes.
Cmdlet Name | Description |
Add-ADGroupMember | Used to add members to an AD group. |
Add-ADPrincipalGroupMembership | Used to add an AD principal to AD groups. |
Get-ADGroup | Used to return a group or groups from AD. |
Get-ADGroupMember | Used to return the members of an AD group. |
Get-ADPrincipalGroupMembership | Used to get the groups an AD principal is a member of. |
New-ADGroup | Used to create a new AD group. |
Remove-ADGroup | Used to delete an AD group. |
Remove-ADGroupMember | Used to remove members from an AD group. |
Remove-ADPrincipalGroupMembership | Used to remove an AD principal from AD groups. |
Set-ADGroup | Used to set the properties of an AD group. |
En utilisant ces cmdlets et un peu de PowerShell kung-fu, vous pouvez gérer tous les aspects du groupe Active Directory avec PowerShell.
Trouvez les membres d’un groupe avec Get-ADGroupMember
La cmdlet Get-AdGroupMember
retourne tous les membres d’un groupe.
Alternativement, vous pouvez faire référence à la propriété memberOf
d’un utilisateur particulier en utilisant la cmdlet Get-Aduser
. Pour un rappel sur la façon de construire des filtres, consultez L’apprentissage des filtres Active Directory et LDAP dans PowerShell.
Deux exemples sont donnés ci-dessous.
Cela retourne une collection d’objets ADPrincipal.
Exportez les membres d’un groupe vers un fichier CSV.
Cela exporte le prénom, le nom de famille et l’adresse e-mail de chaque utilisateur. Passez les résultats de Get-ADGroupMember
à Get-ADUser
car ce sont des objets ADPrincipal qui n’ont pas toutes les propriétés des objets ADUser.
Remarquez l’utilisation du paramètre
NoTypeInformation
deExport-CSV
pour garantir que le fichier CSV est compatible avec d’autres applications.
Recherchez des groupes sans membres avec Get-ADGroup
Utilisez Get-AdGroup
pour rechercher des groupes en utilisant des filtres. Deux exemples ci-dessous.
Créez un nouveau groupe de sécurité avec New-ADGroup
Vous créez un nouveau groupe de sécurité en utilisant la commande New-AdGroup
.
Si aucun paramètre Path
n’est fourni, le nouveau groupe sera créé dans le conteneur Users. La portée du groupe doit être soit DomainLocal
, Global
ou Universal
.
Créez un nouveau groupe de distribution avec New-ADGroup
Utilisez à nouveau New-AdGroup
pour créer un groupe de distribution. Cette fois, choisissez une GroupCategory
de Distribution
.
Ajoutez des membres à un groupe avec Add-ADGroupMember
L’ajout d’utilisateurs à un groupe Active Directory avec PowerShell peut être effectué en utilisant la cmdlet Add-AdGroupMember
ou la cmdlet Add-ADPrincipalGroupMembership
.
Cette commande spécifie le groupe comme Identity.
Cette commande spécifie le principal AD comme Identity.
Écrivez dans la propriété Notes
d’un groupe avec Set-AdGroup
Le champ étiqueté Notes dans ADUC est représenté par la propriété Info
renvoyée par Get-AdGroup
.
Tout d’abord, trouvez le groupe à modifier, définissez la propriété Info
puis utilisez Set-AdGroup
pour appliquer la modification à AD.
Supprimez les membres du groupe avec Remove-ADGroupMember
Comme tous les cmdlets PowerShell, vous pouvez utiliser le paramètre Confirm
pour être invité avant qu’une modification soit effectuée. Ce comportement s’applique également aux cmdlets Remove-AdGroupMember
et Remove-ADPrincipalGroupMembership
.
Vous pouvez supprimer les membres du groupe sans confirmation ci-dessous.
Ou vous pouvez choisir de supprimer les membres du groupe avec confirmation en utilisant le paramètre Confirm
.
Supprimez un groupe avec Remove-ADGroup
Supprimez un groupe sans confirmation et avec confirmation.
Renommez un groupe avec Rename-ADObject
Vous pouvez renommer un groupe en une seule ligne en utilisant Rename-ADObject
.
Obtenez le nombre de groupes avec Get-ADGroup
Do you need to find the total numbers of groups returned via Get-AdGroup
? Use the Count
property.
Find groups with a manager with Get-ADGroup
Filter all groups that have a manager assigned to them with Get-AdGroup
and a well-crafted LDAP filter.
Il n’y a pas d’équivalent PowerShell pour ce filtre.
Trouver des groupes gérés par un utilisateur spécifique avec Get-ADGroup
Améliorez vos compétences en filtrage et trouvez tous les groupes gérés par un utilisateur spécifique en utilisant soit un filtre PowerShell, soit un filtre LDAP.
Définir le responsable du groupe avec Set-ADGroup
L’onglet Managed By dans ADUC pour les groupes vous permet de désigner une personne responsable de l’adhésion au groupe. Cela ne signifie pas automatiquement que le responsable peut modifier l’adhésion au groupe. Pour que cela soit possible, les autorisations de sécurité doivent être modifiées sur la propriété Member du groupe en question.
Le fait de cocher la case Le gestionnaire peut mettre à jour la liste d’adhésion pour un groupe dans Utilisateurs et ordinateurs Active Directory (ADUC) modifie les autorisations pour permettre cela.

Utilisez Set-ADGroup
pour définir l’attribut ManagedBy:
La mise à jour de la liste de contrôle d’accès nécessite quelques étapes supplémentaires. Le code suivant accorde à l’utilisateur Kristin Diaz la capacité de gérer l’adhésion au groupe. bf9679c0-0de6-11d0-a285-00aa003049e2 est le GUID pour la propriété Member
du groupe.
Si Kristin est également définie comme responsable du groupe, la case sera cochée. Sinon, Kristin pourra toujours gérer l’adhésion au groupe mais ne sera pas affichée dans ADUC comme responsable.
Trouvez les mots de passe divulgués et non sécurisés dans votre Active Directory en les vérifiant par rapport à la liste des mots de passe du NCSC.
Trouvez tous les groupes de sécurité
Listez tous les groupes de sécurité dans Active Directory avec PowerShell en limitant votre requête de recherche aux seuls groupes de sécurité avec ces deux exemples. Vous vous demandez quel est ce filtre LDAP ? Apprenez tout sur les filtres LDAP.
Trouvez les groupes de distribution
Utilisez PowerShell pour lister les groupes Active Directory (distribution) qui excluent les groupes de sécurité en utilisant ces deux exemples.
Trouvez l’appartenance à un groupe pour un utilisateur avec Get-ADPrincipalGroupMembership
Notez que cette commande nécessite un accès à un catalogue global.
Trouvez les groupes dans une OU, sans inclure les sous-OU
Utilisez le paramètre SearchBase
pour limiter votre recherche à une seule OU en utilisant ces deux exemples.
Trouvez les groupes dans une OU, en incluant les sous-OU
Vous devez trouver tous les groupes dans les sous-OU ? Utilisez une SearchScope
de SubTree
.
Résumé
Cela conclut notre démonstration basée sur des exemples de gestion des groupes AD avec PowerShell. Essayez quelques-uns de ces exemples dans votre organisation et commencez à automatiser !