2016-07-13 14 views
0

In der Implementierung von Login möchte ich sicherstellen, dass wenn ein Benutzer bereits in einem Tab des Browsers eingeloggt ist und die selbe Website in einem anderen Tab öffnet, wird er auf die Homepage umgeleitet Loginseite. Es ist ein ideales Szenario, wie es auf der ganzen Website passiert. Ich erreiche dasselbe, indem ich ein einmal angemeldetes eindeutiges Benutzer-Token im lokalen Speicher speichere. Ist es der beste Weg, dies zu erreichen? Freundliche Anleitung! ist es sicher? Wenn nicht wie es geht?Cross/Multiple Tab Kommunikation während der Anmeldung

Antwort

0

Betrachten Sie alles auf dem Client als verdorben oder möglicherweise manipuliert. Im Grunde sollten Sie also immer auf der Serverseite nachsehen, ob der Client eine gültige Sitzung hat und erst dann die Homepage an ihn liefern.

Ich würde einen Cookie von der Server-Seite gesetzt - nur eine zufällige ID gebunden an die tatsächliche Client-Sitzung auf dem Server. Der Client könnte sich also damit herumschlagen, aber es würde schwer sein, eine andere (auch zufällige) Session-ID zu erraten. Der Cookie sollte vom Server gelöscht werden, wenn sich der Benutzer abmeldet.

Dann würde ich bei jedem Anruf überprüfen, ob er eine gültige Session-ID hat und ihn nicht direkt per Umleitung zur Login-Seite schickt. Zusätzlich könnten Sie ihn dann von der Login-Seite zur Homepage senden, wenn er bereits eingeloggt ist.