@smichalev
Джун

Как реализовать CSRF защиту в SPA приложении?

Всем привет.
На фронте SPA в связке Vue.js + Vuex + Websocket
В качестве сессий выбраны JWT токены access/refresh. Токены хранятся в cookie с флагом http only и secure.
Мой вариант который на текущий момент работает, но меня терзают сомнения :)

Мы при каждом запросе от клиента к api генерируем csrf токен, в memcached записываем токен в качестве ключа, а csrf в качестве значения. После чего по websocket отправляем наш токен всем socket.id пользователя. Те в свою очередь устанавливают новый токен в Vuex и подписывают им каждый запрос к API. На стороне api проверяем csrf и если что то не так то выдаем ошибку.

Каким образом по максимуму на сколько это возможность защитить клиента от csrf и xss атак в SPA приложении? И имеет ли мой вариант право на жизнь? Учел ли я все? Огромное спасибо за ответ.
  • Вопрос задан
  • 315 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы