Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jak zabezpieczyc katalog z fotografiami
art
post 26.02.2005, 13:17:32
Post #1





Grupa: Zarejestrowani
Postów: 63
Pomógł: 0
Dołączył: 31.08.2003

Ostrzeżenie: (0%)
-----


Witam!

Dluzszy czas nurtowala mnie taka sprawa: Jak zabezpieczyc katalog w ktorym skrypt z galerią przechowuje uploadowane zdjęcia... napisalem sobie skrypt do obslugi galerii i do wybranych fotek znajdujacych sie w galerii mają dostęp tylko zalogowaniu urzytkownicy ... no i wszytsko slicznie ale co z tego ze niezalogowany uzytkownik nie zobaczy fotki na stronie jak smialo moze dostac sie do katalogu gdzie sa fotki przechowywane poprzez odpowiednio spreparowany link odwolujacy sie bezposrednio do danej fotki na serwerze... czy jest jakis sposob na to zeby to zablokowac (zabezpieczyc)? bylbym wdzieczny za podpowiedzi i przyklady...
Go to the top of the page
+Quote Post
jono
post 26.02.2005, 13:29:08
Post #2





Grupa: Zarejestrowani
Postów: 144
Pomógł: 0
Dołączył: 29.06.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Możesz:

1) wstawić plik index.php z treścią:

  1. <?php
  2.  
  3. header('Location: http://www.mojastrona.pl');
  4.  
  5. ?>


2) dodać odpowiedni plik htaccess.

http://home.pl/support/manual/features/htaccess

Poza tym przy wrzucaniu plików na serwer możesz nadać im losową nazwę, co utrudni wpisanie bezpośredniego adresu do pliku (lub jego odgadnięcie..)


--------------------
if(function_exists("zrozum_kobiete")){
echo "Niemożliwe!"; exit;}
Go to the top of the page
+Quote Post
hwao
post 26.02.2005, 13:39:31
Post #3


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




jak rysunki maja byc dorbze chronione to mozesz je trzymac w bazie.
Mozesz nie podawac sciezki do obrazka tylo pliku php z id a on juz sobie po id pozna o jaki img chodzi i go zalaczy / albo header na rysunek
Go to the top of the page
+Quote Post
art
post 26.02.2005, 17:04:24
Post #4





Grupa: Zarejestrowani
Postów: 63
Pomógł: 0
Dołączył: 31.08.2003

Ostrzeżenie: (0%)
-----


Cytat
Możesz:

1) wstawić plik index.php z treścią:

  1. <?php
  2.  
  3. header('Location: http://www.mojastrona.pl');
  4.  
  5. ?>


To juz zrobiłem ale tego typu zabezpieczenie to tylko taka prowizorka i uzytkownik nie wejdzie przez przegladarke i nie podgladnie plikow jakie w katalogu z fotkami sie znajdują... ale jeśli ze strony odczyta nazwe pliku to bez problemu się dostanie do fotki....

moj problem polega na tym ze powiedzmy na stronie pojawiaja sie miniatury fotek po kliknieciu w wybrana miniature jesli uzytkownik jest zalogowany otwiera sie podstrona z powiększoną fotką, jesli nie jest zalogowany to otwiera sie ta sama podstrona z tym ze zamiast pwiekszonej fotki wypisany jest tam na jej miejscu komunikat tekstowy informujacy ze aby zobaczyc tą fotke trzeba sie zalogowac...

Cytat
jak rysunki maja byc dorbze chronione to mozesz je trzymac w bazie.
Mozesz nie podawac sciezki do obrazka tylo pliku php z id a on juz sobie po id pozna o jaki img chodzi i go zalaczy / albo header na rysunek


takie zabezpieczenie jesli dobrze je zrozumialem tez mnie nie zadawala... moze
dodam jeszcze ze nazwy plikow sa tworzone wedle bardzo prostego schematu czyli: nazwa pliku i miniatury jest taka sama (znajduja sie w roznych katalogach) i zbudowane sa one w oparciu o pole 'id' z bazy (jaki identyfikator w bazi dla danej fotki taka tez jest jej nazwa)... stąd prowizoryczne (częściowe) zabezpieczenia mnie nie zadowalają... chcialbym zabezpieczyc to tak "na poważnie" biggrin.gif...



Cytat
2) dodać odpowiedni plik htaccess.

http://home.pl/support/manual/features/htaccess



Ten rodzaj zabezpieczenia pwnie bedzie najskuteczniejszy... i wlasnie o cos takiego mi chodzi... tylko problem polega na tym ze zielonego pojecia nie mam jak to zrobic? Bo to powinno dzialac tak ze jesli uzytkownik zaloguje sie w mojej galerii to skrypt powinien automatycznie w jakis sposob uzyskac dostep od htaccess do odpowiednich katalogow z fotkami ... czy ktos ma jakies przyklady?
Go to the top of the page
+Quote Post
Yarecki
post 27.02.2005, 00:09:22
Post #5





Grupa: Zarejestrowani
Postów: 166
Pomógł: 0
Dołączył: 1.04.2004
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


Przenieś katalog piętro niżej, poza public_html. php będzie miało tam dostęp, a użytkownik z przeglądarką nie.


--------------------
Nigdy nie kłóć się z głupim, ludzie mogą nie dostrzec różnicy.
Go to the top of the page
+Quote Post
sobstel
post 27.02.2005, 10:08:31
Post #6





Grupa: Zarejestrowani
Postów: 853
Pomógł: 25
Dołączył: 27.08.2003
Skąd: Katowice

Ostrzeżenie: (0%)
-----


proponuje takie cos :

- pliki graficzne znajduja sie powyzej public_html w katalogu GALLERY
- w drugim katalogu GALLERY dostepnym z www znajduja sie 2 pliki :
+ .htaccess z rewrite rule przekierowujacym pliki z rozszerzeniem jpg na index.php
+ index.php ktory sprawdza uprawnienia i albo zwraca plik graficzny albo przekierowuje do strony z komunikatem bledu (braku dostepu)

linki do plikow graficznych beda wygladaly normalnie :
www.strona.net/gallery/plik.jpg


--------------------
"If debugging is the process of removing bugs, then programming must be the process of putting them in..."
sobstel.org
Go to the top of the page
+Quote Post
MStaniszczak
post 28.02.2005, 03:37:41
Post #7





Grupa: Zarejestrowani
Postów: 71
Pomógł: 1
Dołączył: 3.10.2004

Ostrzeżenie: (0%)
-----


Witam

Można jeszcze plik .htacces z zawartością:
Kod
Deny from all

I zamiast w <img ...> podawać link do obrazka umieszczać w nim link do skryptu wyświetlającego ten obrazek (np showpict.php?id=123).

Pozdrawiam
Marcin Staniszczak
Go to the top of the page
+Quote Post
sobstel
post 28.02.2005, 10:24:40
Post #8





Grupa: Zarejestrowani
Postów: 853
Pomógł: 25
Dołączył: 27.08.2003
Skąd: Katowice

Ostrzeżenie: (0%)
-----


jelsi chodzi o moje rozwiazanie to :

Cytat
Można jeszcze plik .htacces z zawartością: Deny from all


nie, bo wtedy nie zadziala przekierowanie na index.php. wystarczy Options -Indexes

Cytat
I zamiast w <img ...> podawać link do obrazka umieszczać w nim link do skryptu wyświetlającego ten obrazek (np showpict.php?id=123).


tez nie, wlasnie chodzi o to zeby nazwa obrazka byla 123.jpg a nie showpict.php?id=123.


--------------------
"If debugging is the process of removing bugs, then programming must be the process of putting them in..."
sobstel.org
Go to the top of the page
+Quote Post
MStaniszczak
post 28.02.2005, 16:28:59
Post #9





Grupa: Zarejestrowani
Postów: 71
Pomógł: 1
Dołączył: 3.10.2004

Ostrzeżenie: (0%)
-----


Cytat
jelsi chodzi o moje rozwiazanie to :


Cytat
Można jeszcze plik .htacces z zawartością: Deny from all

ie, bo wtedy nie zadziala przekierowanie na index.php. wystarczy Options -Indexes


Nie maiłem na myśli mieszania obu rozwiązań - tylko blokowanie dostępu do podkatalogou.



Cytat
Cytat
I zamiast w <img ...> podawać link do obrazka umieszczać w nim link do skryptu wyświetlającego ten obrazek (np showpict.php?id=123).



tez nie, wlasnie chodzi o to zeby nazwa obrazka byla 123.jpg a nie showpict.php?id=123.


Hmmm... A gdzie art napisał że takie rozwiązanie mu nie odpowiada?

Pozdrawiam
Marcin Staniszczak
Go to the top of the page
+Quote Post
sobstel
post 28.02.2005, 18:46:33
Post #10





Grupa: Zarejestrowani
Postów: 853
Pomógł: 25
Dołączył: 27.08.2003
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat(MStaniszczak @ 2005-02-28 16:28:59)
Hmmm... A gdzie art napisał że takie rozwiązanie mu nie odpowiada?

jak wspomnialem na poczatku mjego postu pisalem o moim rozwiazaniu. poza tym, wydaje mi sie ze generowanie obrazkow z nazwami show.php?id=12 robi sie troche niewygodne w momencie gdy uzytkownik zechce uzyc opcji "Zapisz jako"


p.s. nie musisz podpisywac kazdego postu ;-))


--------------------
"If debugging is the process of removing bugs, then programming must be the process of putting them in..."
sobstel.org
Go to the top of the page
+Quote Post
MStaniszczak
post 28.02.2005, 21:12:07
Post #11





Grupa: Zarejestrowani
Postów: 71
Pomógł: 1
Dołączył: 3.10.2004

Ostrzeżenie: (0%)
-----


Cytat
poza tym, wydaje mi sie ze generowanie obrazkow z nazwami show.php?id=12 robi sie troche niewygodne w momencie gdy uzytkownik zechce uzyc opcji "Zapisz jako"


Nie koniecznie - wyślij tylko odpowiedni header i będzie ok;-) Można przecież zrobić linka zapisz i wysłać (dodatkowo) header:
header("Content-Disposition: attachment; filename=obrazek.jpg");

Wiem że dodatkowa robota, ale wydaje mi się że takie zablokowanie katalogu, lub umieszczenie obrazków powyżej katalogu public_html (czy jak go tam zwać) i siłą rzeczy serwowanie obrazków również za pomocą skryptu jest tak naprawdę jedynym skutecznym sposobem zabezpieczenia obrazków.

Cytat
p.s. nie musisz podpisywac kazdego postu ;-))

Przyzwyczajenie z usenet-u (gdzie raczej częściej bywam) - chyba nie masz mi za złe?;-)

Pozdrawiam
Marcin Staniszczak :-D
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.07.2025 - 10:07