Tom: Andere Session beenden

Beitrag lesen

Hello,

Effekt: Keine weitere Instanz muss sich um die Prüfung der Aktivität der Sessions kümmern, das regelt sich alles von alleine. Die Existenz einer Session-ID sagt nichts über den Login-Zustand aus (sollte sie zumindest nicht, wenn du das so programmiert hast, ändere es), das ist allein Sache der in den Session-Daten gespeicherten Informationen.

@Jan K.:

Unterscheide zwischen einem sessionbasierten Rechtesystem und einem requestbasierten Rechtesystem.

Wenn Du Deine Applikation mit einem requestbasierten Rechtesystem ausstattest, dann wird pro Request geprüft, welche Rechte für den User eingestellt sind. Die werden zweckmäßigerweise in einer Datenbank gespeichert. Diese Vorgehensweise hat auch den Vorteil, dass man in der DB auch gelich den letzten Requestzeitpunkt speichern kann und so auch leicht das beliebte "wer ist Online"[1] realisieren kann. Außerdem ist es so möglich, dem User während seiner Session administrativ Rechte zu entziehen oder zusätzlich zu erteilen.

Bei einem sessionsierten Rechtesystem werden üblicherweise die Rechte beim "Login" in der Session gespeichert und gelten dann solagen, wie die Session gültig ist.

[1] es kann so durch eine einfache Abfrage festgestellt werden, welche User innerhalb eines gewissen Zeitfensters Requests abgesetzt haben. Ob sie noch weitere Requests absetzen werden, kann das System nicht wissen. Es gibt bei HTTP kein echtes "Online".

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de