Redirect 如何将SSOCIRCE用作idp并重定向到页面?

Redirect 如何将SSOCIRCE用作idp并重定向到页面?,redirect,saml-2.0,simplesamlphp,Redirect,Saml 2.0,Simplesamlphp,我正在尝试设置SAML,我的服务提供商和身份提供商都使用了SimpleSAMLphp。现在,为了测试我的服务提供商,我设置了SSOCIRCE作为替代身份提供商。我遇到的问题是,无论我做什么,它都会重定向到/而不是SimpleSAMLphp最后用来重定向的RelayState。标准中是否有任何部分解决了这一问题?它是否应该总是重定向到/或在不应该时忽略我的参数 <a href="https://idp.ssocircle.com/sso/idpssoinit?metaAlias=%2Fpub

我正在尝试设置SAML,我的服务提供商和身份提供商都使用了SimpleSAMLphp。现在,为了测试我的服务提供商,我设置了SSOCIRCE作为替代身份提供商。我遇到的问题是,无论我做什么,它都会重定向到/而不是SimpleSAMLphp最后用来重定向的RelayState。标准中是否有任何部分解决了这一问题?它是否应该总是重定向到/或在不应该时忽略我的参数

<a href="https://idp.ssocircle.com/sso/idpssoinit?metaAlias=%2Fpublicidp&spEntityID=https://myServer/simplesaml/module.php/saml/sp/metadata.php/sp2&RelayState=https://myServer/SAMLHandler.php?idp=2&destination=https://myServer/SAMLHandler.php?idp=2">Log in with ssocircle</a>
然后我点击一个框,上面写着我不是机器人。他们不相信我,所以我必须挑选一些图片。然后它让我继续

https://idp.ssocircle.com/sso/idpssoinit?metaAlias=%2Fpublicidp&spEntityID=https%3A%2F%2FmyServer%2Fsimplesaml%2Fmodule.php%2Fsaml%2Fsp%2Fmetadata.php%2Fsp2&relayState=https%3A%2F%2FmyServer%2FSAMLHandler.php%3Fidp%3D2&g-recaptcha-response=03AOP2lf7g9SbzDz_d3YQ7s-RpbtUTdlIntJ8PCr-jHHK97Wmua4xHYOzk0jwRbbzbPUJnigOjEoCDib4LTcacS_0rd0rSvEve2JBZoDh5BxKHOFXae2Eht_ZYK2mOG6tS3VEwXxbM4u7Bgc3l3OY3tan2cRenS1aUcHQHggvlr32Jd5POg5a1wHm5cPx-AhdnRZZC3X-8pU1VSgjq4w1IqNBmCRCPICPOGWdnLrdab0-VOIV0NYkMFS66kUUFb69sTAASudJNZUds-6IFtmT2uqxBcMqAw25MrVUUj1q7LUl5E7t79lqW9zRhXc94TvsBJcrI1pEEWghK
最后

https://myServer/

虽然如果我在AssertionConsumerService中放入死亡调用,它确实会死亡。然后,如果我打印$\u请求,则没有RelayState。

SAML和SSOCELL IDP支持RelayState参数。它将作为POST参数与SAMLResponse消息一起发送。请确保参数的URL编码正确


更新:对于免费SSOCIRCE帐户,IDP将重定向到附加的验证码页面。在重定向过程中,服务器上的RelayState值丢失。这个问题现在已经解决了。付费订阅帐户无法观察到该行为,因为这些用户未重定向到验证码页面

urlencode进行救援;浏览器如何区分作为RelayState URL一部分的参数或作为SAML请求本身一部分的参数

,因此我将其更改为,并且看到了相同的结果,重定向到/well,spEntityID不是URL编码的,因此不清楚RelayState参数是属于URL还是属于spEntityID参数值;但默认情况下,前者将是这样;只要确保url编码完全正确,我相信它应该是分开的,这就是在原始url中的处理方式,对吗?那为什么不行呢?我已经用浏览器的URL更新了这个问题。我更改了url编码,看不出有什么不同。修复url编码和详细的流描述有助于解决这个问题。看起来参数在验证码处理中丢失了。我的测试基于一个付费订阅帐户,它跳过了无机器人拦截。不管怎样,请再试一次,它现在对我有效了。啊哈!我现在正在恢复状态!我仍然没有被重定向,但那一定是站在我这边,因为我现在真的得到了参数。我怀疑你是某种SSOCIRCE开发者……是的,它现在正在工作!非常感谢。你想添加另一个答案还是编辑这一个,这样我就可以给你打勾了?嗨@Hos,我在这里收到了同样的问题,没有付费订阅。这个问题又出现了吗?
https://idp.ssocircle.com/sso/idpssoinit?metaAlias=%2Fpublicidp&spEntityID=https%3A%2F%2FmyServer%2Fsimplesaml%2Fmodule.php%2Fsaml%2Fsp%2Fmetadata.php%2Fsp2&relayState=https%3A%2F%2FmyServer%2FSAMLHandler.php%3Fidp%3D2&g-recaptcha-response=03AOP2lf7g9SbzDz_d3YQ7s-RpbtUTdlIntJ8PCr-jHHK97Wmua4xHYOzk0jwRbbzbPUJnigOjEoCDib4LTcacS_0rd0rSvEve2JBZoDh5BxKHOFXae2Eht_ZYK2mOG6tS3VEwXxbM4u7Bgc3l3OY3tan2cRenS1aUcHQHggvlr32Jd5POg5a1wHm5cPx-AhdnRZZC3X-8pU1VSgjq4w1IqNBmCRCPICPOGWdnLrdab0-VOIV0NYkMFS66kUUFb69sTAASudJNZUds-6IFtmT2uqxBcMqAw25MrVUUj1q7LUl5E7t79lqW9zRhXc94TvsBJcrI1pEEWghK
https://myServer/