Где и как сохранить токен JWT? (Лучшая практика) - PullRequest
0 голосов
/ 06 апреля 2020

Я читал, что сохранение токена JWT в localStorage - плохая практика. https://dev.to/rdegges/please-stop-using-local-storage-1i04 Я работаю с ReactJs, а с другой стороны есть API Rest с NodeJs. Где и как мне сохранить токен JWT ?, в Cook ie?

Греттинг из Чили,

Ответы [ 2 ]

1 голос
/ 07 апреля 2020

Если выбор между поваром ie и localStorage, у обоих есть свои плюсы и минусы, когда речь заходит о безопасности. Если все атрибуты безопасности установлены правильно (HttpOnly, secure, SameSite = strict), верно, что файлы cookie могут быть более защищены от определенных атак.

Однако атрибуты SameSite могут работать не для всех и могут не защищать все функции от атак CSRF (межсайтовая подмена запросов).

HttpOnly защитит значение от доступа к JavaScript, что хорошо, если приложение подвержено (XSS) уязвимостям межсайтового скриптинга. Тем не менее, любой злоумышленник с умеренной квалификацией может легко достичь желаемого, не обращаясь к действительному значению токена.

При хранении токенов в localStorage необходимо помнить, что при закрытии браузера он не очищается, а это означает, что пользователь не выйдет из системы при закрытии браузера - чего многие ожидают. Если это проблема, вы можете вместо этого сохранить JWT в sessionStorage.

0 голосов
/ 06 апреля 2020

localStorage выглядит нормально, потому что многие люди используют localStorage.

Если вам нужна дополнительная функция безопасности, вы можете сократить срок службы токена, например, {30 мин, 60 мин}

Также вы можете проверить Ваше активное состояние пользователя независимо от того, выйдет ли пользователь из системы автоматически

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...