WPS 10 Geschrieben 4. August 2014 Melden Geschrieben 4. August 2014 Hallo zusammen, ich möchte gerne in einigen Powershell-Skripten, Aktionen abhängig von den Gruppenzugehörigkeiten im AD ausführen lassen. Eigentlich würde ich das folgendermaßen angehen: $Gruppen = Get-ADPrincipalGroupMembership $env:USERNAME | ForEach-Object {$_.name} Doch dafür wird ja das ActiveDirectory-Modul benötigt, welches ja nicht auf allen Rechnern zur Verfügung steht.Gibt es hierfür eine Alternative, wie ich an die Gruppenmitgliedschaften rankomme, ohne dafür auf das ActiveDirectory-Modul zugreifen zu müssen? Besten Dank schon mal im Vorraus für Eure Tipps!
zahni 587 Geschrieben 4. August 2014 Melden Geschrieben 4. August 2014 Wieso ist das nicht überall verfügbar? Powershell 2.0 kann man über WSUS verteilen.
nemonix 2 Geschrieben 4. August 2014 Melden Geschrieben 4. August 2014 $Gruppen=([system.Security.Principal.WindowsIdentity]::GetCurrent()).Groups | Foreach-Object { $_.Translate([system.Security.Principal.NTAccount])}
NilsK 3.046 Geschrieben 4. August 2014 Melden Geschrieben 4. August 2014 Moin, am besten liest man für sowas in einem Anmeldeskript das Access Token aus. Ob das mit PS direkt geht, weiß ich nicht, aber zumindest könnte man dafür die Ausgabe von "whoami /groups" verwenden. Gruß, Nils
WPS 10 Geschrieben 4. August 2014 Autor Melden Geschrieben 4. August 2014 Wieso ist das nicht überall verfügbar? Powershell 2.0 kann man über WSUS verteilen. Ich hab mal die Version 3.0 installiert. Wenn ich dann aber die entsprechenden cmdlets aufrufe, werden die nicht erkannt. Muss ich da nicht zwangsweise so vorgehen: http://blogs.msdn.com/b/rkramesh/archive/2012/01/17/how-to-add-active-directory-module-in-powershell-in-windows-7.aspx um das Modul nutzen zu können? $Gruppen=([system.Security.Principal.WindowsIdentity]::GetCurrent()).Groups | Foreach-Object { $_.Translate([system.Security.Principal.NTAccount])} Das sieht schon mal nicht schlecht aus, der bringt mir zwar folgende Fehlermeldung: Some or all identity references could not be translated aber speichert trozdem alle Gruppen in das Feld. Moin, am besten liest man für sowas in einem Anmeldeskript das Access Token aus. Ob das mit PS direkt geht, weiß ich nicht, aber zumindest könnte man dafür die Ausgabe von "whoami /groups" verwenden. Gruß, Nils Die Ausgabe von whoami /groups sieht auch nicht schlecht aus. Da müsste man jetzt nur noch die Gruppenamen einzel rausfiltern können.
nemonix 2 Geschrieben 4. August 2014 Melden Geschrieben 4. August 2014 (bearbeitet) Moin, am besten liest man für sowas in einem Anmeldeskript das Access Token aus. Ob das mit PS direkt geht, weiß ich nicht, aber zumindest könnte man dafür die Ausgabe von "whoami /groups" verwenden. Gruß, Nils $Gruppen=([system.Security.Principal.WindowsIdentity]::GetCurrent()).Groups | Foreach-Object { $_.Translate([system.Security.Principal.NTAccount])} Der Befehl müsste die Infos aus dem Access Token auslesen bearbeitet 4. August 2014 von nemonix
NilsK 3.046 Geschrieben 4. August 2014 Melden Geschrieben 4. August 2014 Moin, ach so, OK. Ich hatte das schon fast vermutet, bin aber an der Stelle in PS nicht so firm. Gruß, Nils
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden