QA-15 F-06: TOTP-Secrets verschluesseln, Replay-Schutz, Sitzungswiderruf bei Passwortaenderung #118

Closed
patrick wants to merge 0 commits from feature/qa-15-f06-token-format-haertung into integration/gesamtprojekt
pull from: feature/qa-15-f06-token-format-haertung
Owner

Behebt QA-15-Befund F-06 (docs/SICHERHEITSPRUEFUNG-GESAMTPROJEKT.md) und setzt die Sitzungstoken-Rotation gemaess User-Entscheidung 2026-09-22 um.

  • TOTP-Secrets liegen nur noch verschluesselt in der Datenbank (Migration 0009, eigener Master-Key, fail closed ohne Schluessel, Nachverschluesselungs-Werkzeug -encrypt-totp-secrets)
  • Wiederholungsschutz: ein TOTP-Code ist nach der ersten Verwendung innerhalb seines 90s-Fensters nicht erneut gueltig
  • Passwortaenderung widerruft jetzt alle alten Sitzungen (RevokeAllForUser) und stellt dem Aufrufer ein frisches Token aus

Pruefungen auf 204: go build/vet sauber, gofmt leer, internal/totp und internal/auth gruen (inkl. neuer Tests fuer Verschluesselung/Replay/Rotation), scripts/migrations-fresh-check.sh PASS (88 Tabellen, keine Kollision), scripts/e2e-core-dms.sh 10/10, scripts/e2e-module-keys.sh 8/8. Details und Entscheidungen: docs/QA-15-F06-TOKENFORMAT-PRUEFPROTOKOLL.md

Kein Merge nach main.

🤖 Generated with Claude Code

Behebt QA-15-Befund F-06 (docs/SICHERHEITSPRUEFUNG-GESAMTPROJEKT.md) und setzt die Sitzungstoken-Rotation gemaess User-Entscheidung 2026-09-22 um. - TOTP-Secrets liegen nur noch verschluesselt in der Datenbank (Migration 0009, eigener Master-Key, fail closed ohne Schluessel, Nachverschluesselungs-Werkzeug `-encrypt-totp-secrets`) - Wiederholungsschutz: ein TOTP-Code ist nach der ersten Verwendung innerhalb seines 90s-Fensters nicht erneut gueltig - Passwortaenderung widerruft jetzt alle alten Sitzungen (RevokeAllForUser) und stellt dem Aufrufer ein frisches Token aus Pruefungen auf 204: go build/vet sauber, gofmt leer, internal/totp und internal/auth gruen (inkl. neuer Tests fuer Verschluesselung/Replay/Rotation), scripts/migrations-fresh-check.sh PASS (88 Tabellen, keine Kollision), scripts/e2e-core-dms.sh 10/10, scripts/e2e-module-keys.sh 8/8. Details und Entscheidungen: docs/QA-15-F06-TOKENFORMAT-PRUEFPROTOKOLL.md Kein Merge nach main. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
patrick added 5 commits 2026-09-22 09:07:56 +02:00
QA-15 F-06: TOTP-Secrets verschluesselt speichern, Replay-Schutz, Sitzungswiderruf bei Passwortaenderung
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
Supply-Chain-Scan (Go) / govulncheck (push) Canceled after 0s
052d63aadb
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
QA-15 F-06: Tests auf verschluesselten Store umgestellt
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
Supply-Chain-Scan (Go) / govulncheck (push) Canceled after 0s
1808f72cb0
QA-15 F-06: Tests fuer Verschluesselung, Replay-Schutz und Sitzungswiderruf
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
Supply-Chain-Scan (Go) / govulncheck (push) Canceled after 0s
4aeec0d9b6
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
QA-15 F-06: Testschema fuer Sitzungswiderruf-Test korrigiert
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
Supply-Chain-Scan (Go) / govulncheck (push) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
85c093e509
QA-15 F-06: Pruefprotokoll
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (pull_request) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (pull_request) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (pull_request) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (pull_request) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (pull_request) Canceled after 0s
CI / Web (dms-browser) (pull_request) Canceled after 0s
CI / Web (pdf-viewer) (pull_request) Canceled after 0s
CI / Web (shl) (pull_request) Canceled after 0s
Core-Schnittstellen-Vertragstests / contract-tests (pull_request) Canceled after 0s
Supply-Chain-Scan (Go) / govulncheck (pull_request) Canceled after 0s
Supply-Chain-Scan (npm) / npm-audit (pull_request) Canceled after 0s
Core-Pflichttest-Gate / pflichttest-gate (pull_request) Canceled after 0s
RBAC-Rollenhierarchie-Pflichtgate / rbac-policy-invariant (pull_request) Canceled after 0s
c0de004e57
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
patrick closed this pull request 2026-09-25 23:30:42 +02:00

Pull request closed

This pull request cannot be reopened because the branch was deleted.
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: scripte/nexarch#118