Kako ograniciti pristup slikama

Imam aplikaciju sa korisnickim racunima, koja medjuostalom dopusta upload osobnih slika svakome.
Te slike su u nekom od javnih Apache direktorija…

Pada mi na pamet generirati neke ogromne brojeve za imena slika, ali opet ce dovoljno uporan ili skilled korisnik moci doci do necega sto nije njemu namjenjeno. Molim neki savjet ili smjernicu kako to rade majstori :smiley:

Znaci ubiti me zanima je li ikako moguce sloziti nekakve privilegije za direktan pristup slikama.
Hvala

Slike ne bi uopće smjele zadržavati svoja originalna imena, i to iz sigurnosnih razloga. Što misliš kada kažeš “javnim Apache direktorijima”? Koliko ja znam, ti određuješ gdje će ti se datoteka pohraniti nakon uploada.

Evo nasao sam jedan thread na tu temu:)

http://www.webdeveloper.com/forum/showthread.php?t=205315

Javni direktorij je bilo koji direktorij “iza” DocumentRoot direktorija. No izgleda da ce slike morati biti u nekom drugom direktoriju koji nema public access, pa cu onda readat slike preko neke skriptice kao sto je opisano u gornjem threadu:) Alternativne metode ili savjeti su dobrodosli:)

[quote=“KingDaemon”]Imam aplikaciju sa korisnickim racunima, koja medjuostalom dopusta upload osobnih slika svakome.
Te slike su u nekom od javnih Apache direktorija…

Pada mi na pamet generirati neke ogromne brojeve za imena slika, ali opet ce dovoljno uporan ili skilled korisnik moci doci do necega sto nije njemu namjenjeno. Molim neki savjet ili smjernicu kako to rade majstori :smiley:

Znaci ubiti me zanima je li ikako moguce sloziti nekakve privilegije za direktan pristup slikama.
Hvala[/quote]

Slike se spremaju van javnog direktorija, a posebna skripta ih dohvaca po requestu.

Pazi, ako koristis neku skriptu za prikaz slika onda folder ne mora da bude private vec moze da bude gotovo bilo gde na serveru. Dakle, konstatacija da ce slike morati da budu u folderu bez public accessa NIJE ISPRAVNA!

Recimo napravis u www root-u folder pod imenom “upload1c34729834a789d892374” i u njega smestas slike od uploada. Kasnije nekom npr. php skriptom pozivaj fajlove iz ovog foldera (npr. href=“showimage.php?id=abcdef0123456789”). Naravno, ako koristis neki public folder gledaj da njegovo ime bude komplikovano kao u gornjem primeru i da za njega znate samo ti i skripta koja iz njega vadi slike! :wink:

[quote=“himzo”]Pazi, ako koristis neku skriptu za prikaz slika onda folder ne mora da bude private vec moze da bude gotovo bilo gde na serveru. Dakle, konstatacija da ce slike morati da budu u folderu bez public accessa NIJE ISPRAVNA!

Recimo napravis u www root-u folder pod imenom “upload1c34729834a789d892374” i u njega smestas slike od uploada. Kasnije nekom npr. php skriptom pozivaj fajlove iz ovog foldera (npr. href=“showimage.php?id=abcdef0123456789”). Naravno, ako koristis neki public folder gledaj da njegovo ime bude komplikovano kao u gornjem primeru i da za njega znate samo ti i skripta koja iz njega vadi slike! ;)[/quote]

A moze se stavit u javni direktorij, al bi onda trebao onemoguciti listanje direktorija i direktan pristup slici.

Sve u svemu, taj pristup je kompliciraniji, a nesigurniji u smislu da ce ti netko pokupit sliku.

Tu se slazem Ivane, ali za neiskusnije korisnike je mnogo jednostavnije ovako nesto a iskreno ako se get&put skripta dobro uradi, nepozeljni posetilac bi trebalo da bude hudini pa da provali ime direktorija!

Rjesenje je jako jednostavno (ovako napamet):


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja