Audit-Siegel: Schluessel erreicht jetzt tatsaechlich den Container
Ohne diesen Fix waere das Siegel im Docker-Betrieb wirkungslos geblieben - die Variable wurde nirgends an den Container durchgereicht. docker-compose.yml listet die Umgebungsvariablen einzeln auf und speist sie aus der .env im Projektstamm; ein env_file gibt es nicht, backend/.env wird vom Container also gar nicht gelesen. Dokumentiert und ergaenzt hatte ich bisher nur backend/.env.example - also die Datei, die fuer den Container irrelevant ist. - AUDIT_HMAC_KEY und AUDIT_HMAC_KEY_OLD in docker-compose.yml und in docker/docker-compose.yml aufgenommen (beide mit :- Default, damit ohne Wert weiterhin fail-safe ungesiegelt geschrieben wird) - beide Variablen samt Erklaerung in die .env.example im Projektstamm und in docker/.env.example uebernommen - README benennt jetzt explizit, welche Datei fuer welchen Betrieb gilt (Stamm-.env bei Docker, backend/.env nur ohne Container) Verifiziert: `docker-compose config` loest AUDIT_HMAC_KEY korrekt auf. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -53,6 +53,34 @@ JWT_REFRESH_EXPIRES_IN=7d
|
||||
# Generieren: openssl rand -hex 32
|
||||
ENCRYPTION_KEY=change-this-to-64-hex-characters-please-rotate-before-production-xx
|
||||
|
||||
# ---------- Siegel für das Audit-Log ----------
|
||||
# OpenCRM protokolliert, wer wann welche Daten gesehen oder geändert hat – die
|
||||
# Beweisspur bei Streit oder Datenschutz-Nachfragen. Dieser Schlüssel versieht
|
||||
# jeden neuen Eintrag mit einem Siegel, das sich nur damit erzeugen lässt. Er
|
||||
# liegt AUSSERHALB der Datenbank; wer nur die Datenbank in die Hände bekommt,
|
||||
# kann damit nichts fälschen, ohne dass es auffliegt.
|
||||
#
|
||||
# Generieren: openssl rand -hex 32 (pro Umgebung ein eigener Wert)
|
||||
#
|
||||
# Ohne Wert läuft alles normal weiter, nur eben ungesiegelt – nichts fällt aus.
|
||||
# Nachträglich setzen ist jederzeit möglich: bestehende Einträge bleiben gültig,
|
||||
# ab dem Neustart werden neue gesiegelt (keine Fehlalarme dadurch).
|
||||
#
|
||||
# ACHTUNG – einmal gesetzt, nicht wieder entfernen: Einträge, die ohne Schlüssel
|
||||
# entstehen, werden beanstandet, sobald er zurück ist (ein ungesiegelter Eintrag
|
||||
# inmitten gesiegelter ist von einer Fälschung nicht zu unterscheiden).
|
||||
# Schlüssel sichern wie ein Passwort – geht er verloren, sind die damit
|
||||
# gesiegelten Einträge dauerhaft nicht mehr prüfbar.
|
||||
# Ausführlich erklärt in der README, Abschnitt "Audit-Siegel".
|
||||
AUDIT_HMAC_KEY=
|
||||
|
||||
# Nur beim Schlüsselwechsel füllen: die FRÜHEREN Schlüssel, kommagetrennt und
|
||||
# jüngster zuerst. Damit bleiben die bisherigen Einträge prüfbar, während neue
|
||||
# schon mit dem neuen Schlüssel gesiegelt werden. Nicht voreilig leeren – sonst
|
||||
# werden die alten Einträge als "manipuliert" gemeldet.
|
||||
# Beispiel: AUDIT_HMAC_KEY_OLD=<vorheriger>,<davor>
|
||||
AUDIT_HMAC_KEY_OLD=
|
||||
|
||||
# Server
|
||||
NODE_ENV=development
|
||||
PORT=3001 # Backend-internal Port (Dev: localhost:3001)
|
||||
|
||||
Reference in New Issue
Block a user