Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 189 Pomógł: 13 Dołączył: 20.09.2008 Skąd: Lublin Ostrzeżenie: (0%)
|
Mam dylemat: nie wiem na ile i czy w ogóle bezpieczny jest system logowania na stronkę, którą tworzę.
Sprawa wygląda tak: Na stronie głównej jest formularz (pole "nazwa usera" i "hasło") i link do strony logowania dla pracownika (formularz taki jak wyżej). Zacznę od opisu logowania dla klienta (strona główna). Po kliknięciu na Zaloguj użytkownik zostaje przekierowany do skryptu logowania (dla klientów). Skrypt działa następująco: 1. rozpoczyna sesję i otwiera połączenie z bazą MySQL za pomocą danych zawartych w pliku config.php (nazwa usera, hasło, adres bazy, nazwa bazy). 2. pobiera dane użytkownika wpisane w formularzu (przez $_POST). 3. wyszukuje nazwę użytkownika i hasło zaszyfrowane funkcją md5 w tabeli "klienci". 4. jeśli dane pasują, zapisuje nazwę użytkownika i ID w tablicy $_SESSION (pola "nazwa" i "idklienta"), a potem przekierowuje do następnego skryptu (skryptu głównego dla klienta). w przeciwnym razie pokazuje komunikat. skrypt główny dla klienta: 1. przy każdym załadowaniu skrypt sprawdza czy istnieją wpisy "nazwa" i "idklienta" w tablicy sesji. 2. jeśli tak to w nagłówku strony wyświetla te dane. 3. przetwarza kolejne operacje, jakie chce wykonać klient. 4. jeśli nie ma pól "nazwa" i "idklienta", bądź są puste lub zawierają nieprawidłowe dane - następuje przekierowanie na stronę logowania. teraz opiszę, co robią skrypty dla pracowników. logowanie: 1. j.w. 2. j.w. 3. j.w. tyle, że z tabeli pracownicy. 4. jeśli dane pasują, zapisuje nazwę użytkownika i ID w tablicy $_SESSION (pola "nazwa" i "idpracownika"), a potem przekierowuje do następnego skryptu (skryptu głównego dla pracownika). w przeciwnym razie pokazuje komunikat. (zmienia się nazwa pola w tablicy ("idpracownika")). skrypt główny dla pracowników: 1. przy każdym załadowaniu skrypt sprawdza czy istnieją wpisy "nazwa" i "idpracownika" w tablicy sesji. 2. j.w. 3. j.w. 4. jeśli nie ma pól "nazwa" i "idpracownika", bądź są puste lub zawierają nieprawidłowe dane - następuje przekierowanie na stronę logowania. Teraz główne pytanie: czy klient może w jakiś sposób uruchomić skrypty dla pracowników w taki sposób, aby wykonywane były tak, jakby uruchomił je pracownik? Chodzi mi głównie o bezpieczeństwo, dlatego pytam i liczę na wyczerpujące odpowiedzi. |
|
|
|
czychacz [PHP][HTML][MYSQL] Bezpieczeństwo logowania 21.09.2008, 10:28:02
Mlodycompany dodaj sobie w sesji poziom i po zalogowaniu zapisu... 21.09.2008, 10:45:03
czychacz jak bardzo pomoże to w zabezpieczeniu?? 21.09.2008, 11:00:29
WojtasSP320 Ja zmieniłbym jeszcze md5 na sha1 - generuje dłużs... 21.09.2008, 11:12:44
Mlodycompany no jezeli dasz warunek to np. zwyklemu klientowi n... 21.09.2008, 11:21:48
czychacz zmiana na sha1 nie będzie problemem w bazie d... 22.09.2008, 08:14:28
golaod Można by się do wielu rzeczy przyczepić. Czemu bra... 22.09.2008, 10:40:30 
czychacz Cytat(golaod @ 22.09.2008, 11:40:30 )... 22.09.2008, 11:45:11
golaod Wtedy jedną z możliwości jest wrzucanie tego do ba... 22.09.2008, 12:15:53
sowiq Ale weź pod uwagę, że sens ma stoso... 22.09.2008, 12:34:05
czychacz dzięki za odpowiedź. dzisiaj już nie dostanę się d... 22.09.2008, 13:23:32 ![]() ![]() |
|
Aktualny czas: 20.08.2025 - 03:39 |