Skip to content

Konfiguration

Matthias Schabhüttl edited this page Jun 12, 2026 · 1 revision

⚙️ Konfiguration

OpenSchichtplaner5 wird über Umgebungsvariablen konfiguriert. Kopiere .env.example nach .env und passe die Werte an.


Datenbankpfad

Variable Standard Beschreibung
SP5_DB_PATH (Pflicht) Pfad zum SP5-Datenbankverzeichnis mit den .DBF-Dateien
SP5_DB_PATH=/data/sp5/Daten

Sicherheit

Variable Standard Beschreibung
SECRET_KEY (Pflicht — ändern!) JWT-Signierungsschlüssel. Generieren: openssl rand -hex 32
ALLOWED_ORIGINS http://localhost:8000 CORS-Origins (kommagetrennt, kein Leerzeichen)
SP5_HSTS false HSTS-Header senden — nur bei HTTPS via Reverse-Proxy aktivieren!
SP5_DEV_MODE false Dev-Modus: NIEMALS in Produktion! Erlaubt Token-Auth-Bypass für Tests
TOKEN_EXPIRE_HOURS 8 JWT-Token-Gültigkeit in Stunden

⚠️ Produktion: SECRET_KEY unbedingt ändern und ALLOWED_ORIGINS auf eigene Domain einschränken!

# Sicheren SECRET_KEY generieren:
openssl rand -hex 32

Server

Variable Standard Beschreibung
HOST 0.0.0.0 Bind-Adresse für den Uvicorn-Server
PORT 8000 Port des API-Servers
DEBUG false Debug-Modus: false in Produktion

Rate Limiting & Brute-Force-Schutz

Variable Standard Beschreibung
RATE_LIMIT_LOGIN 5/minute Rate Limit für den Login-Endpunkt pro IP
RATE_LIMIT_API 200/minute Allgemeines API Rate Limit pro IP
BRUTE_FORCE_MAX_ATTEMPTS 5 Maximale Fehlversuche vor Kontosperre
BRUTE_FORCE_LOCKOUT_MINUTES 15 Sperrdauer in Minuten nach Brute-Force-Erkennung

Logging

Variable Standard Beschreibung
LOG_LEVEL INFO Log-Level: DEBUG | INFO | WARNING | ERROR | CRITICAL
LOG_FILE /app/logs/sp5-api.log Pfad zur Log-Datei

Session

Variable Standard Beschreibung
SESSION_CLEANUP_INTERVAL_MINUTES 60 Intervall (Minuten) für abgelaufene Session-Bereinigung

App-Metadaten

Variable Standard Beschreibung
APP_NAME OpenSchichtplaner5 Anwendungsname (erscheint in API-Docs)
APP_VERSION 1.0.0 Versionsnummer (für API-Docs)

Beispiel .env für Produktion

# Datenbankpfad
SP5_DB_PATH=/data/sp5/Daten

# Sicherheit — UNBEDINGT anpassen!
SECRET_KEY=dein-geheimer-schluessel-hier-openssl-rand-hex-32
ALLOWED_ORIGINS=https://schichtplaner.meinefirma.at
SP5_HSTS=true

# Server
HOST=0.0.0.0
PORT=8000
DEBUG=false

# Tokens
TOKEN_EXPIRE_HOURS=8

# Rate Limiting
RATE_LIMIT_LOGIN=5/minute
RATE_LIMIT_API=200/minute
BRUTE_FORCE_MAX_ATTEMPTS=5
BRUTE_FORCE_LOCKOUT_MINUTES=15

# Logging
LOG_LEVEL=INFO
LOG_FILE=/app/logs/sp5-api.log

Docker

Bei Docker-Deployments wird die Konfiguration über die .env-Datei oder docker-compose.yml übergeben:

environment:
  - SP5_DB_PATH=/app/sp5_db/Daten
  - SECRET_KEY=dein-geheimer-schluessel
  - ALLOWED_ORIGINS=https://schichtplaner.meinefirma.at
  - TOKEN_EXPIRE_HOURS=8

Siehe auch: Installation für vollständige Deployment-Anleitung.

🧸 OpenSchichtplaner5 v1.2.0

Home — Startseite


🚀 Einstieg


📊 Dashboard

  • Dashboard — Charts, Widgets & Performance

📅 Planung


📄 Berichte & Daten


🗃️ Stammdaten


🔗 Integrationen


⚙️ Administration


📱 Features


🔗 Links


📚 Verwandte Wikis

Clone this wiki locally