у клиента есть свой сервер аутентификации, соответственно, данные о пользователе, его ролях и т.д. я буду получать по api, с использованием jwt токена.
Т.е. по общим признакам, это микросервис пилится.
И вот сам вопрос:
как правильно таскать объект пользователя через весь жизненный цикл приложения?
Если в случае, когда аутентификация на стороне лары, то у нас есть фасад Auth, у нас есть модель User, и прочее добро связанное с этим.
А как быть в случае микросервиса, когда юзер это совершенно сторонняя сущности?
Написать синглтон сервис, и в нём хранить объект, пришедший от сервиса владельца юзера?)
s singeltonom дамаю у вас будет проблема лучше написат мидлваре и дабавить дание в кеш и от туда брать
можно написаать сервис провайдер оверрайдящий родной фасад auth со своей логикой - синглтон делать не обязательно ведь у тебя будет мидлварка проверяющая доступ юзера (а значит складывать данные придется всего 1 раз) - достаточно будет просто статичного класса в который мидлварка складывает текущий стейт и прочие полезные данные - их хотябы можно будет переустановить для юнит тестов в случае необходимости а для красоты обернуть это все переопределив фасад авторизации лары
Обсуждают сегодня