# ADR-002: Serverseitige Sessions in PostgreSQL **Datum:** 2026-07-15 · **Status:** Akzeptiert ## Kontext Flask nutzte Client-Side-Sessions (signierte Cookies) mit optionalem Secret; ohne gesetztes Secret wurde pro Prozessstart ein Zufallswert erzeugt (Sessions bei Neustart weg, mehrere Worker inkompatibel). Sessions waren nicht widerrufbar. ## Entscheidung Sessions liegen in der DB (`sessions`-Tabelle). Cookie enthält nur ein 256-Bit-Zufallstoken; die DB speichert dessen SHA-256. CSRF-Token wird pro Session serverseitig gehalten. ## Konsequenzen + Widerrufbar (Logout, Kontosperrung löscht Sessions), neustart- und multi-instanz-fest, kein Secret-Management (ITSM_SECRET_KEY entfällt). + DB-Leak kompromittiert keine laufenden Sessions (nur Hashes). − Ein DB-Roundtrip pro Request (Middleware); bei aktueller Last irrelevant.