Я не получаю этот случай запроса SAML - PullRequest
1 голос
/ 27 марта 2019

На моей работе есть поставщик аутентификаторов SAML. Просто из любопытства я открыл devTools моего браузера, чтобы следовать последовательности saml во время аутентификации. Ожидал что-то вроде:

  • Сервер отправляет мне запрос SAML и является сертификатом.
  • Мой браузер спрашивает меня, какой сертификат он должен использовать для аутентификации.
  • Мой браузер отправляет информацию на сервер.
  • Сервер узнал меня и отправил мне токен, чтобы разрешить доступ к услуге.

Но Истина немного отличается от того, что я ожидал. На самом деле, согласно моему веб-браузеру:

  • Сервер перенаправляет меня на сервер аутентификации SAML с запросом GET, содержащим несколько аргументов: SAML До выбора сертификата

  • Мой браузер спрашивает меня, какой сертификат он должен использовать.

  • Мой браузер изменил заголовок моего запроса выше и получил ответ от сервера, и сервер перенаправил меня на мой сервис. Я теперь опознан: SAML После выбора сертификата

Итак, несколько вопросов:

  • 1: Как сервер аутентифицирует меня без получения информации обо мне?
  • 2: Что мой браузер сделал с выбранным сертификатом?
  • 3: что такое аргументы SAMLRequest и RelayState?
  • 4: Почему до выбора какого-либо сертификата в моем запросе есть «предварительные заголовки», тогда он получает токен, прежде чем получить какой-либо ответ?

надеюсь, вы, ребята, могли бы ответить на мои вопросы.

Заранее спасибо,

С наилучшими пожеланиями

1 Ответ

0 голосов
/ 27 марта 2019

Как правило, в случае SAML IdP отправляет утверждение о аутентифицированном пользователе в SP.

То, как происходит настоящая аутентификация в IdP, выходит за рамки.

about1/2: когда вы получили доступ к IdP, он может быть настроен на использование «аутентификации клиента TLS» для выполнения «автоматического входа».Поскольку ваш браузер участвовал в «аутентификации клиента TLS», IdP знает о вас (или лучше о представленном сертификате).

около 3: Параметр запроса SAMLRequest - это закодированный SAML AuthnRequest с использованием привязки перенаправления HTTP... пожалуйста, проверьте спецификации SAMLv2.Параметр запроса RelayState содержит целевой URL, на который SP будет перенаправлять после успешного выполнения SPO-инициированного SSO.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...