Autor Zpráva
Sennin
Profil
Zdravím ľudkovia....
Chcel by som sa Vás spítať či neviete ako zdielať cookies medzi doménami tak že mám domény ab.xx a xz.xx a na doméne ab.xx mám prihlasovacie form a potrebujem aby keď sa užívateľ prihlási aby ho to prihlásilo aj na domene xz.xx samozrejme obe aplikácie sú postavené na Laravel a obe zdieľajú rovnakú DB. Niečo podobé ako má Google s Youtube a Blogger

Skúšal som rôzne praktiky z stackoverflow ale bezúspešne. Viem že Cookies platí len pre jednu doménu ale neviem ako to zpojazdniť.

PS: áno Session.php mám nastavené, Env mám nastavené dokonca aplikácie zdieľajú jeden kľúč...
PS2: Keď som to skúšal na subdoméne a jej doméne tak ak som sa prihlásil na sub.ab..xx tak ma to prihlásilo aj na ab.xx to viem, že sa dá ale medzi doménami je to jeden veľky otáznik teda pre mňa.

Za odpoveď všetkým vopred Ďakujem.
Keeehi
Profil
Mít cookie pro dvě domény nejde.

Dá se to udělat tak, že se při požadavku na přihlášení na jedné stránce uživatel přesměruje na druhou stránku. Pokud je tam přihlášen, přesměruje se zpět s nějakým náhodným (dostatečně bezpečným) identifikátorem. Tento token si ta stránka přečte a u té druhé si ověří, že ten token (identifikátor) opravdu vygenerovala a pro jakého uživatele. Pokud je toto ověření úspěšné, přihlásí daného uzivatele.

Jelikož tvé stránky sdílí databázi, tak ta stránka s nepřihlášeným uživatelem nemusí posílat dotaz na tu druhou, ale může si tu informaci sama ověřit v databázi.
Sennin
Profil
takže pridať nejaký stlpec do db napr. is_logged_in a a ta druha stránka si to skontroluje a prihlási? alebo ako si to myslel?
Keeehi
Profil
Sennin:
Úplně jinak. Nedá se jen ověřit že je někde přihlášen. Musí se ověřit že je přihlášen v tom daném prohlížeči. A na to jednoduchý sloupec is_logged_in je krátký.

Na ty tokeny je vodné mít samostatnou tabulku.

Není to sice raketová věda ale je potřeba ohlídat docela dost věcí. A jelikož se jedná o bezpečnost, tak dokud přesně nevíš co dělat, tak je lepší se o to nepokoušet. Pořádně si prostuduj, jak fungují různá SSO řešení.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0