Autor | Zpráva | ||
---|---|---|---|
Neowe Profil * |
#1 · Zasláno: 6. 10. 2010, 11:10:19
Mám AJAX aplikaci kde se načítají přes XMLHttpRequest ("GET") data ze souboru mujweb.cz/adresar/data.php. Dá se nějak pomoci htaccess, nebo nějak jinak 100% zamezit parazitování dat z tohoto souboru?
Tzn. aby to zpracovalo pouze příkazy v ramci mého serveru. Jak nato? |
||
__construct Profil |
#2 · Zasláno: 6. 10. 2010, 11:47:27 · Upravil/a: __construct
Môžeš kontrolovať na začiatku PHP skriptu
if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest')
|
||
Neowe Profil * |
#3 · Zasláno: 6. 10. 2010, 12:14:38
Díky to jsem neznal, ovšem jak čtu tady: http://diskuse.jakpsatweb.cz/?action=vthread&forum=9&topic=102479
tak 100% ty data nikdy asi neochráním, spíš bych čekal že by to šlo ještě nějak přes htaccess, jak se třeba zakazovalo zobrazení obrázků mimo web....nebo je to mimo mísu? |
||
Chamurappi Profil |
#4 · Zasláno: 6. 10. 2010, 12:28:32
Reaguji na Neowe:
XMLHttpRequest nedokáže tahat z jiné domény, než na které je stránka. Existuje sice pár cross-domain postupů, ale ty vždy vyžadují explicitní povolení ze strany majitele stahovaného zdroje. |
||
__construct Profil |
#5 · Zasláno: 6. 10. 2010, 12:58:14
Chamurappi:
Dovolím si nesúhlasiť. Môžeš si vytvoriť "proxy" skript cez cURL . Napríklad v PHP to ide pekne cez túto triedu
Neowe: „tak 100% ty data nikdy asi neochráním“ Pokiaľ sú verejne dostupné tak nie .. |
||
Neowe Profil * |
#6 · Zasláno: 6. 10. 2010, 12:59:25
Reaguji na Chamurappi:
OK tomu rozumím, ale pokud si ten skriptík nějak někdo přepíše, tak se k těm datům v data.php asi stejně dostane když zadá správné GET parametry, které lze odvodit ze zdrojáku JS.... o to mi jde. Hlídání všech Request hlaviček, referrerů atd. bude asi průstřelné |
||
Keeehi Profil |
#7 · Zasláno: 6. 10. 2010, 14:41:20
Neowe:
Ochránit se to 100% nedá. S cURL mohu vytvořit jakýkoliv požadavek, tedy poslat i hlavičku HTTP_X_REQUESTED_WITH s vlastním textem 'xmlhttprequest'. |
||
Kajman_ Profil * |
#8 · Zasláno: 6. 10. 2010, 14:58:46
A nestačí si do SESSION nastavit příznak, že data.php může poskytnou data?
|
||
Keeehi Profil |
#9 · Zasláno: 6. 10. 2010, 15:01:14
Kajman:
Můžeš to nějak více rozepsat jak to myslíš? Ale řekl bych, že to stejně nepomůže. |
||
Kajman_ Profil * |
#10 · Zasláno: 6. 10. 2010, 15:05:36
Na stránce, kde se využití předpokládá si pustím start_session, nastavím si do ní nějaký příznak. Pokud prohlížeč bude podporovat cookie, tak v data.php tento příznak najdu.
|
||
Keeehi Profil |
#11 · Zasláno: 6. 10. 2010, 15:12:49
Keeehi:
cURL zvládne pracovat s cookies, takže to nepomůže. |
||
ShiraNai7 Profil |
#12 · Zasláno: 6. 10. 2010, 19:57:57
Když už je to ajax tak to přece běží u klienta v prohlížeči a ten k tomu souboru přístup mít musí.
Je absolutně zbytečné snažit se zamezit jiným druhům přístupu, nemáš šanci :) |
||
Časová prodleva: 14 let
|
0