2016-04-05 6 views
0

Ich bin neu in Powershell, aber ich hoffe, es gibt eine Möglichkeit, Gruppenmitgliedschaft für alle Benutzer in einer angegebenen Organisationseinheit zu erhalten. Zum Beispiel, wenn ich wissen möchte, welche Gruppen alle Benutzer in OU "Benutzer" sind, ohne ihre gleichen eingeben. Ist es möglich? Es wäre auch toll, wenn ich es in einer Liste präsentieren könnte.Verwenden Sie Powershell, um Gruppenmitgliedschaft für alle Benutzer in einer Organisationseinheit zu erhalten?

Dank

+0

Nur vorstellen, die Ausgabe von diesem, würde ich denken, dass dies eine harte Liste zu verstehen wäre. Stellen Sie sich vor, dass Sie für jeden Benutzer seinen Namen sehen und dann eine Spalte mit jeder Gruppe, der sie angehören? – FoxDeploy

Antwort

1

Werfen Sie einen Blick auf Get-ADUser im ActiveDirectory Modul.

$Users = Get-ADUser -Filter * -SearchBase 'CN=Users,DC=Contoso,DC=com' -Properties MemberOf 

Sie können dann die Ausgabe formatieren, wie Sie möchten.

Wenn Sie eine rekursive Gruppenmitgliedschaft wünschen - dh alle Gruppen, zu denen ein Benutzer gehört und alle Gruppen, zu denen diese Gruppen gehören - ändert sich die Logik und Sie müssen für jede Gruppe eine Suche durchführen Benutzer:

$Users = Get-ADUser -Filter * -SearchBase 'CN=Users,DC=Contoso,DC=com' -Properties MemberOf, DistinguishedName; 
$Users | ForEach-Object { 
    Get-ADGroup -LDAPFilter ("(member:1.2.840.113556.1.4.1941:={0})" -f $_.DistinguishedName); 
} 

Offensichtlich würden Sie eine Manipulation zu tun haben, um den Benutzer zu halten und und Gruppen zusammen, aber ich werde das für Sie als Übung verlassen.