Forum Sveta kompjutera

Nazad   Forum Sveta kompjutera > Internet > Web razvoj > Serverske aplikacije i baze podataka
Uputstvo Članstvo Kalendar Današnje poruke Pretraži

Serverske aplikacije i baze podataka PHP, Perl, ASP, ASP .NET, ColdFusion...
MySQL, PostgreSQL, MSQL, Oracle...

Odgovor
 
Alatke vezane za temu Vrste prikaza
Stara 11.12.2006, 0:13   #1
nighthawk
.
 
Avatar korisnika nighthawk
 
Član od: 2.11.2005.
Poruke: 2.532
Zahvalnice: 113
Zahvaljeno 710 puta na 498 poruka
Određen forumom [Apache, PHP] Kako se zaštititi od "krađe protoka"? (hotlinking prevention)

Hocu da napravim sajt u php/mysql tehnologiji koji bi omogucavao samo registrovanim korisnicima da ucitaju odredjene fajlove (slike) u browser. Ostali korisnici ne bi imali pristup tim fajlovima.

Problem je sto ne znam kako da napravim tu zastitu, trebalo bi samo neke php skripte da imaju pristup tim fajlovima (ogranicenje moze da se stavi i na ceo folder, sto bi bilo bolje resenje). Registracija i login mi nisu problem, problem je samo ogranicenje pristupa.

Da li ovo moze da se odradi sa .htaccesom?
nighthawk je offline   Odgovor sa citatom ove poruke
Stara 11.12.2006, 1:27   #2
al0cunit
Član
 
Član od: 1.8.2006.
Lokacija: Loznica/Sekovici
Poruke: 237
Zahvalnice: 15
Zahvaljeno 0 puta na 0 poruka
Slanje poruke preko MSN-a korisniku al0cunit
Određen forumom Re: ogranicavanje pristupa fajlovima na serveru

pa otprilike nesto tipa :
napravis u tabeli neki int koji ce da nosi vrednost 1 ako je omoguceno gledanje slika a 0 ako nije .. npr create table users(zastita tinyint(1) itd .. );

$baza=mysql_connect("localhost","root","sifra");
mysql_select_db("baza",$baza);
pa onda $zastita=mysql_query("select zastita from users where username=$username",$baza);
if($zastita==1)
{
echo "blabla";
}
else
{
echo "blabla";
}


to ti samo dajem ideju .. ovo sam na brzinu nesto .. tako da .. odok spavati ..
al0cunit je offline   Odgovor sa citatom ove poruke
Stara 11.12.2006, 1:32   #3
holodoc
Deo inventara foruma
 
Član od: 5.12.2005.
Poruke: 6.785
Zahvalnice: 348
Zahvaljeno 1.893 puta na 1.078 poruka
Određen forumom Re: ogranicavanje pristupa fajlovima na serveru

".htaccess" može da ti pruži određen nivo ograničenja pristupa fajlovima u folderu ali ovaj sistem definitivno ne može da zameni klasičnu kombinaciju php/mysql/cookies koja se danas koristi u gotovo 99,99% slučajeva za ograničenje pristupa određenoj grupi fajlova.
Ne kažem da korišćenje ".htaccess-a" ne bi bilo moguće. Naprotiv, morao bi da koristiš sledeću kombinaciju za sve fajlove koje nameravaš da koristiš:
Kod:
<Files naziv_fajla.php>
AuthUserFile putanja do ".htpasswd" fajla
AuthName "Zasticen fajl"
AuthType Basic
Require valid-user
</Files>
Na ovaj način bi bio omogućen pristup fajlu samo korisnicima koji su uneti na ".htpasswd" listu ali ti je odmah jasno da je ovakav način radi potpuno nebulozan jer se često može desiti da imaš mali milion različitih fajlova koji želiš da zaštitiš.

Kao što sam već rekao, dobitna kombinacija je php/mysql/cookies sistem. On treba tako da funkcioniše da prilikom svakog pokušaja da se pristupi fajlu dođe do iščitavanja u sql bazi da li dati korisnik ima prava da downloaduje taj fajl. Drugim rečima, u tabeli korisnika dodeliš jedan atribut koji će da ti služi kasnije da proveravaš da li je korisniku dozvoljeno da pristupi tom fajlu. Dakle, korisnik klikne na fajl, php skripta koja je zadužena za proveru prava korisnika proverava u bazi podataka da li korisnik ima prava da downloaduje fajl i ako to jeste slučaj korisniku se dozvoljava pristup. U poslednje vreme zarad smanjenja saobraćaja između servera i klijenta se koristi sistem "kolačića" (cookies) tako da kada se korisnik loguje (naravno isti mora prvo biti registrovan tj. upisan u bazu) da se postavi cookie koji govori da li korisnik ima pravo da pristupi fajlu.

Nadam se da ti je bar jasna koncepcija kako to treba da funkcioniše jer bi detaljno objašnjenje kako sve to treba izvesti bilo previše komplikovano za ovakvo jedno mesto a i onako možeš na netu da nađeš dosta kvalitetnih članak a na ovu temu.
holodoc je offline   Odgovor sa citatom ove poruke
Stara 11.12.2006, 15:59   #4
nighthawk
.
 
Avatar korisnika nighthawk
 
Član od: 2.11.2005.
Poruke: 2.532
Zahvalnice: 113
Zahvaljeno 710 puta na 498 poruka
Određen forumom Re: ogranicavanje pristupa fajlovima na serveru

Jasan je meni php, samo ja hocu da zastitim fajlove tako da ako korisnik pokusa direktno da unese url, recimo www.mojsajt.com/images/slika1.jpg ne ucita tu sliku. Da li je dovoljno zabraniti pristup preko ftp-a (sto vecina hostova radi po defaultu) ili treba uraditi jos nesto?
nighthawk je offline   Odgovor sa citatom ove poruke
Stara 11.12.2006, 16:23   #5
holodoc
Deo inventara foruma
 
Član od: 5.12.2005.
Poruke: 6.785
Zahvalnice: 348
Zahvaljeno 1.893 puta na 1.078 poruka
Određen forumom Re: ogranicavanje pristupa fajlovima na serveru

Pa kaži onda da ti treba hotlinking zaštita
Kucaj u "Google-tu" "hotlinking prevention" i naći ćeš gomilu korisnih članaka o tome kako da je izvedeš u bilo kojoj tehnologiji. Može čak i ".htaccess-om"
holodoc je offline   Odgovor sa citatom ove poruke
Stara 11.12.2006, 23:01   #6
al0cunit
Član
 
Član od: 1.8.2006.
Lokacija: Loznica/Sekovici
Poruke: 237
Zahvalnice: 15
Zahvaljeno 0 puta na 0 poruka
Slanje poruke preko MSN-a korisniku al0cunit
Određen forumom Re: ogranicavanje pristupa fajlovima na serveru

uff ... zbrkao si gore pitanje .. al' i ja evo da kazem da se to sve moze sa .htaccess-om ..
al0cunit je offline   Odgovor sa citatom ove poruke
Odgovor

Bookmarks sajtovi


Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno



Sva vremena su po Griniču +2 h. Sada je 16:30.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2024, vBulletin Solutions, Inc.
Hosted by Beograd.com