M8: Backup/Restore-Prozess und Monitoring dokumentiert

docs/betrieb-backup-monitoring.md: taeglicher mysqldump-Cron-Job mit
Aufbewahrung, Restore-Befehl inklusive Hinweis auf scripts/migrate.php,
vierteljaehrlicher Restore-Test. Produktive PHP-Fehlerkonfiguration
(display_errors aus, log_errors an) und die aktiv zu beobachtenden
Signale ohne dediziertes APM-Tool: audit_log fuer ungewoehnliche
Admin-Aktionen, rate_limit_attempts fuer Brute-Force-Versuche,
outbound_emails.status=failed fuer Mailversand-Probleme.

Damit ist M8 fuer den geplanten Scope abgeschlossen, mit einer bewusst
offenen Ausnahme (Content-Security-Policy, braucht Template-Bereinigung
der bestehenden Inline-Styles).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-15 20:19:20 +02:00
co-authored by Claude Sonnet 5
parent f60c0bb85e
commit 3fc65812ef
2 changed files with 118 additions and 4 deletions
+12 -4
View File
@@ -308,7 +308,7 @@ Nicht tun:
| M5 | App-Kern | Weit fortgeschritten: Kernseiten lesen und schreiben tenant-sicher gegen das Ledger, inklusive Hinweise und rollenbasiertem Zugang; offen ist ein eigener Zahlungs-Screen |
| M6 | Betriebsflows | Abgeschlossen: Import, Export, Mail und Jahresabschluss sind auditierbar |
| M7 | Landingpage | Public-Seite und Auth-Seiten sind im gemeinsamen Stil nutzbar; spätere Ausbaustufen folgen |
| M8 | Härtung | Weit fortgeschritten: Security-Headers, Rate-Limits, Audit-Log, Mandanten-Isolations- und Rollenmatrix-Tests stehen; Datenexport, Löschung und Betriebs-Doku offen |
| M8 | Härtung | Abgeschlossen: Security-Headers, Rate-Limits, Audit-Log, Mandanten-Isolation/Rollenmatrix getestet, Datenexport, Löschung/Anonymisierung, Backup/Monitoring dokumentiert (CSP als bewusst offener Punkt) |
| M9 | Cutover | Produktivumstellung ist vorbereitet und Legacy ist read-only |
### M0: Planungs- und Sicherheitsbaseline
@@ -641,8 +641,14 @@ Die SaaS-App für mehrere Kunden sicher betreiben.
Schritte:
- Backups und Restore-Prozess definieren.
- Monitoring und Fehlerlogging einrichten.
- Backups und Restore-Prozess definieren: erledigt (dokumentiert).
`docs/betrieb-backup-monitoring.md` beschreibt den täglichen
`mysqldump`-Cron-Job, Aufbewahrung, Restore-Befehl und den
vierteljährlichen Restore-Test.
- Monitoring und Fehlerlogging einrichten: erledigt (dokumentiert).
Produktive PHP-Fehlerkonfiguration sowie die aktiv zu beobachtenden
Signale (`audit_log`, `rate_limit_attempts`, `outbound_emails`) sind in
`docs/betrieb-backup-monitoring.md` festgehalten.
- Audit-Log für Admin-Aktionen prüfen: erledigt. Neue Tabelle `audit_log`,
protokolliert Mitgliederverwaltung, Storno, Mandant-Einstellungen,
Hinweise, CSV-Import, Jahresbonus und Live-Mailversand; sichtbar für
@@ -672,7 +678,9 @@ Schritte:
Ergebnis:
- SaaS ist betrieblich und datenschutzseitig belastbarer.
- Stand: gestartet. Dokumentation: `docs/m8-haertung.md`.
- Stand: abgeschlossen für den M8-Scope, mit einer bewusst offenen
Ausnahme (Content-Security-Policy, siehe `docs/m8-haertung.md`).
Dokumentation: `docs/m8-haertung.md`, `docs/betrieb-backup-monitoring.md`.
Abhängigkeiten: