Session löschen nach schließung des Browserfensters.
Sipatshi
- php
Hallo Liebe Gemeinde,
gibt es eine Möglichkeit nach schließen des Browserfenster die Session zu löschen? Realisiert man sowas mit Javascript, weil die Schließung des Browserfensters Client-Seitig erfolgt? Wenn ja, existiert in js eine Funktion die auf solche aktionen reagiert?
Habe im Internet nichts finden können:-(
Gruß
Sipatshi
Hi,
gibt es eine Möglichkeit nach schließen des Browserfenster die Session zu löschen?
Keine wirklich zuverlässige.
Wozu denn überhaupt?
MfG ChrisB
Hallo ChrisB,
damit es ungefugten nicht möglich ist ins Backendbereich zu gelangen, weil einige Login-Parameter in der Session sind.
Die Session wird nach 20 Minuten gelöscht aber ich möchte noch zusätzlich die oben genannte funktion einbauen.
Gruß
Sipatshi
Hi,
damit es ungefugten nicht möglich ist ins Backendbereich zu gelangen, weil einige Login-Parameter in der Session sind.
Wie sollen die da noch rein kommen, wenn der Cookie mit der Session-ID mit dem Schliessen des Browserfensters sowieso verfällt?
MfG ChrisB
Hallo ChrisB,
ich habe es mit $_SESSION realisiert und damit wird es beim schließen nicht gelöscht, obwohl es ja auch ein Cookie ist?!?
Oder meinst du ich sollte ein $_COOKIE nutzen? Dort die session_id verpacken?
Gruß
Sipatshi
Hi,
ich habe es mit $_SESSION realisiert und damit wird es beim schließen nicht gelöscht, obwohl es ja auch ein Cookie ist?!?
Oder meinst du ich sollte ein $_COOKIE nutzen? Dort die session_id verpacken?
Besorg' dir mal ein bisschen Ahnung davon, wie Sessions unter PHP überhaupt funktionieren.
MfG ChrisB
Hallo,
habe bischen Ahnung besorgt :-) Hast recht, nach schließen des Browsers ist die session_weg. Entschuldige. Ist mir das peinlich :-(
Gruß
Sipatshi
Ums nochmal klar zu stellen. Nein, die Session ist nicht weg nach schließen des Browserfensters. Was weg ist, ist das Cookie im Browser, das die Session-ID enthält und damit idealerweise jeder Hinweis unter welcher ID man die noch aktive Session findet. Hat aber jemand anderes die ID (zum Beispiel weil er in der Leitung mitlesen konnte, aus der Browser-History wenn die Session-ID mangels Cookie an die Adresse angehängt wurde etc.) kann er sich in die Session, innerhalb der 20 Minuten bis sie vom Server beendet wird, einklinken und kommt damit auch in dein Backend.
Hi!
Hat aber jemand anderes die ID (zum Beispiel weil er in der Leitung mitlesen konnte, aus der Browser-History wenn die Session-ID mangels Cookie an die Adresse angehängt wurde etc.) kann er sich in die Session, innerhalb der 20 Minuten bis sie vom Server beendet wird, einklinken und kommt damit auch in dein Backend.
Er kann sich auch einklinken, während der andere die Session noch aktiv benutzt. Das Risiko, veränderte Daten oder ungewöhnliches Verhalten zu Gesicht zu bekommen, während man noch aktiv ist, ist nur höher.
Und die 20 Minuten sind ein Minimalwert, den die Sessiondaten seit dem letzten Zugriff erhalten bleiben. Da die Garbage Collection nur beim session_start() wirksam wird, wofür also ein Script-Aufruf vonnöten ist, und zudem der GC auch nicht stets sondern (mit Default-Konfiguration) nur per Zufall aufgerufen wird, ist die Zeit durchaus länger auf wenig frequentierten Systemen.
Lo!
Hello,
Und die 20 Minuten sind ein Minimalwert, den die Sessiondaten seit dem letzten Zugriff erhalten bleiben. Da die Garbage Collection nur beim session_start() wirksam wird, wofür also ein Script-Aufruf vonnöten ist, und zudem der GC auch nicht stets sondern (mit Default-Konfiguration) nur per Zufall aufgerufen wird, ist die Zeit durchaus länger auf wenig frequentierten Systemen.
Es sei denn, dass das System das mit einem Cronjob übernimmt. Der läuft dann einmal pro Minute und ist damit schon ziemlich genau an der session.gc_maxlifetime dran, die ja bekanntlich besser session.gc_minlifetime heißen sollte :-))
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hello,
habe bischen Ahnung besorgt :-) Hast recht, nach schließen des Browsers ist die session_weg. Entschuldige. Ist mir das peinlich :-(
Die Sessiondatei ist nach Schließen des Browsers aber nicht weg. Und dort stehen die Daten drin.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hello,
Wie sollen die da noch rein kommen, wenn der Cookie mit der Session-ID mit dem Schliessen des Browserfensters sowieso verfällt?
Der Cookie verfällt zwar, aber die Sessiondatei ist noch nicht verfallen.
Jemand, der also eine Kopie dieses Cookies anlegt, kann also noch an die Sessiondaten herankommen.
Hier hilft nur desizierter Request mit "Abmeldung".
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hello,
gibt es eine Möglichkeit nach schließen des Browserfenster die Session zu löschen? Realisiert man sowas mit Javascript, weil die Schließung des Browserfensters Client-Seitig erfolgt? Wenn ja, existiert in js eine Funktion die auf solche aktionen reagiert?
Hier hilft nur desizierter Request mit "Abmeldung".
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg