Веб-приложение MVC 4, использующее ADFS для аутентификации пользователей из разных организаций

#adfs #ws-federation

Вопрос:

У меня есть веб-приложение, разработанное с использованием ASP.NET 4.5 и MVC 4. Первоначально он использовал проверку подлинности формы для входа пользователей, однако мы переносим ее на проверку подлинности ADFS (федерация WS). Идея заключается в том, что пользователи из моей организации (организация 1) и другой организации (Организация 2) смогут входить в систему с помощью ADFS (ws-fed). ADFS настроена таким образом, что при переходе по URL-адресу веб-приложения оно перенаправляется на экран входа в ADFS. На этом этапе отображается опция для двух организаций, Org 1 и Org 2. Если вы принадлежите к организации 1, нажмите эту кнопку, и пользователь должен ввести свое имя пользователя и пароль. То же самое произойдет, если вы нажмете кнопку Org 2. Серверы ADFS в Организации 1 и Организации 2 обменялись метаданными/сертификатами и значениями утверждений.

Когда пользователь из Org 1 входит в систему, проблем нет, после успешной аутентификации ADFS он перенаправляется обратно в веб-приложение с необходимыми утверждениями (веб-приложение использует информацию в этих утверждениях). Однако, когда пользователь из Org 2 входит в систему, он проходит проверку подлинности, но его заявления не поступают в веб-приложение.

Нужно ли настраивать веб-приложение для работы с обоими серверами ADFS из организации 1 и Организации 2? Мои первоначальные мысли были о том, что Org 1 (моя собственная организация) будет обрабатывать всю аутентификацию ADFS. Веб-приложение укажет на него, и когда пользователь из организации 2 попытается войти в систему, наши ADFS перенаправят запрос в Организацию 2, а затем Организация 2 отправит утверждения обратно на наш сервер ADFS источника, и он перенаправит обратно в приложение с утверждениями? Я ошибаюсь, думая об этом?

Ответ №1:

Нет, все правильно.

Две возможности:

  • ADFS Org2 содержит неправильные правила утверждений
  • В вашей ADFS нет правил сквозных утверждений. Вам нужны эти правила для вашего CP (для Org2) и для вашего RP

Ему нужны эти правила, чтобы пройти через то, что он получает от Org2.