我想知道 wso2is 有多少符合 saml2 SSO 规范。特别考虑 SingleLogoutProfile 与 POST 绑定。在一个 SP 发起注销后,IS 识别参与的 SP 也进行注销,并通过 HTTP 直接向每个 SP 发送 LogoutRequest。
下面我正在复制规范中的图像(第 1161 行)。请注意第 3 步,并注意灰色的用户代理。它是灰色的,因为 SOAP 绑定绕过用户代理并将请求直接发送到会话参与者。然而,POST 绑定应该在用户代理的参与下工作!(第 765 行)
我使用 wso2is 4.6.0,带有 spring-security-saml-extension RC2。当 spring-extension 接收到 LogoutRequest(第 3 步)时,它假定有一个登录用户,只有当 http-request 来自 user-agent 时才可以!否则,SP 必须维护某种将全局会话 ID 链接到本地会话 ID 的表,并在收到注销请求时查找要终止的会话。这个博客也推荐了这种方法。
因此,要么我误解了 saml2-specs,要么误解了 wso2 的人!我宁愿相信是我,所以有人请赐教!