Beh, dipende. Se si dispone di una vulnerabilità XSS all'interno dell'applicazione, un utente malintenzionato può estrarre e utilizzare il JWT dalla propria memoria locale.
Un metodo che ho usato e penso che Auth0 indichi utilizzare il cookie come memoria JWT e utilizzare i flag Solo HTTP e sicuro in questo modo se si ha una vulnerabilità XSS il cookie non può essere leggere e viene trasportato solo in modo sicuro. Oggi CSRF è meno rischioso in quanto tutti i moderni framework includono la mitigazione CSRF.
Ciò significa che la convalida estrae il JWT dal cookie sul lato server per convalidare. La mia opinione personale è quella di utilizzare un cookie come memoria in quanto CSRF è più facile da trovare e mitigare rispetto agli attacchi XSS che hanno una grande superficie di attacco.