Zadejte hledaný výraz...
Jakub Glos
Webtrh.cz
Vývoj webových stránek na WordPressu a proklientský přístup pro freelancery
Třídenní infromacemi nabitý prezenční + online kurz v Praze od Webtrhu pouze za 2 871 Kč
Více informací

Jak na cookies na více doménách?

Luboš Hájek
verified
rating uzivatele
(12 hodnocení)
9. 10. 2008 11:21:36
Jen doplním když už jsem toto téma načal. OpenID nemá řešit a nahradit registraci na stránkách, tzn. registrovat a vytvořit účet se musí také, ale místo jména a hesla se zadá pouze uživatelské openID. Tím o žádná práva a další věci nepřijdete.
Mě jako uživateli ušetříte pamatovat si další heslo na jiný portál (každý rozumný člověk nesvěří své heslo co používá jinde kde jakému blogerovi nebo eshopu). A já nemusím řešit jak moc máte zabezpečený vy web, protože u vás žádné heslo nikdy zadávat nemusím a nebudu.
V tom je hlavní myšlenka OpenID. Ale uznávám v ČR to ještě není tak daleko a není zde o tom tolik informací a moc českých webu podporu openID zatím nemá.
Haaja
Napsal Petr Havelka;125578
Taky si myslím, že OpenID není ničím světoborným. O to více mě překvapuje, že to integrují například do Drupala. V OpenId mají všichni uživatelé stejné práva, takže se to stává skoro nepoužitelným.
9. 10. 2008 11:21:36
https://webtrh.cz/diskuse/jak-na-cookies-na-vice-domenach/strana/2/#reply137146
meloun
verified
rating uzivatele
(5 hodnocení)
6. 1. 2010 22:07:15
Podařilo se tohle nějak vyřešit?
6. 1. 2010 22:07:15
https://webtrh.cz/diskuse/jak-na-cookies-na-vice-domenach/strana/2/#reply137145
Napíšu sem to samé co do vlákna o trošku výše:
Napadá mě jediné řešení (vycházím z faktu že nejde jednoznačně zakázat uživatele ale naopak jde jednoznačně ověřit uživatele) toto používám upravené když chci odstavit web pro všechny kromě sebe.
Jelikož už dávno není IP jednoznačný identifikátor přidám k němu ještě verzi ptohlížeče verzi os rozlišení obrazovky a další parametry i včetně ip.
Tohle nějkým způsobem zakoduju do hashe a uložím do db přihlášených uživatelů. Pak z na jednotlivých doménach udělám scripty které při přístupu vytvoří stejný hash a pošlou požadavek na druhou doménu ta porovná s DB a vrátí poslaný požadavek(pro ověření že požadavek vygeneroval script a někdo se ho nepokusil vymyslet) + odpověď (taky v hashi) na dané doméně se hash rozkoduje a pokud je odpověď přihlášen nastaví se cookie.
Takhle podobně fungují platby pomocí PayPalu
7. 1. 2010 08:55:20
https://webtrh.cz/diskuse/jak-na-cookies-na-vice-domenach/strana/2/#reply137144
trhnapadu.cz
verified
rating uzivatele
(13 hodnocení)
8. 1. 2010 16:50:08
no, ja neco takovyho resim,
nejlepsi je udelat si pekne redirekty na domeny druhyho radu u naky hezky domeny
a mas po problemu, tuto variantu stále zvažuju, ale zase lidi sou podezíravý, že jako nejsou na ty doméně, kterou zadali, takže to je trošku problém.
jinak ty hashe predavany mezi domenama maj malej hacek, ze kdyz ses nekde prihlasenej a das si jinou domenu v systemu tvyho SSO, tak tam prihlasenej nejses, pokud nejdes prez odkaz z jinyho prihlasenyho webu,tzn. musis se postupne proklikat domenama, aby ses prihlasil.
takovej uprgrade tyhle moznosti je vytvorit na vsech domenach v systemu SSO redirekty, vsechny domeny redirektnout najednou (postupne) v nejakym poradi pri prihlaseni z libobovolny domeny a pak uzivatele vratit na tu domeny, ze ktery ses prihlasil :)
netestovano, nevim, jestli treba neni v prohlizecich limit na redirekty, by tak něco.....
jinak jsou složitější cesty přes nějakou vzdálenou autoritu, ale to já nechci, pže na to údajně nestačí php a na to sem moc línej :)
8. 1. 2010 16:50:08
https://webtrh.cz/diskuse/jak-na-cookies-na-vice-domenach/strana/2/#reply137143
meloun
verified
rating uzivatele
(5 hodnocení)
9. 1. 2010 00:10:11
Napsal Sajacz;429399
Napíšu sem to samé co do vlákna o trošku výše:
Napadá mě jediné řešení (vycházím z faktu že nejde jednoznačně zakázat uživatele ale naopak jde jednoznačně ověřit uživatele) toto používám upravené když chci odstavit web pro všechny kromě sebe.
Jelikož už dávno není IP jednoznačný identifikátor přidám k němu ještě verzi ptohlížeče verzi os rozlišení obrazovky a další parametry i včetně ip.
Tohle nějkým způsobem zakoduju do hashe a uložím do db přihlášených uživatelů. Pak z na jednotlivých doménach udělám scripty které při přístupu vytvoří stejný hash a pošlou požadavek na druhou doménu ta porovná s DB a vrátí poslaný požadavek(pro ověření že požadavek vygeneroval script a někdo se ho nepokusil vymyslet) + odpověď (taky v hashi) na dané doméně se hash rozkoduje a pokud je odpověď přihlášen nastaví se cookie.
Takhle podobně fungují platby pomocí PayPalu
Tohle je celkem dobrý řešení, jenže když držím platnost session i cookies 2 hodiny, tak bych musel při každém kliknutí aktualizovat čas u toho hashe v DB... A cronem pak mazat záznamy, kde je čas starší 2+ hodiny... Napsat na to skript je otázka pár minut, ale přijde mi to funkčně zbytečně složitý =) Ale uvidím, možná to tak udělám... Zatím díky za radu ;o)
9. 1. 2010 00:10:11
https://webtrh.cz/diskuse/jak-na-cookies-na-vice-domenach/strana/2/#reply137142
Napsal meloun;430988
Tohle je celkem dobrý řešení, jenže když držím platnost session i cookies 2 hodiny, tak bych musel při každém kliknutí aktualizovat čas u toho hashe v DB... A cronem pak mazat záznamy, kde je čas starší 2+ hodiny... Napsat na to skript je otázka pár minut, ale přijde mi to funkčně zbytečně složitý =) Ale uvidím, možná to tak udělám... Zatím díky za radu ;o)
Jde o to jestli cookie a session musí na všech doménach vypršet stejně pokud nemusí tak to není zas tak složité prostě jenom ověříš jestli je na nějaké doméně přihlášen a pokud ti to vrátí že ano tak provedeš klasickou funkci přihlášení bez te podmínky že k tomu potřebuješ jméno a heslo.
Edit:
nic neaktualizuješ jenom si tam dáš třeba 5 minutovej cron co odstrani zaznamy kde bude čas rovny nebo starši aktualnimu času - (doba platnosti)
tim že zmizi hash z tabulky aktivnich se ti znova do cookie a session nenačte přihlašeni a to stare ti časem vyprši. Pokud chceš ale aby na každe domeně to přihlašeni vypršelo stejně tak to problem bude
---------- Post was amended at 18:50 ----------
jinak male shema:
A - domena a
B - domena b
C - domena c (zaroven server s DB přihlašenych uživatelů)
Funkce:
1) člověk vleze na A vytvoři se hash (A,USER_ID,IP,BROWSER,OS)
2) odešle se post na C.check.php?hash=HASH
3) zkontroluje HASH s hashem v DB
4) vrati post na A.autologin.php (LOGED,A,USER_ID,IP,BROWSER,OS)
5) porovna jestli odesilany post se vratil nezměněny + STAV
6) polud je STAV OK přihlasi uživatele USER_ID
//---- Přihlašeni uživatele z jine domeny než C
1) post HASH (IP,USER_ID,...,....) na C.login.php
2) vrati post s unikatnim řetězcem na A or B
3) A or B odešlou POST zpět na C
4) C porovna jestli řijalstejny POST jako odeslal
5) vytvoři v DB přihlašenych HASH
i přes to že se všechny řetězce pro ověřovani posilaji tam a zpět je duležite je dostatečně zašifrovat
9. 1. 2010 14:40:34
https://webtrh.cz/diskuse/jak-na-cookies-na-vice-domenach/strana/2/#reply137141
meloun
verified
rating uzivatele
(5 hodnocení)
10. 1. 2010 00:27:09
Já tomu rozumím, už jsem to takhle měl udělané, ale ten čas aktualizovat musím, aby tam byla ta dvouhodinová platnost - chci, aby to bylo na obou doménách stejně, tzn. jestliže je platnost dvě hodiny, uživatel po hodině přejde na druhý web, tak by tam měl stále 2 hodiny platnou session... a zase zpětně na tom druhém...
No, uvidím, jak to nakonec provedu :o)
10. 1. 2010 00:27:09
https://webtrh.cz/diskuse/jak-na-cookies-na-vice-domenach/strana/2/#reply137140
Napsal meloun;431618
Já tomu rozumím, už jsem to takhle měl udělané, ale ten čas aktualizovat musím, aby tam byla ta dvouhodinová platnost - chci, aby to bylo na obou doménách stejně, tzn. jestliže je platnost dvě hodiny, uživatel po hodině přejde na druhý web, tak by tam měl stále 2 hodiny platnou session... a zase zpětně na tom druhém...
No, uvidím, jak to nakonec provedu :o)
sessions na vice domenach nikdy nesrovnáš spíše bych na každé doméně (určitě to tak máš ) ukládal čas přihlášení (v případě více domén by to byl čas, který by ti vrátil hash pro ověření přihlášeni na první doméně), tím pádem časy přihlášení by byly na každé doméně stejné a na každé doméně třeba do patičky jednoduchý script co by po reloadu zkontroloval čas přihlášení jestli neni starší než 2 hodiny a když tak provede odhášení.
Není to elegantní jako vypršení sessions ale fakt už nevím jak jinak bych to řešil.
10. 1. 2010 10:09:10
https://webtrh.cz/diskuse/jak-na-cookies-na-vice-domenach/strana/2/#reply137139
meloun
verified
rating uzivatele
(5 hodnocení)
11. 1. 2010 08:58:12
Ne-eee, takhle jsem to neměl :o)) Měl jsem to tak, že ten čas se aktualizoval při každém kliknutí, aby byla ta platnost vždy 2 hodiny od posledního kliknutí... Asi to tak nakonec udělám, přeci jen updatnout při každém kliknutí v databázi čas není žádná velká zátěž, ne?
11. 1. 2010 08:58:12
https://webtrh.cz/diskuse/jak-na-cookies-na-vice-domenach/strana/2/#reply137138
Pro odpověď se přihlašte.
Přihlásit