mezza9
2.03.2007, 23:53:49
Używam PHP>5.1, potrzebuje zabezpieczyć formularz wysyłany metodą POST, tak, abym miał 'pewność', że został wysłany ze serwera, na którym znajduje się skrypt. W jaki sposób rozwiązać problem? Czytałem o HTTP_REFFERER, niestety nie widzę tej zmiennej w tablicy $_SERVER...
Dzięki za wszelkie sugestie...
Speedy
3.03.2007, 00:08:29
Nie ma sensu zabezpieczać poprzez http_refferer (który powinien być w tablicy serwer). Tę informację można łatwo spreparować wysyłając do serwera odpowiednie nagłówki. Zabezpieczyć formularz możesz poprzez stosowanie w nim odpowiedniej filtracji przesyłanych danych.
Kayne
3.03.2007, 01:13:00
Możesz np. w skrypcie wygenerować jakiś kod na podstawie losowego stringa (np. md5) a następnie sprawdzić, czy kod się zgadza (a kod przetrzymywać w sesjii i w formularzu).
mezza9
9.03.2007, 21:10:16
Dzięki,
Po dodaniu dodatkowej walidacji przez zmienna w sesji, formularz wydaje sie byc bezpieczny. Jednak teraz przegladarka z wylaczonymi cookies, nie zadziala prawidlowo - domyslny mechanizm sesji. Czy przeniesienie obslugi sesji do bazy danych ma sens? Czy jest jakies rozwiazanie, ktore uniezalezni przegladanie / wysylanie z formularza bez obslugi cookies?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.