У меня есть приложение .net, подключенное к моему локальному серверу ADFS (подключенному к нашему корпоративному серверу AD), и все работает нормально. Мой вопрос заключается в том, может ли моя ADFS установить надежное соединение с дополнительными службами единого входа в Интернете, такими как Azure AD, AWS, логин Google, Facebook, Twitter, OpenID и т. Д., Чтобы мое приложение могло использовать заявки из нескольких надежных источников, помимо моего Активировать каталог?
8
Ответы:
Я сделал это В нашей модели у нас есть три набора пользователей:
Внутренние пользователи проходят проверку подлинности через Active Directory (Kerberos или NTLM) на локальном экземпляре AD FS. В этом наборе сервер AD FS работает как IdP.
Внешние пользователи, проходящие аутентификацию через Active Directory (Kerberos или NTLM), используют свои собственные экземпляр и домен AD FS. В этом наборе сервер AD FS имеет доверие поставщика утверждений, настроенное для сервера AD FS выдачи. Наш сервер AD FS работает как SP-STS, преобразовывая и проверяя заявки, выданные в других местах, и переиздавая доверенный токен для нашего приложения. IdP - это сервер AD FS другого домена, где наш сервер AD FS настроен как проверяющая сторона.
Внешние пользователи без корпоративного входа. Эти пользователи проходят проверку подлинности на небольшом .Net STS, который настроен как доверие поставщика утверждений на нашем сервере AD FS. (Мы также решили - и это было технически просто - использовать Azure Active Directory B2C для этой роли, но другие проблемы помешали этому.)
Жетоны выдаются как:
Чтобы сделать его прозрачным для наших клиентов, мы используем диапазоны IP-адресов для обнаружения (через nginx) и перенаправления на соответствующую корпоративную AD FS - и в противном случае полагаемся на стандартную страницу AD FS HRD.
источник
Кажется, что связывание полагающихся сторон действительно возможно. Этот парень написал серию постов об этом, вот один. Вы можете использовать ADFS в качестве «концентратора» для своего приложения для аутентификации, и оно будет связывать запрос обратно с тем сервисом, в котором фактически живет личность пользователя.
https://cloudidentityblog.com/2013/06/17/why-use-aad-as-idp-via-ad-fs-rp/
Я не сделал этого сам, поэтому я не уверен, сколько работы это и какие могут быть подводные камни. Я уверен, что вы можете столкнуться с проблемами, если пользователь живет в более чем одном IdP.
Не забывайте, что ничто не мешает вам написать приложение .NET, чтобы иметь возможность изначально использовать преимущества нескольких поставщиков единого входа.
источник
Да, оно может.
Каждый из этих внешних IDP добавляется в качестве поставщика утверждений в ADFS, а на стороне IDP ADFS добавляется в качестве проверяющей стороны.
Когда вы аутентифицируетесь, ADFS покажет экран Home Realm Discovery со списком всех IDP.
Затем вы выбираете, какой из них вы хотите использовать.
источник