Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: AJAX i uwierzytelnianie
Forum PHP.pl > Forum > XML, AJAX > AJAX
MarcinTryka
Witam.

1) użytkownik sie loguje, skrypt PHP umieszcza w zmiennej $_SESSION['username'] nazwe uzytkownika o ile podal dobre haslo.

2) moge przegladac jakies swoje dane pogrupowane w wielu dzialach. przejscie do jakiegos dzialu odbywa sie za pomoca AJAXa. użytkownik klika na jakis przycisk i wysyła sie nazwa uzytkownika i id dzialu.

3)mozna dodac jakies informacje do dzialu. klika sie na button, wyskakuje okienko z formularzem, potem "wyslij" i wysylana jest nazwa uzytkownika, id dzialu i dane do wyslania.

I tu kwestia bezpieczenstwa, jak wywoluje za pomoca Ajaxa pliki wczytaj.php, dodaj.php moga byc wywolane z e zmodyfikowanym w js parametrem uzytkownika. w ten sposob moznaby sie (tak mi sie wydaje) dostac do cudzych danych.

Czy jedynym rozwiazaniem jest przechowywanie loginu hasla (sumy md5) w kodzie js i wysylanie tego wszystkiego przy kazdym zadaniu ajaxa? Wtedy przeciez przy każdym ruchu na stronie trzebaby sie dodatkowo laczyc z baza danych w celu weryfikacji uzytkownika. to przy aplikacji czesto korzystajacej z ajaxa sprawia ze wszystko dziala wolno... zwlaszcza ze ma byc to projekt dosc "masowy" i moze sie to niekorzystnie odbic na szybkosci dzialania lub cenie hostingu.

Pozatym haslo lub suma kontrolan siedzialyby w zrodle stronyu ... a to tez nie jest zbyt bezpieczne. Moznaby to ominac tworzac tablice w baze osob zalogowanych, z czasem ostatniej aktywnosci. i wyrzucac wszystkich po okreslonym czasie lub kliknieciu na "wyloguj"... no ale to kolejne wywolania bazy danych. a jesli ja za jednym kliknieciem chcialbym w petli wczytac wiele roznych komorek tabeli? aplikacjha dzialalby niemilosiernie wolno....

Nie ma jakiegos wygodniejszego i szybszego sposobu?


-----------------------------------------------------------
Edit: Znalazłem juz odpowiedz, a właściwie drobny błąd który uniemożliwiał poprawne działanie sesji smile.gif Już działa tak jak powinno!
prond
Wywołania AJAX'owe współdzielą sesję dlatego nie musisz wysyłać nic JS'em.
W plikach wczytaj.php, czy dodaj.php sprawdzasz, czy masz do czynienia z właściwym użytkownikiem na podstawie danych zapisanych w sesji.
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.