我们希望在我们的组织中为SSO实施此类附加配置:
Web application (with SpringSaml) --- WSO2 IS 5.0.0 --- SimpleSaml as IDP for WSO2 IS.
我们的SSO配置工作是:
Other Services --> SimpleSaml
几乎所有的工作都可以。但是如果我从我的应用程序和其他服务登录到WSO2 IS,我登录到SimpleSaml并且其他服务将LogoutRequest发送到SimpleSaml,WSO2 IS从SimpleSaml接收LogoutRequest但是没有回答而且WSO2 IS产生错误:
ERROR {org.wso2.carbon.identity.application.authentication.framework.handler.request.impl.DefaultRequestCoordinator} - Context does not exist. Probably due to invalidated cache
我认为,这是由于SimpleSaml的注销请求中缺少sessionDataKey参数。 在SimpleSaml的IDP元数据中,我将SingleLogoutService设置为
<md:SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://<server>:9443/commonauth"/>
也许这不是正确的网址。但是我找不到配置的SingleLogout URL。 有人可以帮助解决这个问题,或者在这样的配置中不可能使用WSO2 IS吗? 非常感谢!
P.S。我很抱歉我的英文
答案 0 :(得分:0)
我从您的评论中了解到您已将SimpleSamlPHP设置为已连接到多个SP的IDP。即使是连接到WSO2的SimpleSamlPH也是。其中一个SP将Logout请求发送到SimpleSAMLPHP和SimpleSAMLPHP传递对WSO2 IS的注销请求。
让我描述一下注销请求如何对SP发起的Logout请求起作用。
SP发给IDP的LogoutRequest
IDP为给定的用户会话确定经过身份验证的SP。如果除了发送注销请求的SP之外没有SP,则配置文件继续执行步骤5.否则,将为每个SP重复步骤3和4
IDP向SP发出的LogoutRequest
退出网址,您可以将自定义网址设置为您希望用户重定向的位置。
请参阅以下网址,将外部IDP配置为WSO2 IDP。
http://pushpalankajaya.blogspot.com/2014/09/leveraging-federation-capabilities-of.html
答案 1 :(得分:0)
如果您在WSO2IS中使用/ samlsso终点,则表示您正在使用SAML2 SSO。因此,您必须向/ samlsso端点发送正确的注销请求。如果您需要了解有关使用SAML2 SSO注销SSO的更多信息,请浏览以下网址。
http://xacmlinfo.org/2013/06/28/how-saml2-single-logout-works/