Я настроил WSO2 Identity Server как IDP и два приложения настроены как SP. Все работает отлично, за исключением нескольких вещей:Spring SAML SSO не обменивается сеансом
, когда я вышел из системы из одного приложения, другое приложение не видите, что я вышел из системы
, когда я войти в систему в одно приложение, другое приложение дон что я зарегистрирован в
IMHO, есть основные принципы SSO и SLO.
Когда я проверяю SecurityContextHolder.getContext().getAuthentication()
, после выхода из системы или регистрации в другом приложении никаких изменений не будет.
Возможно, мне нужно позвонить на страницу WSO2/samlsso перед каждым URL-адресом нагрузки?
Что я могу сделать неправильно? Как получить из другого приложения, этот пользователь вышел из системы/зарегистрировался?
EDIT:
Например, WSO2 API менеджер магазина есть такой механизм:
- , когда я вышел из системы из моего приложения и перезагрузите страницу магазина, то происходит перенаправление на главную не вошедшую страницу в магазине. То же самое с логином.
UPDATE:
Я нашел проблему в классе org.springframework.security.saml.websso.SingleLogoutProfileImpl
. Когда запрос на выход выходит из WSO2 IS, объекты Authentication
и SAMLCredential
являются нулями и ошибкой No user is logged in
, но для реального пользователя, все еще зарегистрированного в приложении Spring SAML.
же обсуждение было here, но без эффекта: \
Уже настроен. –