Bereits vor über 2 Jahren hatte ich in meinem Blog meine PAM-Solution mit PowerShell-JEA vorgestellt. Mittlerweile habe ich einige Anpassungen vorgenommen. Daher ist es Zeit für ein Update.
Den Hintergrund und meine Idee hatte ich bereits in diesem Beitrag beschrieben: Privileged Access Management mit Just Enough Administration (v1.04)
Kurz gesagt wollte ich eine einfach zu bedienende Lösung aufbauen, mit der ich temporär meine administrativen Accounts im Active Directory für eine bestimmte Zeit in Gruppen aufnehmen kann. Die Gruppenmitgliedschaften sollten automatisch bereinigt werden. Im Idealfall haben die Accounts somit außerhalb der Administrationszeit kaum Berechtigungen. Wird ein Admin-Account kompromittiert, dann sind die Anmeldeinformationen praktisch wertfrei.
Das ist Least Privilege einfach weiter gedacht! Aktuell haben meine Admin-Accounts keine relevanten, dauerhaften Gruppenmitgliedschaften. Vor jeder Administration muss ich also meine PAM-Lösung starten und mir genau überlegen, welche Rechte ich für wie lange benötige. Und es funktioniert!
Mit den Wochen und Monaten erkannte ich an meiner Scriptlösung in der Version v1.04 einige Probleme und nahm etliche Verbesserungen vor:
- Die grafische Oberfläche hat mehr Platz bekommen. Damit entfällt in mittelgroßen Umgebungen das Scrollen.
- Die neue Version kann mehrere Gruppenmitgliedschaften auf einmal zuweisen bzw. beenden:
- Für jede Liste gibt es ein Suchfeld, mit dem die angezeigten Werte gefiltert werden können. Damit sind auch große Umgebungen sinnvoll administrierbar:
- Die AD-Replikation (man kann die Änderungen an den Gruppenmitgliedschaften direkt auf einen Domain Controller replizieren) ermittelt jetzt vollautomatisch die Domain Controller. Es kann zu einem bestimmten oder zu allen DC repliziert werden:
- Die JEA-Konfiguration kann jetzt auf mehreren Domain Controllern installiert werden. Das Script wird dann mit mehreren PAM-Servern beim Aufruf versehen und versucht einen zu erreichen. Ist ein System offline, dann wechselt das Script einfach zum nächsten. Damit kann man auch nach einem Ausfall eines DC administrieren:
- Es gibt einen neuen Schalter, der alle temporären Gruppenmitgliedschaften auf einmal beendet:
- Die Anzeige der dynamischen Gruppenmitgliedschaften ist durch ein verbessertes Steuerelement vereinfacht worden:
- Im Backend wurden alle AD-cmdlets durch dynamische Proxy-Funktionen ersetzt. Damit gibt es praktisch keine Bypass-Möglichkeiten mehr und der Betrieb ist abgesichert:
Die Befehle mit dem grünen X sind alles gefilterte Proxy-Funktionen. Diese erlauben nur bestimmte, vorgegebene Aktionen. Mit der Funktion “repliziere-ADChanges” ist es also nicht möglich, unerlaubt Daten an ein Fremdsystem zu leiten:
Beide Aktionen lassen sich mit den gleichen Script ausführen. Zur besseren Übersicht habe ich die Blöcke durch Kommentarregionen zusammengehalten:
Falls ihr die alte Version schon installiert habt, dann passt bitte den Inhalt der INI-Datei entsprechend an. Auf dem Client muss der Aufruf des GUI-Scriptes angepasst werden, wenn ihr mehr als einen PAM-Server verwenden wollt:
Und dann kann es auch schon losgehen!
Nachtrag vom 29.02.2020: Hier gibt es die neue Version 1.10 (mit 2 kleinen Bugfixes) als gezipptes Archiv: PAM-AdminGUI-v1.10.zip. Für Rückfragen stehe ich gerne zur Verfügung. 🙂
Stay tuned!