У меня есть пользовательское приложение для внутреннего использования только там, где в настоящее время пользователи создаются супер-администратором. Некоторые из пользователей находятся внутри бизнеса, а некоторые внешние, например. поставщики / покупатели.
Я ищу способ интеграции MS Active Directory в качестве опции входа в систему, но хочу иметь возможность ограничить, какие пользователи из бизнеса могут фактически использовать этот метод.
У меня есть поиск по всем документам MS, и у меня есть вся документация по различным подходам oauth, но я не уверен, какой из них подойдет для моих нужд.
Я думаю, что, возможно, мне нужно дать администратору способ просмотреть AD и выбрать пользователей, которые могут войти, который затем создает неактивные учетные записи пользователей в базе данных mysql с каким-то идентификатором пользователя MS. Затем предоставьте кнопку «Войти с MS», которая выполняет обычный процесс перенаправления авторизации на MS и обратно на сайт. В этот момент я могу проверить идентификатор и, если он совпадает с разрешенной учетной записью пользователя, и если да, синхронизировать остальные данные, например, имя, адрес электронной почты, телефон и т. д.
Ссылки, которые я уже нашел:
https://docs.microsoft.com/en-gb/azure/active-directory/develop/authentication-scenarios
https://docs.microsoft.com/en-gb/graph/tutorials/php
https://github.com/microsoftgraph/msgraph-training-phpapp/tree/master/Demos/03-add-msgraph