Krucker Fabian
Active Directory Automatisation
Durchführung: 09.02.2015 bis 20.03.2015
Ausgangslage
Die IT Mitarbeiter der Stadler Rail Management AG haben einen grossen Aufwand mit den administrativen Aufgaben, die es zu erledigen gibt. Dazu gehören unter anderem auch ein Austritt eines Mitarbeiters, sowie das ausmustern eines Computers. Diese Prozesse werden alle von Hand durch unzählige Mausklicks ausgeführt. Nachfolgend sind die auszuführenden Aufgaben aufgelistet.
Mitarbeiteraustritt
- Benutzer deaktivieren, in deaktivierten OU verschieben und Berechtigungen exportieren
- Berechtigungen entziehen und Beschreibung anpassen
- LogonScript Eintrag in Access DB entfernen
- Userhome / Userprofile löschen
- Exchange Mailbox deaktivieren
Computer ausmustern
- Computerkonto im Active Directory löschen
- Clienteintrag aus der Softwareverteilungs Konsole (SCCM) entfernen
- Clienteintrag aus dem Kaspersky Security Center entfernen
Zur Zeit werden durchschnittlich 15 Minuten für einen Mitarbeiteraustritt und 7 Minuten um einen Computer auszumustern benötigt.
Ziele
Die in der Ausgangslage beschriebenen Prozesse sollen komplett automatisiert und über einen Mausklick erledigt werden können. Dazu werden PowerShell Scripts geschrieben, welche die ganzen Prozesse abbilden und erledigen. Diese wiederum sollen auf einer Weboberfläche verfügbar sein. Der Zugriff auf die Website soll mit einer LDAP Abfrage und AD Gruppenzugehörigkeit sichergestellt werden. Ebenfalls können auch Benutzer, welche keine Administratoren Rechte haben die Befehle ausführen. Als Zusatz wurden noch weitere Funktionen definiert wie Berechtigungen wiederherstellen, Computer deaktivieren / aktivieren und alle Computer welche sich länger als 90 Tage nicht an der Domäne angemeldet haben zu deaktivieren. Die komplette Weboberfläche soll in Deutsch und Englisch verfügbar sein, damit eine mögliche Verbreitung auf die internationalen Standorte der Stadler Rail AG sichergestellt ist.
Die neu definierten Prozesse sollen immense Kosten- und Zeitersparnisse mit sich bringen.

Lösung
Es wurden mehrere PowerShell Scripts geschrieben, welche die in der Aufgabenstellung genannten Prozesse abarbeiten. Anschliessend wurde eine Weboberfläche entwickelt, über welche die Prozesse gestartet werden können. Der Zugriff darauf wurde über eine LDAP Abfrage sichergestellt. Das Grundgerüst sowie die ganze Anzeige der Weboberfläche wurde komplett mit Hilfe des OpenSource Frameworks Bootstrap gestaltet und aufgebaut. Für die Ausführung auf dem Server wurde ein Account angelegt, mit welchem die Aktionen der Website ausgeführt werden. Alle Aktionen der Website sind in einem globalen Logfile festgehalten und können nachvollzogen werden. Die letzten 10 Aktionen der Kategorien Mitarbeiteraustritt, deaktivierte Computer und gelöschte Computer werden direkt in einer Übersicht auf der Website angezeigt. Der Benutzer hat die Möglichkeit, die Anzeigesprache der Weboberfläche zwischen Englisch und Deutsch zu wählen.
Es wurde eine Technische Dokumentation erstellt, um Anpassungen am System vorzunehmen sowie ein Benutzerhandbuch für die Endanwender.
Resultat
Das entwickelte Endprodukt kann 1 zu 1 in den produktiven Betrieb übernommen werden. Die Auswertung hat ergeben, dass pro Mitarbeiteraustritt rund 30 Franken und beinahe 15 Minuten Arbeitszeit eingespart werden können. Für das Ausmustern eines Computers können knapp 14 Franken und beinahe 7 Minuten eingespart werden. Die vorgegebenen Kriterien wurden alle erfüllt und die Kosten- sowie Zeitersparnisse konnten drastisch minimiert werden.
Fazit
Die 10 tage während meiner IPA waren sehr streng und brauchten meine volle Konzentration, jedoch konnte ich mir auch viel neues Wissen aneignen. Über das Endprodukt freue ich mich sogar selber und bin stolz darauf, dass ich dies entwickelt habe. Ich habe gelernt, dass es extrem wichtig ist, einen möglichst exakten Zeitplan vor beginn der Arbeiten zu erstellen und diesen so gut wie möglich einzuhalten.