Odhlášení uživatele ze všech prohlížečů
- Buri_xo
- Člen | 2
Ahoj, chtěl jsem se zde zeptat zda máte někdo nějakou best practice na to jak odhlásit jednoho uživatele ze všech prohlížečů ve kterých je aktuální přihlášen. Pokud nad User zavolám logout() odhlásí ho to jen z prohlížeče kde byla akce zavolaná. A já bych potřeboval zajistit aby byl odhlášen ze všech.
Příklad:
Jsem přihlášen za jednoho uživatele na Firefoxu a za toho stejného
uživatele na Chromu, a chtěl např. když změním heslo aby ho to automaticky
na všech přihlášených browserech odhlásilo.
Napadlo mě vymazat sessiony, ale nevim si rady stim jak získat všechny sessiony kde mohl být uživatel obsažen. Existuje na toto nějaké řešení ? :)
Předem díky za odpovědi :)
- Marek Bartoš
- Nette Blogger | 1260
Můžeš implementovat IdentityHandler, se kterým při každém requestu obnovíš identitu uživatele nebo ji smažeš, čímž ho odhlásíš.Pak už je na tobě, podle jakých pravidel ho odhlásíš. Standardní možnost je si, třeba v databázi, evidovat seznam všech aktivních přihlášení. Jestliže v tabulce není, zrušíš jej.
- Kamil Valenta
- Člen | 815
Na session id bych se nespoléhal a uchovával bych fingerprint daného zařízení. A v tabulce stačí uchovávat jen to aktivní zařízení, ta neaktivní se po odhlášení mohou promazat.