PowerShell -Code zur Massenverwaltung von Active Directory -Objekten wie Benutzern, Gruppen und Computern. Es ist momentan ein sehr grundlegendes Konsolenwerkzeug, aber in meiner Arbeit fand ich es sehr leistungsfähig, da Active Directory -Benutzer und Computer einige wichtige Funktionen fehlen.
Um den Job des Benutzers zu erleichtern, kann es die nutzerfreundlichere domainOUOU struktur in den DistinguishedName übersetzen, der in Fragen erforderlich ist, um Objekte von einer OU zu sammeln. Es kann auch alle Ausnahmen verarbeiten (nicht existierende OU, OU, die nicht über den abfragten Objekttyp, den Benutzernamen, den Gruppennamen und nicht genug Rechte zur Änderung von Gruppen, zum Erstellen von Dateien) bisher begegnet sind. Es benachrichtigt den Benutzer über erfolgreiche, teilweise erfolgreiche und erfolglose Ausgaben der Operationen. Es verwendet auch einen eigenen Ordnertree (ad-out, standardmäßig wird es im Stamm von Laufwerk D:, aber vom Benutzer geändert werden), sodass es die Festplatte des Benutzers nicht überfüllt.
Funktioniert es ohne RSAT (Remote Server Administration Tools), die auf dem Computer installiert sind?
Jein. Grundsätzlich wurde es so konzipiert, dass es auf einem Computer verwendet wird, der RSAT installiert hat , aber es kann ohne ihn funktionieren. Damit es funktioniert, benötigen Sie Microsoft.ActiveDirectory.Management.dll und Microsoft.ActiveDirectory.Management.resources.dll , um in denselben Ordner wie die PS1 -Datei zu stecken. Offensichtlich kann ich diese DLLs nicht teilen (es versteht sich von selbstverständlich, dass Sie DLLs niemals von einer nicht vertrauenswürdigen Quelle herunterladen sollten), aber wenn Sie sie erhalten, funktioniert das Programm ohne RSAT. Wenn ein PC weder RSAT installiert hat noch diese beiden DLLs im selben Ordner wie die PS1 -Datei, wird das Programm überhaupt nicht ausgeführt (es überprüft diese beiden Bedingungen zu Beginn, und wenn auch nicht erfüllt ist, wird es Sie nicht fortsetzen).
Wo finde ich diese DLLs?
Ironischerweise benötigen Sie einen Computer mit RSAT installiert. Die DLLs befinden sich in ihren Ordnern mit demselben Namen unter C:WindowsMicrosoft.NETassemblyGAC_64 oder GAC_32 im Fall von 32bit -Betriebssystem.
Welche Sprachen werden unterstützt?
Das Programm unterstützt Englisch und Ungarisch. Da meine Muttersprache ungarisch ist, hat die englische Übersetzung höchstwahrscheinlich grammatikalische und andere Fehler, obwohl ich nicht so viele hoffe. Die Kommentare sind auch auf Englisch. Für den Fall, dass Sie mir bei einer Übersetzung in Ihre Sprache helfen möchten, wäre ich sehr dankbar, aber allein werde ich keine anderen Übersetzungen machen.
Planen Sie, Funktionen wie ein Benutzer zu einer Gruppe hinzuzufügen?
Ich habe vor, weitere Funktionen hinzuzufügen, aber nur solche, die die Funktionalität von ADUC (Active Directory -Benutzer und -Computer) erweitern. Ich sehe keinen Sinn bei der Implementierung von Funktionen, die bereits gut funktionieren. Ich bin offen für Vorschläge, die dieses Programm nützlicher machen können.
Es ist gut und alles, aber meinst du es ernst, dass ich jedes Mal, wenn ich es benutzen möchte, das Skript aus der Befehlszeile ausführen muss? Könnte es nicht eine ordnungsgemäße ausführbare Datei sein?
Okay, das könnte eine solche Anfängerfrage sein, die niemand auf dieser Seite stellen würde, aber da ich sie dorthin gesetzt habe, werde ich sie beantworten. Sie können die PS1 -Datei jederzeit in eine ausführbare Datei mit PS2Exe kompilieren. https://gallery.technet.microsoft.com/scriptcenter/ps2exe-gui-convert-e7cb69d5 versuchen nicht, die GUI-Version der kompilierten Exes zu verwenden, die in diesem Fall wirklich nicht wie beabsichtigt funktionieren.
Funktionen, Verbesserungen
Andere Pläne
In einer sehr entfernten Zukunft plane ich, den Code um eine GUI zu schreiben. Ich habe sowohl C# als auch PowerShell in Betracht gezogen, aber ich bin mir nicht ganz sicher, ob ich es tatsächlich tun werde. Mein Hauptziel bei diesem Programm war es, Administratoren zu geben (die meine Kollegen mit keinem PowerShell -Wissen benennen) ein kostenloses Tool, das sie auch dann verwenden dürfen, wenn Anwendungen von Drittanbietern verboten sind. Da es sich nur um ein PowerShell -Skript handelt (aber ein längerer, aber immer noch), darf es wahrscheinlich alle verwenden, die Administratorrechte in ihrem Active Directory haben. Aber ich bin mir wirklich nicht sicher, ob dasselbe in einem Programm wahr wäre, das auch C# -Bibliotheken verwendet, anstatt sich ausschließlich auf PowerShell zu verlassen.
Natürlich freue ich mich auf Vorschläge, Fehlerberichte oder alles andere, was Sie hinzufügen möchten.