Поскольку при регистрации DI необходимо настроить аутентификацию, вам нужно будет настроить всех внешних провайдеров входа в систему в целом при регистрации аутентификации.
На этом шаге необходимо добавить все схемы. Схема имеет фиксированный идентификатор клиента / секретный ключ, поэтому вам необходимо bootstrap ваш IdentityServer со всеми учетными данными внешнего провайдера входа, которые вы поддерживаете для всех ваших клиентов. Имя схемы должно быть уникальным.
Например, у арендатора A может быть схема "A_microsoft", у арендатора B может быть схема "B_microsoft", et c.
. Затем можно ссылаться на эти схемы аутентификации при вызове методов в IdentityServer. SignIn, Challenge, SignOut и др. c.
Имейте в виду, что для этого потребуется загрузить IdentityServer с полным набором арендаторов. В зависимости от вашего сценария, если арендаторы регулярно обновляются, потребуется также регулярный перезапуск IdentityServer, чтобы узнать о новых схемах аутентификации.
Если это проблема, вы, вероятно, можете каким-то образом увеличить зарегистрированную схемы аутентификации во время выполнения IdentityServer, но это будет непросто. Это может потребовать более крупных пользовательских реализаций промежуточного программного обеспечения для аутентификации, поставляемого с AspNetCore.