我有两个同时登录到WSO2的服务提供者。由于我不会解释的原因,其中一个SPs 此时不能实现单注销。
结果,如果SP-1注销,WSO2将使SessionIndex无效,如预期的那样。
然后,当SP-2尝试注销(使用相同的SessionIndex)时,WSO2提供错误页面。
通过在浏览器的调试器中跟踪请求/响应,可以看到一个SAML错误响应是由WSO2创建的。但是,它没有将响应发送回Service Provider(在那里可以使用它),而是提供错误页面并将响应附加到其中。
我希望我的服务提供者接收这个响应,这样我就可以执行清理操作,并且还可以对错误的记录/显示进行更细粒度的控制。有办法做到这一点吗?
假设您有两个sp (SP1, SP2),如果您为两个sp启用了SLO。然后,如果您从SP1注销,它将向SP2发送SLO请求,SLO响应SP1并使IDP会话无效。因此,在您的实现中,如果SP2收到SLO请求,它应该使其会话无效。那就没问题了。但是你要做的是在SP1启动SLO之后。SP2再次尝试启动SLO。所以最好按照我的建议来处理