Merge branch 'feature/iam-12-aktive-sitzungen-verwaltung' into feature/qa-02-pruefgate-identitaet-mandanten
# Conflicts: # scripts/reset-test-env.sh # scripts/run-checks.sh
This commit is contained in:
@@ -0,0 +1 @@
|
||||
DROP TABLE IF EXISTS sessions;
|
||||
@@ -0,0 +1,18 @@
|
||||
-- Aktive-Sitzungen-Verwaltung (IAM-12, siehe core-kanban/tickets/IAM-12.md).
|
||||
-- Bewusst SERVERSEITIG mit widerrufbarem Zustand — anders als IAM-02s
|
||||
-- zustandsloses JWT (API-05-Entscheidung fuer Modul-zu-Modul-Vertrauen),
|
||||
-- braucht die Selbstbedienungs-Sitzungsuebersicht einen Ort, an dem eine
|
||||
-- einzelne Sitzung sofort und nachweislich ungueltig gemacht werden kann.
|
||||
-- token_hash enthaelt NIEMALS den Klartext-Token, nur dessen SHA-256-Hash.
|
||||
CREATE TABLE sessions (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
user_id UUID NOT NULL REFERENCES users(id),
|
||||
token_hash BYTEA NOT NULL UNIQUE,
|
||||
device_info TEXT NOT NULL DEFAULT '',
|
||||
ip TEXT NOT NULL DEFAULT '',
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
|
||||
last_seen_at TIMESTAMPTZ NOT NULL DEFAULT now(),
|
||||
revoked_at TIMESTAMPTZ
|
||||
);
|
||||
|
||||
CREATE INDEX sessions_user_idx ON sessions (user_id);
|
||||
Reference in New Issue
Block a user