由于WSO2官方SSOAgent有太多的依赖关系,我已经开发了我的sso过滤器来处理SAML请求/响应。 当我迁移到IS 4.5时,SSO似乎没问题,但单一注销不再起作用。 发布注销请求后,我不断获取包含所有空参数的重定向页面(表单action = null,SAMLResponse = null,relayStates = null),并重定向到控制台登录页面而不是我的应用程序,因此我无法注销。
我的SAMLRequest似乎是:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<saml2p:LogoutRequest xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol" Destination="https://is-dev.com:9443/samlsso" ID="ebdokpbchiddgikaolkibeifeccocjcajdgbjokd" IssueInstant="2013-11-23T21:38:45.487Z" NotOnOrAfter="2013-11-23T21:43:45.487Z" Reason="Single Logout">
<saml2:Issuer xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">sample</saml2:Issuer>
<saml2:NameID xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress">DOMAIN.COM/jack@domain.com</saml2:NameID>
<saml2p:SessionIndex>3fdf4df7-4b0a-4c20-8fe2-01701c78161f</saml2p:SessionIndex>
</saml2p:LogoutRequest>
我没有看到任何事情。我一直从后端得到这样的错误:
ERROR {org.wso2.carbon.identity.sso.saml.processors.LogoutRequestProcessor} - 28adcd7b-ad16-43b7-b57b-6defb3a33fda]。预期:[56293095-95e4-4379-a723-3e1e6b4c939a] {org.wso2.carbon.identity.sso.saml.processors.LogoutRequestProcessor}
任何人都知道它是否具有相关性?
答案 0 :(得分:0)
似乎是在SAML注销响应中发送的“SessionIndex”无效。 Expected: [56293095-95e4-4379-a723-3e1e6b4c939a]
IDP似乎还在期待其他一些事情。我想你可以做的是,请从IDP获取SAML回复 - &gt; SP。 (登录时)。在该请求中,您可以找到“SessionIndex”并验证您是否在注销请求中发送相同的“SessionIndex”。有关详细信息,请参阅this