Veröffentlicht 6. Februar 201411 j Hallo zusammen, ich erhielt die Anfrage eines Abteilungsleiters, ob ich ihm eine Übersicht der Mitglieder einer Berechtigungsgruppe zukommen lassen könne. Da sich in dieser Gruppe sehr viele Leute befinden und ein Abtippen bis zu meinem Renteneintritt dauern würde, suche ich nach einer Möglichkeit, die Konten in einer Liste darzustellen. Auf dem DC läuft Windows Server 2003. Die AD Struktur sieht wie folgt aus: Root - OU Standort -- OU Groups -- grp_xxx Ich hatte über Google den Verweis zu Powershell gefunden, allerdings habe ich damit leider keinerlei Erfahrungen. Wirklich gute und brauchbare Tools mit grafischer Oberfläche scheint es wohl auch nicht zu geben. Wer ist so nett und kann mir behilflich sein? Danke und Grüße, Simon
6. Februar 201411 j Wenn Powershell < 3.0, dann noch ein Import-Module ActiveDirectory vorausschicken Get-ADGroupMember -Identity <Gruppenname>| Select-Object Name, samaccountname | Sort-Object name | export-csv -Path c:\temp\export.csv -NoTypeInformation -Encoding UTF8
6. Februar 201411 j Autor Wenn Powershell < 3.0, dann noch ein Import-Module ActiveDirectory vorausschicken Get-ADGroupMember -Identity <Gruppenname>| Select-Object Name, samaccountname | Sort-Object name | export-csv -Path c:\temp\export.csv -NoTypeInformation -Encoding UTF8 Auf dem DC ist PS 1.0 installiert. Das AD importiere ich wie? Über die Eingabe "import-module activedirectory"? Falls ja, dann klappt das leider nicht.
6. Februar 201411 j Das kannst Du auch als beliebiger Benutzer von einem beliebigen Client aus machen. Also mal geschmeidig das Windows Management Framework 3 oder 4 auf Deinem Rechner installieren und "fröhlich sein" :-) Ab PS 3.0 lädt sich Powershell die fehlenden Module selbst nach.
6. Februar 201411 j Nur als Zusatz-Gag (Get-ADGroupMember -Identity <Gruppenname>).count zählt die Mitglieder der Gruppe.
6. Februar 201411 j Alternativ könnte man auch mit csvde bzw. ldifde das Feld "memberOf" der Gruppe abfragen. Powershell ist aber deutlich eleganter.
6. Februar 201411 j IMHO werden mittelfristig csvde bzw. ldifde "den Weg des Dodos gehen". Es würde sogar "dsget group "CN=Gruppenname,ou=Test,dc=test,dc=com" -members -expand" einfacher sein, als die beiden Grusel-Tools. Deshalb springt man besser gleich auf den Powershell-Zug auf. :-)
6. Februar 201411 j Autor Wenn ihr euch mit PS so gut auskennt, könnt ihr dann ein Einsteigerbuch empfehlen? Ich möchte mich gerne damit beschäftigen, aber kann bis auf Batch-Scripting rein gar nichts in diesen Bereichen.
6. Februar 201411 j Das kannst Du auch als beliebiger Benutzer von einem beliebigen Client aus machen. Also mal geschmeidig das Windows Management Framework 3 oder 4 auf Deinem Rechner installieren und "fröhlich sein" :-) Ab PS 3.0 lädt sich Powershell die fehlenden Module selbst nach. JEIN, es müssen diverse Freigaben gegeben sein und auch die RSAT müssen vorhanden sein. das beste einsteiger buch was ich kenne: Learn Windows PowerShell 3 in a Month of Lunches: Amazon.de: Don Jones, Jeffrey T. Hicks: Englische Bücher
6. Februar 201411 j Zum "nebenbei" lernen in Eigenregie habe ich über Twitter das gefunden: get-command | Get-Random | Get-Help -ShowWindow Don Jones hat auch mind. einen MOC-Kurs designed und ist Autor mehrerer CBT Nuggets. Er ist für mich einer der Trainer, die mir liegen. Als einfacher Einstieg ist auch das Powershell Cheat Sheet von Galileo Computing ganz nett. PS: welcher Admin hat keine RSAT auf seinen Rechnern? ;-)
7. Februar 201411 j Wir benutzen dafür Hyena, ein schönes Tool das viel mehr kann als die normale AD Verwaltung.
11. Februar 201411 j Autor Hallo zusammen, ich möchte noch einmal das Thema aufgreifen, weil mir das Script so gut gefällt und den Alltag deutlich erleichtert. Vielen Dank nochmals! :-) Ist es möglich eine grafische Oberfläche für PowerShell zu erstellen? Konkret habe ich folgendes im Kopf: 1. Man startet eine Script-Datei, die ein Abfragefenster öffnet. 2. In das Abfragefenster gibt man einen AD-Gruppennamen ein (grp_schiessmichtot). 3. Man klickt auf einen Ok-Button oder drückt Enter. 4. Das Fenster schließt sich und es erscheint die exportierte CSV auf dem Desktop. Vom Programmieraufwand dürfte es eigentlich nicht schwierig sein. Mein Problem ist, dass ich mich eben leider nicht mit PS auskenne. Kann jemand behilflich sein? Gerne eigne ich mir so etwas auch selbst an, wenn ihr mir den Weg zeigt. Danke und Grüße, Simon
11. Februar 201411 j Theoretisch ist das möglich über die Nutzung der .NET Klassen für WPF oder WinForms, aber ich rate klar davon ab. Oberflächen die über ein Hallo Welt Szenario hinaus gehen sind in einem Script nahezu nicht wartbar. Das sprengt den Rahmen der Powershell. Bester Workaround wäre der befehl show-command, der ist aber erst ab Version 3.0 der Powershell verfügbar. Wer Oberflächen bauen will, möge C# oder VB dafür nutzen bzw. die Powershell befehle innerhalb eines .NET Programms ausführen.
12. Februar 201411 j Eine etwas andere Ausgabe würdest Du mit dem cmdlet "out-gridview" erhalten. Get-ADGroupMember -Identity <Gruppenname> | Select-Object Name, samaccountname | Sort-Object name | Out-GridView -PassThru Es ist nicht ganz das, was Du möchtest, geht aber rudimentär in die Richtung.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.