Es gibt Situationen, wo es wichtig ist die Gruppen-Mitglieder einer Active Directory-Gruppe auszulesen. HÀufig werden weitere Daten benötigt. Zum Beispiel werden Mail-Adressen zum Versand von Informationen benötigt. Dazu habe ich ein Skript erstellt.
import-module activedirectory [System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') | Out-Null $groupname = [Microsoft.VisualBasic.Interaction]::InputBox("Bitte AD-Gruppe eingeben", "AD-Gruppe") $Domaincontroller = "LAB-DC1.demo.local" $Folder = [System.Environment]::GetFolderPath("MyDocuments") $Exportfile = $Folder + "\" + $groupname + ".csv" $Parameter ="name, mail, samaccountname" $Gruppe = Get-ADGroupMember $groupname -server $Domaincontroller | Select distinguishedName $Gruppe | ForEach { Get-ADUser $_.distinguishedName -server $Domaincontroller -Properties * | Select-object $Parameter} | export-csv $Exportfile -notypeinformation -encoding UTF8
Als Voraussetzung fĂŒr die Programmzeilen sind die „Active Directory Module for Windows PowerShell“ der „Remote Server Administrator Tools“. Diese mĂŒssen nach Installation der passenden MSI ĂŒber „Programme und Features“ aktiviert werden. AnschlieĂend sollte noch der DomĂ€nencontroller im Ablauf angepasst werden.
Zur Abfrage wird ein kleines GUI-Fenster geöffnet in dem der benötigte Gruppenname eingetragen wird. AnschlieĂend wird eine Liste im Dokumente-Ordner des ausfĂŒhrenden Benutzers erstellt. Diese enthĂ€lt in dieser AusfĂŒhrung die Namen, Mail-Adressen und Anmeldenamen der Mitglieder.