Najlepszy sposób na zabezpieczenie aplikacji AJAX
Obecnie pracuję nad uwierzytelnieniem witryny opartej na AJAX i zastanawiałem się, czy ktokolwiek miał jakieś zalecenia dotyczące najlepszych praktyk w tego rodzaju sprawach.
Moje oryginalne podejście opierało się na systemie plików cookie. Zasadniczo ustawiam plik cookie z kodem uwierzytelniającym, a każdy dostęp do danych zmienił plik cookie. Ponadto, gdy wystąpiło nieudane uwierzytelnienie, wszystkie sesje tego użytkownika zostały pozbawione uwierzytelnienia, aby powstrzymać porywaczy. Aby przejąć sesję, ktoś musiałby zostawić się zalogowanym, a haker musiałby wysłać ostatnią aktualizację ciasteczka, aby sfałszować sesję.
Niestety, ze względu na naturę AJAX-a, przy szybkim wykonywaniu wielu żądań, mogą powrócić poza kolejność, źle ustawić plik cookie i przerwać sesję, więc muszę go ponownie wdrożyć.
Moje pomysły były następujące:
Zdecydowanie mniej bezpieczna metoda oparta na sesjiużywanie SSL w całej witrynie (wydaje się przesadą)Używanie ramki iFrame, która jest uwierzytelniona przez ssl w celu wykonywania bezpiecznych transakcji (zakładam, że jest to możliwe, z odrobiną hakowania jquery)Problemem nie jest przesyłanie danych, jedyną troską jest to, że ktoś może uzyskać kontrolę nad kontem, które nie jest ich własnością.
Zdecydowanie mniej bezpieczna metoda oparta na sesji