AD2Template
is a Python script that generates files from Jinja2 templates using attributes from Active Directory (AD).
- Fetches user attributes from Active Directory.
- Renders Jinja2 templates with AD attributes.
- Configurable template and output folders.
- Supports cleanup of the output folder before generating new files.
- Automatically generate email signatures via login script.
- Create personalized documents for users based on AD attributes.
- Generate configuration files for applications using user-specific data from AD.
- Python 3.x
pyad
libraryjinja2
library
-
Clone the repository:
git clone https://github.com/WinTeach/AD2Template.git cd ad2template
-
Install the required Python packages:
pip install -r requirements.txt
- Go to the Releases page.
- Download the latest precompiled binary for your operating system.
- Extract the downloaded file to your desired location.
- Run the binary directly from the extracted folder.
Modify the config.ini
file in the project directory for your needs. The configuration file contains the following settings:
[CONFIG]
# Folder where the output files will be saved
output_folder=%appdata%\Microsoft\Signatures
# Whether to clean up the output folder before generating new files
cleanup_output_folder=false
# Folder where the Jinja2 templates are located
template_folder=templates
# Whether to print Active Directory attributes to the console
print_ad_attributes=false
# Logging level (e.g., DEBUG, INFO, WARNING, ERROR, CRITICAL)
log_level=ERROR
It is possible to use UNC paths and environment variables in the output_folder
and template_folder
settings.
The script will fetch the AD attributes of the current user, render the Jinja2 templates located in the templates
folder, and write the output files to the specified output_folder
.
Two demo Jinja templates are available in the templates
folder.
Run the script using the following command:
python __main__.py
Run the binary directly.
ad2template.exe
The script logs its operations to the console. The log level can be configured in the config.ini
file.
To report bugs or request new features, please use the GitHub Issues function.
This project is licensed under the GNU GENERAL PUBLIC LICENSE. See the LICENSE
file for details.
Tobias Wintrich, https://winteach.de
AD2Template
ist ein Python-Skript, das Dateien aus Jinja2-Vorlagen unter Verwendung von Attributen aus Active Directory (AD) generiert.
- Ruft Benutzerattribute aus Active Directory ab.
- Rendert Jinja2-Vorlagen mit AD-Attributen.
- Konfigurierbare Vorlagen- und Ausgabeverzeichnisse.
- Unterstützt das Bereinigen des Ausgabeverzeichnisses vor dem Generieren neuer Dateien.
- Automatisches Generieren von E-Mail-Signaturen über ein Login-Skript.
- Erstellen personalisierter Dokumente für Benutzer basierend auf AD-Attributen.
- Generieren von Konfigurationsdateien für Anwendungen unter Verwendung benutzerspezifischer Daten aus AD.
- Python 3.x
pyad
Bibliothekjinja2
Bibliothek
-
Klone das Repository:
git clone https://github.com/WinTeach/AD2Template.git cd ad2template
-
Installiere die erforderlichen Python-Pakete:
pip install -r requirements.txt
- Gehe zur Releases Seite.
- Lade das neueste vorgefertigte Binary für dein Betriebssystem herunter.
- Entpacke die heruntergeladene Datei an den gewünschten Ort.
- Führe das Binary direkt aus dem entpackten Ordner aus.
Passe die config.ini
Datei im Projektverzeichnis nach deinen Bedürfnissen an. Die Konfigurationsdatei enthält die folgenden Einstellungen:
[CONFIG]
# Verzeichnis, in dem die Ausgabedateien gespeichert werden
output_folder=%appdata%\Microsoft\Signatures
# Ob das Ausgabeverzeichnis vor dem Generieren neuer Dateien bereinigt werden soll
cleanup_output_folder=false
# Verzeichnis, in dem sich die Jinja2-Vorlagen befinden
template_folder=templates
# Ob Active Directory-Attribute in der Konsole ausgegeben werden sollen
print_ad_attributes=false
# Protokollierungsstufe (z.B. DEBUG, INFO, WARNING, ERROR, CRITICAL)
log_level=ERROR
Es ist möglich, UNC-Pfade und Umgebungsvariablen in den Einstellungen output_folder
und template_folder
zu verwenden.
Das Skript ruft die AD-Attribute des aktuellen Benutzers ab, rendert die im templates
-Ordner befindlichen Jinja2-Vorlagen und schreibt die Ausgabedateien in das angegebene output_folder
.
Zwei Demo-Jinja-Vorlagen sind im templates
-Ordner verfügbar.
Führe das Skript mit folgendem Befehl aus:
python __main__.py
Führe das Binary direkt aus.
ad2template.exe
Das Skript protokolliert seine Operationen in der Konsole. Die Protokollierungsstufe kann in der config.ini
Datei konfiguriert werden.
Um Fehler zu melden oder neue Funktionen anzufordern, benutze bitte die GitHub Issues Funktion.
Dieses Projekt ist unter der GNU GENERAL PUBLIC LICENSE lizenziert. Siehe die LICENSE
Datei für Details.
Tobias Wintrich, https://winteach.de