Wie listet die AD-Gruppenmitgliedschaft für AD-Benutzer die Eingabeliste auf?

8

Ich bin ziemlich neu PS-Benutzer ... Auf der Suche nach Unterstützung mit einem Powershell-Skript, um eine Liste der Sicherheitsgruppen zu erhalten, deren Mitglied der Benutzer ist.

Um zu beschreiben, was ich brauche:

  • Ich habe eine Eingabeliste (txt-Datei) mit vielen Benutzern (samaccountnames). Jeder Name steht in einer neuen Zeile.
  • Ich brauche das Skript, um diese Namen in AD zu suchen - ganze Gesamtstruktur, nicht nur eine einzelne Domäne
  • Ausgabe sollte wie "samaccountname" aussehen und die Liste der Gruppen, in denen dieser Account Mitglied ist, in einer Zeile, so dass ich sie in Excel
  • sortieren kann

Dies ist das Skript, das ich habe:

%Vor%

aber es wirft mir einen Fehler:

%Vor%

Jedenfalls würde dieses Skript nicht die gesamte Gesamtstruktur durchsuchen.

Beispieleingabeliste:

%Vor%

Beispielausgabeliste

%Vor%

Jede Hilfe würde sehr geschätzt werden.

    
Martin_K 20.01.2014, 15:38
quelle

5 Antworten

11

Zuerst : Die Variable $User hat derzeit keine Eigenschaft .Users . In Ihrem Code repräsentiert $User einfach eine Zeile (die "aktuelle" Zeile in der foreach-Schleife) aus der Textdatei.

%Vor%

Zweitens Ich glaube nicht, dass Sie mit einem Befehl eine ganze Gesamtstruktur abfragen können. Sie müssen es in kleinere Stücke zerlegen:

  1. Abfrage der Gesamtstruktur nach einer Liste von Domänen
  2. Rufen Sie Get-ADUser für jede Domäne auf (Sie müssen möglicherweise alternative Anmeldeinformationen über den Parameter -Credential
  3. angeben

Drittens , um eine Liste der Gruppen zu erhalten, zu denen ein Benutzer gehört:

%Vor%

Vierte : Um das endgültige, gewünschte Zeichenfolgenformat zu erhalten, fügen Sie einfach $User.Name , ein Semikolon und die Zeichenfolge $GroupMembership zusammen:

%Vor%     
Trevor Sullivan 20.01.2014, 16:24
quelle
6
%Vor%

Bekommt es von einer anderen Antwort, aber das Skript funktioniert magisch. :)

    
genius_monkey 12.12.2014 10:23
quelle
1

Oder fügen Sie "sort name" hinzu, um sie alphabetisch aufzulisten

%Vor%     
nilz76 07.09.2015 12:50
quelle
0

Der folgende Code gibt die Mitgliedschaft in der Benutzergruppe mit dem Namen samaccountname zurück. Sie können sie ändern, um Eingaben aus einer Datei zu erhalten, oder die Abfrage ändern, um Konten mit nicht abgelaufenen Passwörtern etc. zu erhalten.

%Vor%

Beispielausgabe:

%Vor%     
notforsale 09.01.2016 09:07
quelle
-2

Alles in einer Zeile:

%Vor%     
Frank 30.06.2017 12:17
quelle