Как сделать JWT авторизацию на LARAVEL (access + refresh)?

Я пробовала использовать https://jwt-auth.readthedocs.io/en/develop/ эту библиотеку, но там рефреш токена происходит используя аксис токен, т.е. когда аксис истекает то он снова отправляется и так рефрешется, но это не то что нужно.

По стандарту должны быть 2 токена
1- аксис (живет 30 мин и находится в localStorage)
2-рефреш (живет 3 месяца и находится в httpOnly куках)

Как это реализовать на laravel?
  • Вопрос задан
  • 277 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Everything_is_bad
ох уж этот JWT, еще и напридумывают своих "стандартов", а в итоге получаем cookie based authentication, где достаточно хранить просто id сессии, без всех этих извращений с аксис и рефреш ;)
Ответ написан
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
access и refresh токены это не про jwt-авторизацию, так как jwt это в первую очередь про сквозную авторизацию между несколькими stateless-сервисами, где вы можете в токене сразу закодировать информацию о пользователе и доп данные, и проверять легитимность токена используя открытый или приватный ключ, без обращений в БД или к промежуточному сервису авторизации.
Если вам нужна token-based авторизация на сайте, то используйте Laravel Passport который из коробки предоставляет все нужные механизмы https://laravel.com/docs/10.x/passport#issuing-acc...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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