stefan007
Goto Top

Gruppenzugehörigkeit von AD Usern ermitteln - die Perfektion fehlt

Hi Leute,

ich habe ein Script zur Auflistung von AD Gruppen eines bestimmten Users im AD erstellt.

Get-ADPrincipalGroupMembership -Identity "Administrator" | select name | sort name


Jetzt wollen wir es ja immer möglichst "einfach" halten und ich möchte gerne, dass PowerShell mich dazu auffordert die -identity einzugeben und mit Enter zu bestätigen, statt dass ich die Identity im Script selbst ändern muss.

Kann mir da jemand helfen?

Content-ID: 336505

Url: https://administrator.de/forum/gruppenzugehoerigkeit-von-ad-usern-ermitteln-die-perfektion-fehlt-336505.html

Ausgedruckt am: 20.04.2025 um 05:04 Uhr

132895
Lösung 132895 29.04.2017, aktualisiert am 30.04.2017 um 14:21:34 Uhr
Goto Top
$user = Read-Host "Usernamen eingeben"  
Get-ADPrincipalGroupMembership -Identity $user | sort name | select -Expand name 
Gruß
Stefan007
Stefan007 29.04.2017 um 14:14:48 Uhr
Goto Top
Oh man, so einfach face-sad vielen Dank face-smile
132895
132895 29.04.2017 aktualisiert um 14:34:04 Uhr
Goto Top
Zitat von @Stefan007:
Oh man, so einfach face-sad vielen Dank face-smile
Jepp, für die "Basis" mal folgende Seite als Vokabel-Liste ausdrucken face-smile
Overview of Cmdlets Available in Windows PowerShell

Und nicht vergessen.

Gruß
Stefan007
Stefan007 29.04.2017 um 15:00:44 Uhr
Goto Top
Also das mit dem auf gelöst setzen vergesse ich nicht, danke für die Info face-smile
Stefan007
Stefan007 30.04.2017 um 11:28:44 Uhr
Goto Top
Hi Password,

kurze Frage noch bzgl. des Scripts: Was kann ich machen, damit das PowerShell Fenster geöffnet bleibt? Nachdem ich den Benutzer eingegeben habe, bleibt es nicht offen sondern schließt sich sofort.

In der ISE logischerweise nicht.

Gruß,


Stefan
132895
132895 30.04.2017 aktualisiert um 12:25:14 Uhr
Goto Top
Na einfach ein read-host am Ende des Skripts einfügen, dann bleibt es offen bis der User Enter drückt, oder das Skript mit dem Parameter -NoExit starten...
powershell -NoExit -File "c:\script.ps1"

Ist ja genau so wie bei Batchfiles dort musst du auch entweder ein pause am Ende setzen oder das Skript mit cmd /k Script.cmd starten.

Also alles kein Hexenwerk wenn man ab und zu das Oberstübchen etwas fordert ;)
Stefan007
Stefan007 30.04.2017 um 13:44:10 Uhr
Goto Top
so,

ich hatte es vorhin sogar mit einem read-host NACH der Zeile, die ausgeführt werden soll. Wenn ich das Script dann ausführe, dann fragt er 1. nach dem Mitarbeiter: Diesen Tippe ich ein und drücke enter, danach kommt wieder Read-Host OHNE, dass ich die Gruppen sehe und wenn ich dann enter drücke, geht das Script aus.
132895
132895 30.04.2017 aktualisiert um 14:26:22 Uhr
Goto Top
Dann machst du grobe Fehler ... Fang erst mal bei den Basics wie man Daten auf der Konsole ausgibt an !
Das ist hier ja kein Grundkurs Powershell.
Stefan007
Stefan007 30.04.2017 um 14:26:35 Uhr
Goto Top
ähm ja, also wenn ich "grobe Fehler" mache, dann ist das die eine Sache. Ich habe, wie du sagtest, ein Read-Host ans Ende gestellt.


$user = read-host "Benutzernamen eingeben"  
Get-ADPrincipalGroupMembership $user | select name | sort name 
read-host
132895
132895 30.04.2017 aktualisiert um 15:38:01 Uhr
Goto Top
Erstens muss der User überhaupt in irgendeiner Gruppe Mitglied sein, wenn er das nicht ist gibt es auch keine Ausgabe, zweitens muss die Suche gegen einen GlobalCatalog Server stattfinden! Geht hier einwandfrei, s.o.
$user = Read-Host "Usernamen eingeben"  
Get-ADPrincipalGroupMembership -Identity $user | sort name | select -Expand name 
Read-Host
Und Tschüss, i'm out a here.
Stefan007
Stefan007 30.04.2017 um 15:57:37 Uhr
Goto Top
Zitat von @132895:

Erstens muss der User überhaupt in irgendeiner Gruppe Mitglied sein, wenn er das nicht ist gibt es auch keine Ausgabe, zweitens muss die Suche gegen einen GlobalCatalog Server stattfinden! Geht hier einwandfrei, s.o.
> $user = Read-Host "Usernamen eingeben"  
> Get-ADPrincipalGroupMembership -Identity $user | sort name | select -Expand name 
> Read-Host
> 
Und Tschüss, i'm out a here.


Warum bist du eigentlich direkt so angefressen? Ich versuche das Szenario einfach nachzustellen und mache das die ganze Zeit schon auf einem DC.


Der Unterschied zu deinem Quelltext ist noch, dass ich kein "-expand" genutzt habe. Sonst war alles gleich, auch wenn ich oben "-identity" vergessen habe.

Aber naja, dann trotzdem Danke.