简体   繁体   English

SAML SSO - 如何配置动态 ACS URL(SalesForce 是 IdP)

[英]SAML SSO - How to configure a dynamic ACS URL (SalesForce is IdP)

I am the Service Provider.我是服务提供商。 Also, a shout-out to this open source C# component (AspNetSaml), they made life a bit easier: https://github.com/jitbit/AspNetSaml此外,还要感谢这个开源 C# 组件 (AspNetSaml),它们让生活变得更轻松: https ://github.com/jitbit/AspNetSaml

Anyhow, when I send a request to the IdP (in this case SalesForce), I am providing an ACS URL and I can see that it is set here in my xml:无论如何,当我向 IdP(在本例中为 SalesForce)发送请求时,我提供了一个 ACS URL,我可以看到它是在我的 xml 中设置的:

xw.WriteAttributeString("ProtocolBinding", "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST");
xw.WriteAttributeString("AssertionConsumerServiceURL", _assertionConsumerServiceUrl);

(_assertionConsumerServiceUrl is what I really want it to redirect to, and I can see that it's set) (_assertionConsumerServiceUrl 是我真正希望它重定向到的位置,我可以看到它已设置)

But what happens with Salesforce is that it always uses the ACS URL I was required to set when creating the Connected App:但是 Salesforce 的情况是,它始终使用我在创建连接的应用程序时需要设置的 ACS URL:

在此处输入图像描述

I have my real ACS URL value blanked out, but that value is what it is always re-directed to.我的真实 ACS URL 值被清空,但该值总是被重定向到。

There has to be a way.必须有办法。 Imagine if instead of setting http://www.foo.com/ , you wanted to instead redirect to: http://www.foo.com/?Some=1&Value=2&You=3&Want=4&ToAdd=5 ... and those values could be different depending on the user.想象一下,如果您不想设置http://www.foo.com/ ,而是想重定向到: http://www.foo.com/?Some=1&Value=2&You=3&Want=4&ToAdd=5 ... 以及那些值可能因用户而异。

This has to be possible!这必须是可能的! Thanks!谢谢!

I waited over a week, so as to not look like I'm answering my own questions just to build rep points.我等了一个多星期,以免看起来我在回答自己的问题只是为了建立代表点数。

Anyhow, as I discovered and confirmed here: https://salesforce.stackexchange.com/questions/210419/saml-sso-how-to-configure-a-dynamic-acs-url-salesforce-is-idp/210496无论如何,正如我在这里发现和确认的那样: https ://salesforce.stackexchange.com/questions/210419/saml-sso-how-to-configure-a-dynamic-acs-url-salesforce-is-idp/210496

The RelayState is meant to direct the user after a successful login to a specific location in the application they're logging in to. RelayState用于在成功登录后将用户定向到他们正在登录的应用程序中的特定位置。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM