Задать вопрос
@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 приложении? И имеет ли мой вариант право на жизнь? Учел ли я все? Огромное спасибо за ответ.
  • Вопрос задан
  • 438 просмотров
Подписаться 2 Средний 5 комментариев
Помогут разобраться в теме Все курсы
  • HTML Academy
    Vue.js 3 — разработка клиентских приложений
    1 месяц
    Далее
  • Stepik
    Frontend разработчик на HTML, CSS и JavaScript
    1 месяц
    Далее
  • Академия Эдюсон
    Frontend-разработчик + ИИ
    9 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы