Single sign on WS-Federation(单点登录)模块-使用SSL卸载时出现重定向问题

Single sign on WS-Federation(单点登录)模块-使用SSL卸载时出现重定向问题,single-sign-on,ws-federation,Single Sign On,Ws Federation,我们有一个站点,我们正在尝试使用WS-Federation和SAML将其配置为SSO场景中的客户端 我们的站点位于一个正在进行SSL卸载的负载平衡器后面-到平衡器的连接使用https,但在http和端口81下解密并转发(内部)到实际站点 WS-federation模块试图在某处重定向我们,但正在根据端口和传入协议建立URL到网站: 我们要求: 并被重定向到: http://www.contoso.com:81/Application 这不起作用,因为负载平衡器(正确)不会在此端口上响应 这似乎

我们有一个站点,我们正在尝试使用WS-Federation和SAML将其配置为SSO场景中的客户端

我们的站点位于一个正在进行SSL卸载的负载平衡器后面-到平衡器的连接使用https,但在http和端口81下解密并转发(内部)到实际站点

WS-federation模块试图在某处重定向我们,但正在根据端口和传入协议建立URL到网站:

我们要求:

并被重定向到:

http://www.contoso.com:81/Application

这不起作用,因为负载平衡器(正确)不会在此端口上响应

这似乎与虚拟目录的大小写有关。浏览到

似乎没有问题

(注意:为了完整性,尝试浏览到没有端口的将正确地将我们重定向到SSL安全URL)


我想知道:

a) 此重定向在管道中发生的位置,以及 b) 如何将其配置为使用正确的外部地址

如果有人能为我指出正确的方向,我将不胜感激


编辑14:19:似乎是WsFederationAuthenticationModule或SessionAuthenticationModule。它们将传入url与预期url进行区分大小写的比较,并以其他方式重定向:

因此,这似乎正在发生,现在的问题是试图让网站表现良好,并重定向到正确的外部url


以下内容似乎是相关的,并最终指向默认CookieHandler中的罪魁祸首:


查看在VS中反编译的代码,它将HttpContext.Current.Request.Url与targetUrl进行比较,并将重定向到预期的“cased”版本(在本例中包括错误的端口号)。

明确设置cookie的path属性似乎可以解决此问题。空字符串或虚拟目录名称似乎有效:

    <federationConfiguration>
      <cookieHandler requireSsl="true" name="ContosoAuth"  path="/Application/"/>
      <wsFederation passiveRedirectEnabled="true" issuer="https://adfsSite" realm="https://www.contoso.com/Application/" reply="https://www.contoso.com/Application/Home" requireHttps="true"/>
    </federationConfiguration>