Windows Identity Foundation - IdentityProvider инициировал единый вход

Спасибо за чтение. Я пытаюсь выполнить единый вход между моим сайтом (Site1) и другим сайтом (Site2), с которым мы связаны. Я хочу использовать WIF и STS. Мой веб-сайт уже подключен к базе данных SQL-сервера, и я проверяю подлинность в этой базе данных. После аутентификации я хотел бы показать ссылку / значок на моей главной странице, которая ведет на другой сайт (site2) и предоставляет утверждения, которые нужны другому сайту (site2). Из того, что я видел в Интернете, в основном это тот случай, когда при запросе ресурса на site2 система перенаправляется на сайт STS, а при успешном входе в систему на STS претензии представляются на site2, и пользователю предоставляется доступ. Как я могу достичь SSO, инициированного IDP? Щелкнув ссылку для входа в систему, я хочу пройти аутентификацию на странице site2.


person user1174538    schedule 27.01.2012    source источник


Ответы (1)


Простейшая реализация этого сценария с проверкой подлинности на основе утверждений (с WIF и ASP.NET) состоит в том, чтобы Site1 и Site2 доверяли STS. Итак, будет 3 компонента. Другие ответы (и ваш вопрос), похоже, предполагают, что Site1 и STS - это одно, что обычно не рекомендуется.

введите описание изображения здесь

Последовательность будет:

  1. Пользователь впервые заходит на Site1. Поскольку он не прошел проверку подлинности, его перенаправляют на STS.
  2. STS аутентифицирует пользователя и выдает токен для Site1. Создает сеанс с пользователем.
  3. Браузер отправляет токен обратно на сайт Site1, где создается другой сеанс.
  4. Пользователь нажимает ссылку на Site2. Для Site2 пользователь не аутентифицирован, поэтому перенаправляется на STS.
  5. Пользователь достигает STS. Он уже прошел аутентификацию, служба STS приступает к выдаче второго токена для Site2 (потенциально и часто с разными утверждениями).
  6. Браузер отправляет второй токен обратно на Site2. Сессия создана.

Обновление. В этой главе руководства по утверждениям рассказывается о настройках и конфигурации SharePoint. http://msdn.microsoft.com/en-us/library/hh446525.aspx

person Eugenio Pace    schedule 31.01.2012
comment
Привет, Эухенио. Спасибо за ответ. Мне удалось реализовать то, что вы предложили. Сработало отлично. Это был POC, который мне нужно было сделать. Мне нужно выступить против sharepoint 2010. Я создал свой внешний сайт STS, который генерирует заявки. Нажав вышеупомянутую ссылку на Site1, я хотел бы пройти аутентификацию на сайте Sharepoint. Я читал, что для создания доверия в Sharepoint для внешнего поставщика требуется PowerShell. Есть ли простой способ сделать это? - person user1174538; 04.02.2012