Этот плагин отлично работает https://github.com/404labfr/laravel-impersonate, но я разрабатываю веб-приложение, которое выполняет RESTful API. API-интерфейсы обычно используют токены для аутентификации пользователей и не поддерживают состояние сеанса между запросами.
А подключаемый модуль larave-олицетворениеhttps://github.com/404labfr/laravel-impersonate - это на основе сеанса, что может быть выполнено в маршрутах / контроллерах, принадлежащих к группе промежуточного программного обеспечения Интернета. Поскольку маршруты API не имеют состояния, они используют Токены API, а не сеанс для аутентификации и авторизации. В общем, я не могу использовать этот удобный плагин :(
Есть ли способ выполнить олицетворение пользователя с помощью токенов API?
Функция олицетворения пользователя может выдавать себя за других пользователей. Как администратор, вы можете просматривать все экраны, как если бы вы вошли в систему как другой пользователь. Это позволяет вам легко обнаружить проблему, о которой может сообщить ваш пользователь.






Почему бы просто вручную не сгенерировать токен для выбранного пользователя и собственно запросы как их? настроить отдельный клиент (при условии, что вы используете oAuth / Passport) и не использовать этого клиента в качестве «имитатора». Вы можете установить флаг базы данных, чтобы сказать, что запросы были олицетворены, если вы выполняли аудит запросов.
@ J.I.S это очень поздний ответ, но я создал промежуточное ПО на основе ответа Джо, которое изменяет заголовок токена авторизации на основе олицетворенного пользователя. Надеюсь, это поможет кому-то с таким подходом.
Большое спасибо за ваш ответ. Я очень ценю это. :) К сожалению, я все еще не понимаю, как это применять. Мне нужно больше узнать об oAuth. Но могу ли я смиренно попросить всего лишь блок кода или просто ссылку на то, как на самом деле это сделать?