2015-08-25 2 views
1

Accoriding к документу Spring SAML Extension:Spring SAML - Глобальный выход из системы не работает после удара URL «/ SAML/выход из системы»

Локальный выход из системы заканчивается только локальный сеанс и не влияет ни на сессию в IDP, ни сессий в других СП, где пользователь регистрировался с использованием единого входа. Локальный выход может быть инициализирован по схеме: // server: port/contextPath/saml/logout? Local = true.

Для выхода из системы глобального, мы должны ударить схема: // сервер: порт/contextPath/SAML/выход из системы URL, но для меня, он записывает только из локальной сессии, но не выйти из ВПЛ.

Это [WebSecurityConfig] (https://github.com/vdenotaris/spring-boot-security-saml-sample/blob/master/src/main/java/com/vdenotaris/spring/boot/security/saml/web/config/WebSecurityConfig.java), который я использую для создания SAML SP. Мой вопрос: я делаю что-то неправильно здесь? или это проблема из-за IDP, который я использую (не могу упомянуть IDP, поскольку это один из SOML SSO моей фирмы). Или мне нужно определить любой глобальный обработчик выхода здесь? Если да, то как?

+0

Я также сталкиваюсь с той же проблемой. Вы разрешили эту проблему? Если да, можете ли вы отправить это сообщение в качестве ответа. – user2001627

ответ

0

Я бы проверял метаданные IdP, которые вы настроили. Похоже, что указанная конечная точка неверна, поэтому она не получает то, что ей нужно.

С учетом этого вы должны подтвердить, была ли какая-либо деятельность в ваших журналах IdP относительно любой формы выхода из системы. Рассмотрим уровень DEBUG или TRACE.

2

Глобальный выход из системы в случае единого входа (SSO) требует поддержки как у поставщиков услуг (SP), так и для поставщиков удостоверений (IdP). То, что вы делаете, включает только конечную точку глобального выхода из стороны SP, которая гарантирует, что SP будет генерировать глобальный запрос на выход & в IdP (в зависимости от профилей/привязок SAML, которые вы используете), теперь, как IdP это также зависит от IdP.

В SSO сеанс в IdP, сеанс в SP и файлы cookie в user-agent устанавливается при входе в систему. Для облегчения единого глобального выхода из системы возникает разрыв между ожиданиями пользователей и техническими ограничениями. Я предлагаю вам читать о проблемах SLO здесь: https://wiki.shibboleth.net/confluence/display/CONCEPT/SLOIssues

Шибболет IdPv3 предоставил частичную поддержку единого Logout использования как фронтальный направление (агента пользователя, участвующий в отправке выхода из системы на всех Sps & IDP), а также назад- (пользовательский агент отправляет запрос на выход в текущий SP & IdP, IdP, в свою очередь, отправляет запрос на выход всем зарегистрированным SP). Вы можете прочитать, как Shibboleth IdP v3.2.0 обрабатывает выход из системы: https://wiki.shibboleth.net/confluence/display/IDP30/LogoutConfiguration