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-Key: 336505

Url: https://administrator.de/contentid/336505

Printed on: April 19, 2024 at 22:04 o'clock

Mitglied: 132895
Solution 132895 Apr 29, 2017, updated at Apr 30, 2017 at 12:21:34 (UTC)
Goto Top
$user = Read-Host "Usernamen eingeben"  
Get-ADPrincipalGroupMembership -Identity $user | sort name | select -Expand name 
Gruß
Member: Stefan007
Stefan007 Apr 29, 2017 at 12:14:48 (UTC)
Goto Top
Oh man, so einfach face-sad vielen Dank face-smile
Mitglied: 132895
132895 Apr 29, 2017 updated at 12:34:04 (UTC)
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ß
Member: Stefan007
Stefan007 Apr 29, 2017 at 13:00:44 (UTC)
Goto Top
Also das mit dem auf gelöst setzen vergesse ich nicht, danke für die Info face-smile
Member: Stefan007
Stefan007 Apr 30, 2017 at 09:28:44 (UTC)
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
Mitglied: 132895
132895 Apr 30, 2017 updated at 10:25:14 (UTC)
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 ;)
Member: Stefan007
Stefan007 Apr 30, 2017 at 11:44:10 (UTC)
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.
Mitglied: 132895
132895 Apr 30, 2017 updated at 12:26:22 (UTC)
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.
Member: Stefan007
Stefan007 Apr 30, 2017 at 12:26:35 (UTC)
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
Mitglied: 132895
132895 Apr 30, 2017 updated at 13:38:01 (UTC)
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.
Member: Stefan007
Stefan007 Apr 30, 2017 at 13:57:37 (UTC)
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.