|
|
d18bd30adf
|
test(auth): Story 5.1 — Audit-Coverage-Integrationstest (login_ok, PII-frei)
|
2026-07-07 23:16:04 +02:00 |
|
|
|
66717014d0
|
harden(auth): cookie secure-by-default, sendMagicLink try/catch (Neutralität), :id-Validierung (qwen-Backend-Gate, verifiziert)
|
2026-07-07 23:07:32 +02:00 |
|
|
|
480a4c3b1c
|
harden(auth): atomarer Token-Claim in consumeLoginToken (TOCTOU-frei, qwen-Gate)
|
2026-07-07 22:54:11 +02:00 |
|
|
|
facbb48bbf
|
feat(auth): Stories 3.2/3.3 — Admin-Nutzerverwaltung (add/list/remove) + Last-Admin-Guard + CASCADE
|
2026-07-07 22:47:22 +02:00 |
|
|
|
846ca4f83a
|
feat(auth): Story 3.1 — /api/state pro Nutzer hinter Auth (Anti-IDOR), documents (user_id,key), Startup seed+migrate
|
2026-07-07 22:46:25 +02:00 |
|
|
|
0b25c7b493
|
feat(auth): Stories 2.3-2.5 — Auth-Routen (neutral request, scanner-sicheres confirm, me/logout, Notzugang) + cookie-parser
|
2026-07-07 22:41:11 +02:00 |
|
|
|
b08988c2a5
|
feat(auth): Story 2.2 — Mailer (nodemailer + Konsolen-Fallback)
|
2026-07-07 22:37:02 +02:00 |
|
|
|
08c32bcf0f
|
feat(auth): Story 2.1 — In-Memory Rate-Limiter (pro Key)
|
2026-07-07 22:36:10 +02:00 |
|
|
|
07f1bccff0
|
feat(auth): Story 1.5 — atomare, idempotente Migration Alt-Daten → Admin
|
2026-07-07 22:34:30 +02:00 |
|
|
|
c994dbf3b5
|
feat(auth): Story 1.4 — seedAdmin + Fail-Fast auf ADMIN_EMAIL
|
2026-07-07 22:33:14 +02:00 |
|
|
|
c1fc60cf02
|
feat(auth): Story 1.3 — Sessions (idle+absolut, gedrosselter last_seen, delete)
|
2026-07-07 22:30:54 +02:00 |
|
|
|
fb708912d7
|
feat(auth): Story 1.2 — normalizeEmail + Login-Token (SHA-256, einmalig, 30min)
|
2026-07-07 22:29:03 +02:00 |
|
|
|
b2dbd31b41
|
feat(auth): Story 1.1 — Auth-Schema (users/tokens/sessions/audit) + foreign_keys + audit-Helper
Fuegt users/login_tokens/sessions/audit_log Tabellen + FK-Indizes zu
server/db.js hinzu (foreign_keys=ON fuer CASCADE), plus server/audit.js
(append-only, keine PII). Bestehende documents/history-Tabellen und
exports unveraendert. TDD: server/auth-schema.test.js zuerst rot,
dann gruen; volle Suite (24 Tests) regressionsfrei.
|
2026-07-07 22:21:59 +02:00 |
|
|
|
97e58903b8
|
feat(backend): automatisches taegliches SQLite-Online-Backup
|
2026-07-07 15:50:34 +02:00 |
|
|
|
45503f03ee
|
feat(backend): GET/PUT /api/state mit Dokument-Persistenz
|
2026-07-07 15:46:48 +02:00 |
|
|
|
9714d845bb
|
feat(backend): SQLite-Schicht mit WAL, Dokumenten und Historie
|
2026-07-07 15:43:30 +02:00 |
|
|
|
3b0632c4b9
|
feat(backend): Express-Server liefert statisch + /api/health
|
2026-07-07 15:40:06 +02:00 |
|