SAML2 - логин пользователя по запросу, инициированному IdP - PullRequest
0 голосов
/ 27 ноября 2018

Я пытаюсь выяснить , как войти в систему пользователя в стандартном приложении веб-форм и приложении веб-форм с поддержкой Owin с использованием инициированного IdP запроса и библиотеки Sustainsys SAML2.

У меня есть IdP в Azure, я могу отправить запрос, и Azure может отправить POST с SAMLResponse на мою конечную точку ACS.

Но я не знаю, как войти в систему с помощью этого токена.В документации Sustainsys нет примеров.

    var spOptions = new SPOptions
    {
        EntityId = new EntityId("https://localhost:44317/Saml2"),
        ReturnUrl = new Uri("https://localhost:44317/Saml2/Acs")
    };

В базовой конфигурации SAML Azure IdP

Identifier (Entity ID): https://localhost:44317/Saml2
Reply URL (Assertion Consumer Service URL): https://localhost:44317/Saml2/Acs

IdP работает нормально, я вижу POST с токеном на моем сайте.Но я думал, что есть некоторая особенность автологина.Но, похоже, я ошибся.

Итак, мои вопросы:

  • Где я должен установить URL возврата, чтобы получить ответ?Является ли конечная точка ACS правильной?
  • Как обработать токен и войти в систему, используя обработчики и Owin?

1 Ответ

0 голосов
/ 28 ноября 2018
  • Конечная точка ACS верна.
  • SPOptions.ReturnUrl должно быть установлено в вашем приложении, где вы хотите, чтобы пользователь заканчивал после , аутентификация завершена.

Вам также нужно установить флаг AllowUnsolicitedAuthnResponse на Idp, чтобы разрешить Idp-вход в систему.

...