Как нам настроить приложение (SP) для использования централизованного IdP компании в SAML на PHP? - PullRequest
0 голосов
/ 28 июня 2019

В нашей организации есть несколько приложений на основе PHP. Эти три вопроса связаны с нашими организациями SAML IdP. Все они, за исключением одного, были готовыми приложениями, в которые встроен SAML.

У нас есть третье приложение, которое является одноразовым, но в настоящее время для него не настроен SAML. Мы загрузили и начали настраивать SimpleSAMLphp, и мне также предоставили метаданные люди, которые управляют IdP.

Я знаю, что одной из точек SAML является то, что приложения SP не видят учетные данные пользователей, но также, очевидно, и функциональность единого входа.

Мои вопросы:

  • Когда пользователь нажимает на ссылку «Войти», чтобы перейти на нашу страницу входа, что нам нужно сделать, чтобы направить пользователя на страницу входа в IdP и дополнительно отправить его обратно в SP?
  • В ходе некоторой отладки другого нашего приложения я видел, что существует запрос Saml, который генерируется и отправляется в POST до конечной точки. Я предполагаю, что это ответ на мой первый вопрос, но я не уверен, как сгенерировать этот запрос Saml.

Что нам нужно сделать, чтобы это приложение работало как поставщик услуг? Нам не нужно настраивать IdP здесь.

1 Ответ

0 голосов
/ 29 июня 2019
  • Когда пользователь нажимает на ссылку «Войти», чтобы перейти на нашу страницу входа, что нам нужно сделать, чтобы направить пользователя на страницу входа в IdP и дополнительно отправить его обратно в SP?

Администратор IdP предоставит вам информацию о том, как получить доступ (и использовать) IdP.Одним из примеров может быть простой URL-адрес перенаправления, на который пользователь должен открыть или перенаправить.Затем аутентификация происходит между пользователем и IdP.Это займет «вне» вашего элемента управления или службы.

Через некоторое время пользователь будет перенаправлен обратно на предварительно настроенный URL-адрес вашей службы.Точка доступа должна существовать в вашей службе, и она была заранее сообщена администратору IdP.Администратор должен установить этот «обратный URL» в IdP.Запрос от IdP на вашей точке доступа к службе будет содержать ответ SAML от IdP (документ XML).Вы должны проанализировать этот ответ SAML, проверить его действительность и извлечь из него идентификацию пользователя.Тогда вы знаете, кто именно хочет использовать ваш сервис, и можете использовать эту информацию в вашем сервисе.

  • В ходе некоторой отладки другого нашего приложения я понял, что существует запрос Saml, которыйгенерируется и отправляется в конечную точку.Я предполагаю, что это ответ на мой первый вопрос, но я не уверен, как сгенерировать этот запрос Saml.

В зависимости от IdP вам может не понадобиться создавать запрос SAML.Вы можете просто перенаправить пользователя на страницу входа IdP.Но это зависит от конфигурации IdP для вашего сервиса.

...