• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Czy robie dobrze w JWT

Object Storage Arubacloud
0 głosów
296 wizyt
pytanie zadane 27 sierpnia 2019 w Bezpieczeństwo, hacking przez wyłącznikWłącznika Nowicjusz (220 p.)
Niedawno nauczyłem się troszkę o tokenach JWT i zaczełem wykorzystywać w swojej aplikacji.

 

Token składa się z header.payload.signature gdzie ostatnim jest hash pozostalych wraz z sekretnym kluczem (800 losowych znaków.)

 

w payloadzie tokena jest jego żywotność, data utworzenia, która server analizuje i w razie jej przekroczenia niszczy token.

Osoba posiadająca token zależnie od uprawnien zapisanych w payload może wykonywać zapytania do bazy danych (kupowanie w grze itd.).

I to w skrócie dużym, tak to powinno mniej więcej wyglądać?

----

 

Ogólnie zastanawiam się po co w ogóle mi tokeny, miały rzekomo ograniczyć ilość zapytań do bazy danych, lecz używam ich tylko przy zapytaniach do bazy danych dla weryfikacji, a same tokeny są podczepione pod meneger sesji gdzie i tak jest zapytanie, czy użytkownik nie zniszczył sesji, więc przy każdym wyslaniu tokenu zapytanie jest. Dlatego nie lepiej zrobić losowy ciąg znaków jako token i sprawdzać go w bazie czy jest przypisany do użytkownika, a dane do aplikacji wysyłać wraz z tokenem jeśli ten działa?

To jest post w stylu change my mind i naprawdę wiem że się pewnie mylę, inaczej nie miały by one prawa bytu, ale chce żeby ktoś zmienil moje zdanie.

Pozdrawiam i dziękuje z góry za odpowiedzi

1 odpowiedź

0 głosów
odpowiedź 27 sierpnia 2019 przez Arkadiusz Fajdek Dyskutant (9,450 p.)

Token JWT powinien zawierać do kiedy jest aktywny.

Cały flow wygląda tak -> użytkownik strzela po token -> token zawiera informacje do kiedy jest ważny oraz informacje na temat użytkownika -> np. jakie ma prawa. Najważniejszą sprawą jest to że wszystkie informacje zapisane są w tokenie.

Użytkownik strzela do twojego API używając tokena. Security sprawdza token - nie robi żadnych strzałów do bazy, sprawdza token, czy jest ważny i czy użytkownik ma prawa do danego API.

Nie masz w tym przebiegu dodatkowych strzałów do bazy danych - wszystkie potrzebne dane są w tokenie.

Podobne pytania

+1 głos
1 odpowiedź 400 wizyt
0 głosów
0 odpowiedzi 199 wizyt
pytanie zadane 22 stycznia 2019 w PHP przez Ziito Obywatel (1,110 p.)
0 głosów
1 odpowiedź 687 wizyt
pytanie zadane 8 lipca 2018 w JavaScript przez mi-20 Stary wyjadacz (13,190 p.)

92,554 zapytań

141,399 odpowiedzi

319,535 komentarzy

61,938 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...