Jedna session pres vic domen v ramci jednoho webu rubrika: Programování: PHP
Mam web aplikaci, ktera bezi na webserveru (1 instance) ktera obsluhuje vice domen
app.site1.com
app.site2.com
app.site3.com
Chtel bych aby uzivatel i kdyz se v ramci webu presune z app.site1.com na app.site2.com mel dostupnou stale stejnou session.
To samozrejme jen tak samo nejde, protoze session id je ulozene v cookies a ty browser pro kazdou posila jine. Podstatne je tez, ze to nejsou subdomeny na jedne domene, ale komplene odlisne host headery.
Resil tohle nekdo?
BTW: Session identifikator predavany jako get parametr neni reseni, ktere bych chtel pouzit
[UPDATE]: Mam proof of concept reseni, ktere je kombinace javascriptu prohlaseni jednoho z aliasu na serveru jako "master" a v pripade, ze cookie pro session_id se lisi od te, kterou pomoci JS dostanu z masteru, tak se na klientu zmeni tato cookie a stranka se reloadne. Zrejme to funguje, ale nevim jestli je to dost dobry reseni.
Řešení se jmenuje Single Sign On (SSO).
Komentáře
- kacerr : Mne ani tak primarne nejde o "prihlaseni" i kdyz je to zrejme z casti je podobna uloha, ale o to, aby uzivatel co ma neco ulozeneho v session to mel k dispozici kdyz ke STEJNEMU WEBU (ktery ma vice aliasu) pristoupi pomoci ruznych aliasu. Tedy kdyz nad tim tak premyslim, tak krome toho, ze tahle tvoje "rada" je spis placnuti do vody nez rada, tak je navic dost mimobezna s tim na co jsem se puvodne ptal (mozna jsem se ptal blbe?) — 12.4.2014
- Michal Kleiner : Řešení na principu SSO je o tom, že se pro předání dat/session mezi doménami udělá nějaký roundtrip na místo, které má hlavní data, a zase se vrátí zpět. Ať javascriptem na pozadí nebo při první návštěvě stránky. Přihlašování přes tuhle jednu autoritu být řešeno může a nemusí. Ale dává to smysl. *** V podstatě to, co popisuje Václav i Taco, je to samé, akorát řečené trochu jinak. A taky sem nemyslel rovnou nasazovat nějaké celé SSO řešení, dá se z něj vyzobat co je potřeba nebo se inspirovat a ten roundtrip s předáváním informací na základě nějakého tokenu si napsat. — 13.4.2014
- siq : Tak isto SSO nemusi poskytovat len session identifikator, ale moze priamo poskytnut aj session data - zalezi aku architekturu pouzijes. Urcite je ale lepsie pouzit nejaky takyto vzor ktory uz existuje nez si bastlit nieco vlastne. Ja by som rozhodne siel do SSO riesenia. — 14.4.2014
Pro zobrazení všech 8 odpovědí se prosím přihlaste:
Nebo se přihlaste jménem a heslem:
Komentáře