Разрабатываю vue spa с бэком на laravel. В чем вообще разница? Гугл мне говорить не хочет
санктум проще чем oauth. но и oauth вам скорее всего избыточен если у вас нет аргументов почему нужно юзать паспорт - юзайте санктум
Там про jwt вопрос
санктум не jwt если нужен jwt - юзайте jwt. если не нужен - не юзайте. в чем вопрос то?
Использовать sanctum или jwt? Когда использовать первый, когда второй?
почитайте про функционал jwt и для чего он используется. думаю вы сразу же поймете нужен ли он вам. если у вас есть отдельный сервер аутентификации - jwt отличный выбор (скорее выбор по умолчанию даже. но может я не прав) если сервер приложения и сервер аутентификации это одно и то же (одно является частью другого) и у вас нет функционала "выдачи токена на определенную операцию" то jwt слегка избыточен по сравнению с санктумом. в jwt в пэйлоаде вы можете указать любые данные какие хотите. например можете разрешить владельцу токена получать данные из запроса А и запретить владельку токена получать данные из запроса Б. или хранить информацию о том где когда и как был получен этот токен. санктум может меньше и он проще. jwt может больше но он сложнее
А под какую задачу выбираете?
vue spa с пользователями, у которых разные права (админы и обычные юзеры)
тогда берите санктум и не парьтесь. его функционала должно вам хватить от какой модели токен - поймет (хранит в tokenable_type) может ли юзер с этим токеном совершать действие - знает (если вы в момент авторизации прописали список действий разрешенных, а затем проверили через can). + можете систему ролей прикрутить или написать свою. а больше вам по сути и не нужно
А если понадобится перенести на другой бэкенд? Тогда что?
да ничего. перенесете и все. фронт что делает? отправляет запрос с креденшелами, в ответ получает токен. этот токен сохраняет где то у себя и прокидывает его в загаловок авторизации. на этом все. что там внутри токена и как он выглядит - фронту в целом плевать я с паспорта переключался на санктум (паспорт избыточен), фронты и не заметили. просто раньше им приходила строка одного вида а сейчас приходит строка другого вида. если "другой бэк" у вас будет без update token то на фронте ничего ровным счетом не поменяется.
Спасибо!
Обсуждают сегодня