Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ajax jak zabezpieczyć ?
Qss
post 3.01.2013, 22:49:10
Post #1





Grupa: Zarejestrowani
Postów: 141
Pomógł: 7
Dołączył: 22.02.2009

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


Witam,

Zrobiłem pewna aplikacje gdzie dodawanie edycja i usuwanie oparte jest o ajax a później uświadomiłem sobie że to co zrobiłem jest to ekstremalnie niebezpieczne

Przykład bazy:

Tabela user
userID | nick | haslo

Tabela cos1
cos1ID | userID (FK) | jakiespole

Tabela cos2
cos2ID | cos1ID (FK) | jakiespole


Teraz funcja javasctipt
  1. function usun(id){
  2. // i tu przez ajaxa usuwa dane z tabeli cos2ID o zadanym id
  3. // i zapytanie po stronie php w stylu
  4. // DELETE FROM cos2 WHERE cos2ID = $_POST['id']
  5. }


Jeśli ktoś to zobaczy w podgladzie strony to z konsoli może wywołać funkcje i jako parametr podać dowolne ID które nawet nie należy do niego i usunąć komukolwiek pewne dane

To co wymyśliłem to przed usunięciem (oczywiście po stronie PHP) sprawdzić czy zadane id (poprzez tabele cos1) należy do userID zalogowanego użytkownika ale to tylko dodatkowe zapytania i obciążenie bazy
lub do tabeli cos2 dodac tez FK do usera co sprowadzało by się tylko do dopisania w zapytaniu WHERE userID = $_SESSION['idZalogowanego']

Tabela cos2
cos2ID | cos1ID (FK) | jakiespole | userID (FK)

Jakieś inne pomysły aby zachować strukturę bazy ? Bo przy takim rozwiązaniu baza traci trochę na spójności
Go to the top of the page
+Quote Post

Posty w temacie


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: 29.06.2025 - 15:28