хранилище токенов vue jwt - PullRequest
       9

хранилище токенов vue jwt

0 голосов
/ 05 декабря 2018

Я слежу за курсом vue на udemy, посмотрел несколько онлайн-ресурсов, и у всех них, похоже, есть процесс, когда я отправляю имя пользователя и пароль в api, и он возвращает мой токен доступа jwt.Затем токен хранится в состоянии (с помощью vuex) и для поддержки обновления страницы (и сохранения входа пользователя в систему) он также сохраняет токен jwt в локальном хранилище.

Поскольку я не использую куки, я понимаю, что я ненадо беспокоиться о csrf.

OWASP не советует хранить токены в локальном хранилище (в основном я полагаю из-за существующих уязвимостей xss).Веб-сайт authO (https://auth0.com/docs/security/store-tokens) говорит, что я должен хранить в памяти (например, как я делаю с vuex).

Как я могу последовать совету не использовать локальное хранилище, а также убедиться, что если пользователь обновляет страницу, тоони все еще вошли в систему (без файлов cookie) или это невозможно.

1 Ответ

0 голосов
/ 05 декабря 2018

Прежде всего, я не эксперт по безопасности.Если в вашей компании есть сотрудник по безопасности или вы, возможно, тоже захотите обсудить этот вопрос.

OWASP заявляет, что вам не следует хранить конфиденциальную информацию в localStorage (или WebSQL / IndexDb).Но я думаю, что вы должны сбалансировать свои варианты.Если все в порядке, что пользователь должен входить в систему каждый раз из-за какой-то действительно конфиденциальной информации, вы можете сойти с sessionStorage или оставить токен в памяти.В противном случае просто перейдите с localStorage.В качестве примера: нажмите F12 и посмотрите, что SO использует: LocalStorage.

Есть также хороший ответ по этому вопросу на Security StackExchange

...