@FatalPG
Созрел для написания первого более-менее значимого проекта для портфолио (заканчиваю 3 курс, претендую на Backend Python Junior). В качестве задумки выбрал интернет магазин, в котором должны быть товары, категории, фильтры, регистрация, авторизация, корзина, возможно оплата (дабы показать умение интегрировать сторонние сервисы с приложением).
Дошло дело до реализации аутентификации, авторизации и регистрации, хотелось бы уточнить несколько вопросов:
Дошло дело до реализации аутентификации, авторизации и регистрации, хотелось бы уточнить несколько вопросов:
1) Какой способ аутентификации целесообразней использовать в данном проекте?
Пока склоняюсь к авторизации по сессиям с использованием CSRF при передаче данных между React и DRF, но не понимаю, как корректно это реализовать. В API должен быть эндпоинт который будет передавать токен реакту, а реакт будет включать этот токен в заголовок JSON при запросе к @csrf_protect URL`ам?
2) Стоит ли запариваться с настройкой CSRF? Насколько это целесообразно, возможно стоит сделать авторизацию по jwt токенам?
Решения вопроса 1
@GNUBack
Однозначного ответа нет, если хранить сессию в куках, то нужна защита от CSRF, что и делает CSRF токен, но с React всплывает проблема как получать этот токен. Если использовать jwt, то встает вопрос где хранить refresh token, тут всплывает проблема защиты от XSS, однозначного ответа на это тоже нет. Есть третий вариант — «упрощенный» jwt, просто токен без подписи, который передают в заголовки, пример как раз есть в доках DRF.
Ответы на вопрос 0