1. Jest to niebezpieczne jeśli chodzi o LocalStoradge bo jest dostępny za pośrednictwem JavaScript w tej samej domenie. Oznacza to, że każdy skrypt JavaScript działający w Twojej witrynie będzie miał dostęp do pamięci internetowej, przez co może być narażony na ataki XSS (cross-site scripting)
Aby zapobiec XSS, powszechną reakcją jest uniknięcie i zakodowanie wszystkich niezaufanych danych.
2. Po to się stosuje JWT - i tokeny, aby nie trzymać ich jak ciasteczek zależnych od serwera- bazy.
Token to coś jak naszyjnik weryfikacyjny dla 'usera'
JWT zapewnia tę zaletę, że nie trzeba za każdym razem sprawdzać tokenu w bazie danych, ponieważ wystarczy użyć kryptografii, aby sprawdzić, czy token jest legalny. Jeśli musisz wyszukać token w bazie danych, równie dobrze możesz po prostu użyć nieprzezroczystego tokenu, który nie zawiera ze sobą informacji i pozwolić serwerowi i bazie danych na dostarczenie informacji
Jeśli chcesz, możesz używać tokena JWT z OAuth2 bez przechowywania tokenów w bazie danych.JWT mają konfigurowalny czas wygaśnięcia, który można ustawić (po upływie którego są one nieprawidłowe).
Tokeny (bez względu na to, czy JWT, czy nie) powinny być zwykle krótkotrwałe ze uwagi na bezpieczeństwo.