С целью обеспечения REST API с помощью JWT, по мнению некоторых материалов (как это руководство , и этот вопрос ), то JWT , может храниться в любом LocalStorage или печенье . Исходя из моего понимания:
- localStorage подвержен XSS и обычно не рекомендуется хранить в нем какую-либо конфиденциальную информацию.
- С помощью файлов cookie мы можем применить флаг httpOnly, который снижает риск XSS. Однако, если мы хотим прочитать JWT из файлов cookie на бэкэнде, мы подвергаемся CSRF.
Итак, исходя из вышеизложенного, будет лучше, если мы будем хранить JWT в файлах cookie. При каждом запросе к серверу JWT будет считываться из файлов cookie и добавляться в заголовок авторизации с использованием схемы Bearer. Затем сервер может проверить JWT в заголовке запроса (в отличие от чтения его из файлов cookie).
Я правильно понимаю? Если да, есть ли у вышеуказанного подхода какие-либо проблемы с безопасностью? Или на самом деле мы можем просто обойтись без использования localStorage?