Session Management
Das Session Management verwaltet sämtliche aktiven Anmeldungen eines Benutzers.
Jede erfolgreiche Anmeldung erzeugt eine eigene Sitzung, die unabhängig von anderen Sitzungen verwaltet wird.
Dadurch können mehrere Geräte gleichzeitig angemeldet sein, ohne sich gegenseitig zu beeinflussen.
Ablauf
Ziele
Das Session Management verfolgt mehrere Ziele:
- Verwaltung aktiver Sitzungen
- Erkennung unbekannter Geräte
- Sichere Verwaltung von Refresh Tokens
- Nachvollziehbarkeit von Anmeldungen
- Gezieltes Beenden einzelner Sitzungen
Eigenschaften
Jede Sitzung besitzt eigene Informationen.
Beispielsweise:
- Sitzungs-ID
- Benutzer
- Erstellungszeitpunkt
- Letzte Aktivität
- Verknüpftes Gerät
- Refresh Token
- Status
Mehrere Sitzungen
Ein Benutzer kann gleichzeitig auf mehreren Geräten angemeldet sein.
Beispiele:
- Desktop-PC
- Laptop
- Smartphone
Jede Sitzung wird unabhängig verwaltet.
Das Beenden einer Sitzung beeinflusst andere aktive Sitzungen nicht.
Sicherheitsvorteile
Durch die Trennung einzelner Sitzungen können:
- kompromittierte Sitzungen gezielt beendet werden,
- unbekannte Geräte erkannt werden,
- verdächtige Aktivitäten leichter analysiert werden.
Sitzung beenden
Eine Sitzung endet unter anderem durch:
- Logout
- Ablauf der Sitzung
- manuelles Entfernen
- Sicherheitsmaßnahmen
Nach dem Beenden verliert der zugehörige Refresh Token seine Gültigkeit.
API-Endpunkte
GET /auth/sessions
DELETE /auth/sessions/{session_id}
Zugehörige Dokumentation
- Login
- JWT
- Refresh Token
- Geräteverwaltung
- Login-Historie
- Logout
Jede Anmeldung erzeugt eine eigene, unabhängig verwaltete Sitzung und bildet die Grundlage für eine sichere Mehrgeräte-Unterstützung.