Einleitung
Vor mittlerweile 10 Jahren stand ich vor dem Problem, einheitliche E-Mail-Signaturen für alle Mitarbeiter eines Unternehmens anhand von Daten aus dem Active Directory zu generieren. Die grundsätzliche Signatur in einem aufgeräumten HTML- und Text-Teil war schnell erstellt, das Verteilen und Individualisieren stellte sich jedoch als etwas kniffliger heraus. Es gibt hierzu zwar einiges an kommerzieller Software, für meinen Zweck waren sie aber alle etwas überdimensioniert.
Im Endeffekt entschloss ich mich damals, mangels brauchbarer Alternativen, die Signaturen mit einem VBS-Logon-Skript zu erstellen.
Jetzt, im Jahr 2024, habe ich mich entschlossen, das Problem noch einmal neu anzugehen, und habe hierzu ein kleines Tool namens „AD2Template“ geschrieben:
https://github.com/WinTeach/AD2Template
Eine Anleitung zur Nutzung des Tools befindet sich bereits innerhalb des GitHub-Projekts. Hier folgt eine etwas tiefergehende Erklärung, wie es zum Verteilen von E-Mail-Signaturen genutzt werden kann.
Vorbereitungen
Genutzte Versionen
Die komplette Anleitung wurde mit folgenden Softwareversionen erstellt:
- Microsoft Windows Server 2025
- Microsoft Office LTSC Professional Plus 2024 Preview
- AD2Template 0.9.1 – Precompiled EXE
Variablen ermitteln/setzen

AD2Template kann alle im AD-User-Objekt definierten Attribute auslesen und nutzen. Die Attribute können einfach über „Active Directory-Benutzer und -Computer“ eingesehen und definiert werden. Hierzu muss im „Active Directory-Benutzer und -Computer“-Fenster unter „Ansicht“ zunächst die Option „Erweiterte Features“ aktiviert werden. Wenn anschließend ein Benutzerobjekt geöffnet wird, können sämtliche Attribute unter dem Tab „Attribut-Editor“ eingesehen werden.
Für dieses How-To nutzen wir die im Tab „Allgemein“ auslesbaren Werte:
cn, description, physicalDeliveryOfficeName, telephoneNumber, mail, und wWWHomePage.

Signaturen html/txt vorbereiten
Signatur anlegen
Im ersten Schritt benötigen wir eine Signatur, die wir als Template bereitstellen können. Ich bevorzuge sauberen HTML-Code, aber für diese Anleitung erstellen wir eine einfache Signatur direkt über Outlook. Es können natürlich auch bestehende Signaturen verwendet werden.
Eine von Microsoft bereitgestellte Sammlung an E-Mail-Signaturvorlagen findet sich hier (externer Link). Ich habe mir hierzu eine ganz simple Signatur über Word erstellt und in eine neue Signatur eingefügt.
Eine neue Signatur legt ihr in Outlook über „Neue E-Mail“ → „Signatur“ → „Signaturen…“ → „Neu“ an.


Template-Dateien erstellen
Öffnet nun den Ordner %appdata%\Microsoft\Signatures
im Windows-Explorer und verschiebt (oder kopiert) sämtliche Dateien und Ordner, die zu eurer Signatur gehören, in das konfigurierte template
-Verzeichnis von AD2Template.

Um AD2Template mitzuteilen, in welchen Dateien Elemente ausgetauscht werden sollen, ergänzt die Dateiendung um .jinja
.

Öffnet die Dateien nun mit einem beliebigen Texteditor und sucht dort nach den Werten die aus dem Active Directory übernommen werden sollen. Die Werte können einfach durch die AD-Werten innerhalb von doppelten geschweiften Klammern ( {{ wert }} ) ersetzt werden. Es kann hier auch die suchen und ersetzen Funktion des Editors genutzt werden.
In meinem Beispiel ersetze ich folgende Werte:
Ursprung | Ersetzt durch |
Tobias Wintrich | {{ cn }} |
info@winteach.de | {{ mail }} |
Founder & CEO | {{ description }} |
+49 999 999999 | {{ telephoneNumber }} |
www.winteach.de | {{ wWWHomePage }} |

Jinja-Templates können mehr als nur Variablen ersetzen. Beispielsweise können einfache Wenn-Dann-Abfragen integriert werden. Wenn in eurer Umgebung beispielsweise nur einige Benutzer eine eigene Rufnummer in der Signatur haben sollen und bei allen anderen die zentrale Rufnummer angezeigt werden soll, könnte die Syntax so aussehen:
{{ telephoneNumber ? telephoneNumber : '+49 9999999' }}
Eine vollständige Dokumentation des Jinja-Templating-Systems findet ihr hier: Jinja-Dokumentation.
Im Fall von E-Mail-Signaturen muss die E-Mail-Adresse innerhalb der Datei- und Ordnernamen durch den entsprechenden Template-Wert ersetzt werden. In diesem Fall wird die Variable nicht innerhalb von geschweiften Klammern, sondern mit doppelten Rautezeichen (#wert#
) eingegrenzt.
Beispiel:
Die Datei winteach (info@winteach.de).htm.jinja wird zu winteach (#mail#).htm.jinja.

AD2Template nutzen
Test
Führt die Anwendung einfach aus, indem ihr die Datei ad2template.exe
startet. Anschließend werden die bearbeiteten Dateien im konfigurierten „output_folder“ erstellt.

Deployment
Die Anwendung kann problemlos auch von UNC-Pfaden per Login-Skript ausgeführt werden.
Ihr könnt das Template-Verzeichnis in der Datei config.ini
ebenfalls per UNC-Pfad definieren, z. B.:
\\fileserver\AD2Template\templates
.

Fragen/Probleme/Wünsche?
Solltet ihr Probleme mit dem Tool haben oder Verbesserungsvorschläge einbringen wollen, hinterlasst gerne einen Kommentar oder meldet euch direkt über GitHub: (https://github.com/WinTeach/AD2Template/issues).