# Vorlage für die lokale Konfiguration von Syncova. # # Diese Datei enthält bewusst KEINE funktionsfähigen Zugangsdaten. # Erzeuge deine persönliche .env mit einem Zufallspasswort über: # # make dev-env # # Die erzeugte .env ist von der Versionsverwaltung ausgeschlossen. # --------------------------------------------------------------------------- # Allgemein # --------------------------------------------------------------------------- # Betriebsumgebung: development | test | demo | production # Nur außerhalb von "production" sind Demo-Daten überhaupt zulässig. SYNCOVA_ENV=development # --------------------------------------------------------------------------- # Datenbank (Control Plane) # --------------------------------------------------------------------------- SYNCOVA_DB_HOST=127.0.0.1 SYNCOVA_DB_PORT=5432 SYNCOVA_DB_NAME=syncova SYNCOVA_DB_USER=syncova # Es gibt bewusst keinen Standardwert. Ohne gesetztes Passwort startet kein Dienst. SYNCOVA_DB_PASSWORD= # TLS-Modus der Datenbankverbindung: disable | allow | prefer | require | verify-ca | verify-full # Für den produktiven Betrieb ist mindestens "require" vorgesehen. SYNCOVA_DB_SSLMODE=prefer # Obergrenze gleichzeitiger Datenbankverbindungen. SYNCOVA_DB_MAX_OPEN_CONNECTIONS=20 # --------------------------------------------------------------------------- # HTTP-API # --------------------------------------------------------------------------- # Bindeadresse der API. Standardmäßig nur lokal erreichbar. SYNCOVA_HTTP_LISTEN_ADDRESS=127.0.0.1:8080 # Für CORS zugelassene Herkünfte, kommasepariert. # Eine Wildcard (*) ist nicht zulässig; in der Produktion ist HTTPS Pflicht. SYNCOVA_HTTP_ALLOWED_ORIGINS=http://localhost:5173 # Maximale Größe eines Request-Bodys in Bytes (Standard: 1 MiB). SYNCOVA_HTTP_MAX_REQUEST_BODY_BYTES=1048576 # --------------------------------------------------------------------------- # Logging # --------------------------------------------------------------------------- # Log-Level: debug | info | warn | error SYNCOVA_LOG_LEVEL=info # Ausgabeformat: json | text SYNCOVA_LOG_FORMAT=text # --------------------------------------------------------------------------- # Verschlüsselung # --------------------------------------------------------------------------- # Schlüssel für die verschlüsselte Ablage von Secrets (z. B. MFA-Secrets). # Format: version:base64-32-byte, mehrere kommasepariert. # Einen neuen Schlüssel erzeugt: make generate-key # # Achtung: Ohne diesen Schlüssel sind verschlüsselte Daten dauerhaft unlesbar. # Es gibt bewusst keinen Standardwert. SYNCOVA_ENCRYPTION_KEYS= # Version, mit der neu verschlüsselt wird. Nur nötig, wenn mehrere Schlüssel # hinterlegt sind (Schlüsselrotation). # SYNCOVA_ENCRYPTION_CURRENT_KEY=v1 # --------------------------------------------------------------------------- # Anmeldung und Sitzungen # --------------------------------------------------------------------------- # Lebensdauer des Zugriffstokens. Bewusst kurz, damit ein entwendetes Token # schnell wertlos wird. SYNCOVA_AUTH_ACCESS_TOKEN_TTL=15m # Lebensdauer des Erneuerungstokens. SYNCOVA_AUTH_REFRESH_TOKEN_TTL=12h # Zeitfenster zwischen Passwortprüfung und zweitem Faktor. SYNCOVA_AUTH_MFA_CHALLENGE_TTL=5m # Fehlversuche bis zur Kontosperre und Dauer der Sperre. SYNCOVA_AUTH_MAX_FAILED_LOGIN_ATTEMPTS=5 SYNCOVA_AUTH_LOCKOUT_DURATION=15m # Fehlversuche je MFA-Herausforderung. SYNCOVA_AUTH_MAX_MFA_ATTEMPTS=5