我正在为运行tomcat的web服务器实现一个使用SAML的SSO身份验证流。使用POST或重定向绑定时,一切正常,但从我所读到的REST前面支持SAML身份验证的内容来看,我还需要配置和使用ECP配置文件。
首先,如果我错了,请纠正我,但ECP流应该是这样的:
Accept: application/vnd.paos+xml
和PAOS: urn:liberty:paos:2003-08;urn:oasis:names:tc:SAML:2.0:profiles:SSO:ecp
)。
问题是所有这些都要工作到步骤6。在这个步骤中,我遇到了一个问题,即响应信封的主体包含一个目的地属性,它指向SP的POST断言消费者服务。这个目标属性由keycloak设置,与我想要发送响应的实际ECP服务不匹配。我们使用的SAML库是opensaml,它根据这个目标属性检查请求URI,如果它们不匹配,它将抛出一个异常org.opensaml.xml.security.SecurityException: SAML message intended destination endpoint did not match recipient endpoint
。
我理解抛出此异常的原因,但无法理解如何使用SP的ECP/SOAP服务配置Keycloak。在Keycloak的管理控制台中,我只能为SSO POST/重定向和SLO POST/重定向配置URL,但不能配置ECP。
我目前正在配置另一个IdP,但我确实希望确保Keycloak也是我们的解决方案所支持的服务器。
发布于 2017-07-19 14:53:00
您就不能只阅读paos:Request responseConsumerURL并将idp响应发布到该url吗?
至少我就是这么做的。
https://stackoverflow.com/questions/40782652
复制相似问题