PowerShell - Obtenez les membres du groupe AD et la liste des utilisateurs
PowerShell Get-AdGroupMember est utilisé pour obtenir des membres du répertoire actif. Vous pouvez obtenir des membres d'un groupe d'annonces en spécifiant le nom du groupe Active Directory. Le paramètre Identity spécifie le groupe Active Directory auquel accéder pour obtenir les membres du groupe.
En tant qu'administrateur système, nous devons interroger l'Active Directory pour obtenir une liste des utilisateurs du groupe AD et exporter les membres du groupe d'annonces au format CSV ou n'importe quel format de fichier.
Dans cet article, nous verrons comment utiliser l'applet de commande PowerShell Get-AdGroupMember pour obtenir des utilisateurs du groupe AD et des membres du groupe d'annonces.
PowerShell Get-AdGroupMember
La cmdlet Get-AdGroupMember récupère les membres d’un groupe Active Directory, à l’aide de la syntaxe ci-dessous.
Syntaxe
Get-ADGroupMember
[-AuthType <ADAuthType>]
[-Credential <PSCredential>]
[-Identity] <ADGroup>
[-Partition <String>]
[-Recursive]
[-Server <String>]
[<CommonParameters>]
Paramètres
-Identity : est utilisé pour spécifier un objet de groupe Active Directory en utilisant l'une des valeurs telles que distinguéName, GUID, SID ou SAMAccountName.
-Récursif : Récupère tous les membres de la hiérarchie du groupe.
-Serveur : spécifiez l'instance du service de domaine Active Directory à laquelle vous connecter en fournissant l'une des valeurs du nom de domaine ou du serveur d'annuaire correspondant.
PowerShell Obtenir les membres du groupe AD
Les groupes Active Directory peuvent contenir plusieurs groupes et avoir des utilisateurs associés à chaque groupe.
Pour obtenir une liste d'utilisateurs du groupe AD et obtenir des groupes du groupe AD, exécutez la commande ci-dessous
Get-ADGroupMember -Identity "Shell_Sales" | Select-Object Name | Sort-Object NameDans le script PowerShell ci-dessus, l'applet de commande Get-AdGroupMember utilise le paramètre Identity pour spécifier le nom du groupe d'annonces afin d'obtenir les membres et les utilisateurs du groupe d'annonces à partir de "Shell_Sales" groupe d'annonces et transmet le résultat à la commande Sélectionner un objet.
L'applet de commande Select-Object sélectionne le nom de l'objet et trie l'objet par nom pour amener les membres du groupe d'annonces vers la console.
La sortie du script PowerShell ci-dessus pour répertorier les membres du groupe du répertoire actif est ci-dessous.
Name
----
Administrator
ShellGeek
Shell_Asia
Shell_EuropeObtenir la liste des utilisateurs des groupes et des groupes imbriqués
Pour obtenir la liste des utilisateurs des groupes d'annonces et des groupes imbriqués, utilisez l'applet de commande Get-ADGroupMember pour vérifier de manière récursive le paramètre spécifié par -Recursive dans Active Directory et obtenir le groupe d'annonces. membres.
Get-ADGroupMember -Identity "Shell_Sales" -Recursive | Get-ADUser -Property DisplayName | Select-Object DisplayName
Dans le script PowerShell ci-dessus pour obtenir les membres du groupe d'annonces,
À l'aide de PowerShell, Get-AdGroupMemeber récupère les membres du groupe Active Directory spécifié par le paramètre Identity et transmet les membres du groupe d'annonces à la deuxième commande.
La deuxième commande utilise l'applet de commande Get-ADUser pour extraire les utilisateurs publicitaires d'une liste d'utilisateurs publicitaires et renvoie le nom d'affichage de l'utilisateur publicitaire.
La troisième commande, Select-Object, affiche le nom de tous les utilisateurs publicitaires des groupes et des groupes imbriqués sur la console.
Obtenir un compte AdGroupMember activé
Pour obtenir les comptes activés pour les membres du groupe publicitaire dans le groupe spécifié, utilisez l'applet de commande Get-AdGroupMember pour obtenir tous les membres du groupe et dirigez-les vers l'applet de commande Get-AdUser pour obtenir les comptes d'utilisateurs activés.
$group = "SALESLEADER"
$adusers = Get-ADGroupMember -Identity $group | where {$_.objectclass -eq "user"}
foreach ($activeuser in $adusers)
{
Get-ADUser -Identity $activeuser | where {$_.enabled -eq $true} | select Name, SamAccountName, UserPrincipalName, Enabled
}Dans le script PowerShell ci-dessus, Get-AdGroupMember utilise le paramètre Identity pour obtenir tous les utilisateurs du groupe d'annonces SALESLEADER et les stocker dans le répertoire $adusers. variable.
Utilisez la boucle foreach pour parcourir les $adusers et utilisez la cmdlet Get-AdUser pour vérifier l'état activé du compte utilisateur et sélectionner le nom, et samaccountname pour les comptes activés.
La sortie du script PowerShell ci-dessus obtient les utilisateurs activés pour les membres du groupe publicitaire.
La sortie affiche les colonnes Name, SamAccountName, UserPrincipalName et Enabled. Les colonnes activées affichent uniquement les résultats True d'obtention du membre du groupe d'annonces activé.
Modification de Get-AdGroupMember MaxGroupOrMemberEntries
Le Get-AdGroupMember a une limite par défaut de 5 000 pour obtenir les objets Active Directory et leurs propriétés.
Si vous disposez de plus de 5 000 objets Active Directory et que vous essayez d'obtenir tous les membres à l'aide de Get-AdGroupMember, une erreur s'affiche : « Get-AdGroupMember : la taille limite de cette requête a été dépassée.
Vous pouvez augmenter le nombre MaxGrouporMemberEntries pour récupérer des objets Active Directory au-delà de la limite par défaut.
Reportez-vous aux étapes ci-dessous pour ajouter MaxGroupOrMemberEntries :
- Accédez au contrôleur de domaine
- Accédez à l'emplacement C:\Windows\ADWS
- Ouvrez le fichier Microsoft.ActiveDirectory.WebServices.exe.config dans le Bloc-notes
- Vérifiez si la clé MaxGroupOrMemberEntries est disponible ou non. Si disponible, augmentez la taille, sinon suivez la clé ci-dessous pour le fichier.
- Ajouter une entrée
Remarque : Veuillez effectuer une sauvegarde de Microsoft.ActiveDirectory.WebServices.exe.config avant d'apporter des modifications.
Obtenir un exemple de filtre AdGroupMemeber
Pour obtenir des utilisateurs du groupe, utilisez le filtre get adgroupmember pour vérifier si ObjectClass est égal à « user ».
Get-ADGroupMember "SALESLEADER" | where {$_.objectclass -eq "user"} | Select Name,DistinguishedName | Format-Table -AutoSizeDans le script PowerShell ci-dessus, Get-AdGroupMember récupère tous les membres du groupe publicitaire « SALESLEADER » et utilise le filtre pour obtenir les utilisateurs du groupe.
Le Get-AdGroupMember utilise Format-Table pour le formatage de sortie, comme indiqué ci-dessous.
PS C:\> Get-ADGroupMember "SALESLEADER" | where {$_.objectclass -eq "user"} | Select Name,DistinguishedName | Format-Table -AutoSize
Name DistinguishedName
---- -----------------
Tom Smith CN=Tom Smith,OU=SALES,DC=SHELLPRO,DC=LOCAL
Chris Dore CN=Chris Dore,OU=SALES,DC=SHELLPRO,DC=LOCAL
Gary Waugh CN=Gary Waugh,OU=SALES,DC=SHELLPRO,DC=LOCAL
PS C:\>Pour obtenir une liste de groupes de l'Active Directory, utilisez le Filtre Get-AdGroupMember pour vérifier si l'ObjectClass est égal au "groupe". .
Get-ADGroupMember "SALESLEADER" | where {$_.objectclass -eq "group"} | Select Name,DistinguishedName | Format-Table -AutoSizeDans le script PowerShell ci-dessus, Get-AdGroupMember récupère tous les membres du répertoire actif et utilise le filtre get adgroupmember pour vérifier si ObjectClass est égal au groupe et récupère les noms des groupes.
Conclusion
J'espère que l'article ci-dessus sur la façon d'obtenir des membres d'un groupe d'annonces et d'obtenir une liste d'utilisateurs des groupes d'annonces et des groupes imbriqués pourra vous aider à comprendre l'utilisation de l'applet de commande PowerShell Get-ADGroupMember.
Vous pouvez en savoir plus sur la façon d'exporter les membres d'un groupe d'annonces vers un fichier CSV et sur Set-AdGroup pour modifier les attributs du groupe Active Directory dans PowerShell.
Vous pouvez trouver plus de sujets sur les commandes PowerShell Active Directory et les bases de PowerShell sur la page d'accueil de ShellGeek.
Contenu recommandé
Obtenir le nom du compte SAMA du membre du groupe publicitaire
Obtenir le nombre de membres d'Adgroup pour les utilisateurs et les groupes
Obtenir le nom et l'adresse e-mail du membre du groupe Adgroup
Obtenir un membre du groupe Adgroup à partir de plusieurs groupes
Obtenir AdGroupMembre du groupe d'administrateurs de domaine
