Wpis z mikrobloga

Mircy. Mam kilka pytań odnośnie node i react. Przyjmijmy że mam aplikacje w której autoryzacja użytkowników jest za pomocą json web tokena. Aplikacja pozwala użytkownikowi na zalogowanie na maksymalnie 2 urządzenia. Powiedzmy że przy logowaniu generujemy użytkownikowi jakiś hash i zapisujemy go w bazie jako jego id. Na podstawie tego generuje jwt i wysyłam mu po czym zapisuje w local storage razem z wygenerowany hashem. Do każdego request dołączam w nagłówku jwt i hash i na tej podstawie zwracam odpowiedź.
1. Co jeśli użytkownik zamiast normalnie wylogowac przy czym nastąpi usunięcie jwt tokena i hasha z bazy i storage, to powiedzmy wyczyść przeglądarkę i storage zostanie opóźniony a hash w bazie zostanie?
2. Jak najbezpieczniej zaimplementować że user jest zalogowany cały czas? Tzn token się odzwieza lub nie wygasa.
3. Co jeśli ktoś inny zdobędzie token? Zauważyłem że mając token i znając parametry użytkownika po których robione są zapytania do bazy można jest bez problemu wyciągnąć. Da się przed tym zabezpieczyć?
#programowanie #webdev #nodejs #react
  • 2
  • Odpowiedz