Я рассматриваю реализацию сервера аутентификации, что-то похожее на GitHub, Google или Bitbucket, где сервер аутентификации находится в отдельном домене.
У меня есть настройка сервера на account.mydomain.com
, которая использует Laravel Паспорт и мой API на api.mydomain.com
.
Все прекрасно работает, однако, когда дело доходит до границ, у меня небольшие проблемы. Я объясню, чего я хочу достичь, немного подробнее.
По сути, каждый user
на account.mydomain.com
может иметь несколько profile
, когда новый пользователь создается с помощью account.mydomain.com/register
, он автоматически создает profile
для них. Я думаю, это то же самое, что Googles accounts
или GitHub's organisations
.
Проблема, с которой я сталкиваюсь, заключается в том, что, очевидно, Laravel токены паспорта направлены против пользователя. Я хотел бы также принять, какой profile
пользователь выбрал для учета (поэтому в представлении авторизации будет поле выбора, заполненное списком пользовательских профилей и по умолчанию - текущим активным профилем пользователей).
Каждая конечная точка API затем проверяет scope
и выполняет действия с profile
, выбранным пользователем при авторизации клиента.
Еще одна проблема, может возникнуть для сторонних клиентов, где первичные клиенты имеют доступ к любому профилю, к которому принадлежит пользователь.
Я задумываюсь над этим? Есть ли простое решение? Что бы вы сделали, чтобы справиться с такой ситуацией?