【发布时间】:2017-05-14 16:15:36
【问题描述】:
我已将 WSO2 身份服务器配置为 IDP,并将两个应用程序配置为 SP。一切正常,除了几件事:
当我从一个应用程序注销时,另一个应用程序看不到我已注销
当我登录一个应用程序时,另一个应用程序看不到我已登录
恕我直言,有 SSO 和 SLO 的主要原则。
当我检查SecurityContextHolder.getContext().getAuthentication() 时,注销或登录另一个应用程序后没有任何变化。
也许我应该在每个加载 URL 之前调用 WSO2 页面 /samlsso?
我能做错什么?如何从另一个应用程序中检索该用户已注销/登录?
编辑:
例如,WSO2 API Manager Store 有这样的机制:
- 当我从我的应用程序注销并重新加载商店页面时,然后重定向到商店中未登录的主页面。与登录相同。
更新:
我在org.springframework.security.saml.websso.SingleLogoutProfileImpl 课堂上发现了问题。当注销请求来自 WSO2 IS 时,对象 Authentication 和 SAMLCredential 为空,并发生错误 No user is logged in,但真实用户仍登录 Spring SAML 应用程序。
同样的讨论是here,但没有效果:\
【问题讨论】:
标签: spring spring-security wso2 wso2is spring-saml