Audit-Log (GoBD)
Jede Änderung an einem Mitarbeiter, einer Stelle oder einem Compliance-Binding wird automatisch im Audit-Log mit SHA-256-Hash-Chain protokolliert.
Was wird geloggt
- Entity (
employee,position,compliance_binding,magic_link, …) - Action (
create,update,delete,activate,deactivate,self_service_update,reuse_attempt) - Actor (E-Mail des angemeldeten Admins, oder
portal:<email>bei Self-Service) - Diff (welche Felder, mit
beforeundafter) - prev_hash + content_hash (Verkettung, GoBD-konform)
Wo einsehen
Verwaltung → Protokoll. Filterbar nach Entity, Actor, Zeitraum.
Hash-Chain
Jeder Eintrag enthält den Hash des vorherigen Eintrags plus den Hash über die eigenen Felder. Eine nachträgliche Manipulation einer alten Zeile würde alle nachfolgenden Hashes ungültig machen — der Chain-Check fällt auf.
Für Wirtschaftsprüfer / GoBD-Auditoren: CSV-Export über
Protokoll → Export. Enthält alle Hashes, also extern verifizierbar.
Stolperfallen
- Lange Historie: das Log wächst mit jeder Änderung. Für langfristigen Betrieb sinnvoll: Archiv-Strategie nach z.B. 10 Jahren (GoBD-Frist), Export ins Langzeit-Archiv, dann Löschung der ältesten Einträge.
- Hash-Chain bricht bei manuellem DB-Eingriff: wer direkt in Postgres rumschreibt, zerstört die Verkettung. Genau das ist der Punkt — die Chain ist Schutz davor.