【问题标题】:URL redirection from ADFS server来自 ADFS 服务器的 URL 重定向
【发布时间】:2012-05-06 16:00:06
【问题描述】:

我在我的 ASP.net Web 应用程序中使用 ADFS 进行身份验证。 STS 服务器将浏览器重定向到https://test.contoso.com。首先将客户端重定向到 STS 时,STS 不允许任何返回 URL 参数。

是否可以将浏览器从 https://test.contoso.com(从 STS 重定向后)重定向到任何其他 URL,例如 https://variableName.test1.contoso2.com

非常感谢任何帮助。

【问题讨论】:

    标签: asp.net authentication redirect wif adfs


    【解决方案1】:

    身份验证后,默认情况下 ADFS 应将用户重定向到依赖方应用程序领域。听起来这是您已经拥有的,但您希望能够重定向到不同的 RP URL。

    假设您有一个 RP,在 ADFS 中配置了领域 http://myrprealm.com。用户浏览到http://myrprealm.com/Contacts.aspx。 WIF FederatedAuthenticationModule (FAM) 发现用户未通过身份验证,因此它将相对 URL“/Contacts.aspx”保存在名为 ru 的返回 URL 参数中。此 ru 被打包在 WS-Federation Passive 上下文参数 (wctx) 中。 FAM 然后将用户重定向到 ADFS 进行身份验证。 ADFS 将保留 wctx 参数并在成功验证后将其回显到 RP (http://myrprealm.com)。现在 FAM 处理此 ADFS 响应。当 FAM 打开 wctx 时,它注意到 ru=/Contacts.aspx,所以在建立会话后,它会将用户重定向到 Contacts.aspx。

    如果您使用 SDK(visual studio > 添加 STS 引用)将 WIF 合并到您的 ASP.NET 站点中,则默认情况下您将具有此行为。

    【讨论】:

    • 好的,所以我已经将 URL_1 注册为 ADFS 中的端点 URL。但是假设用户点击 URL_2 并且 URL_2 被配置为将用户重定向到 ADFS 进行身份验证。身份验证后,ADFS 将用户重定向到 URL_1。我希望它将其重定向到 URL_2 或一般的 URL_{*},用户被重定向到 ADFS。有这方面的指针吗?
    • 您不希望 ADFS 重定向到 URL_2,您总是希望它重定向到 WIF 正在侦听的 URL_1。 WIF 将处理 URL_1 的响应,然后将用户重定向到 URL_2。请重新阅读我的回复,我已经详细说明了详细信息。
    • @AndrewLavers - 我在使用 VS2013 时遇到了同样的问题,但是我似乎没有添加 STS 参考的选项。我已将我的应用程序插入 ADFS,但是每次都会重定向到根 URL,而不是 wctx 参数中指定的 URL。我理解你上面所说的关于 FAM 处理响应的内容,但它似乎不能在本地工作。你能指出我正确的方向吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-15
    • 1970-01-01
    • 2012-08-23
    • 1970-01-01
    • 2013-08-30
    • 2011-10-07
    • 1970-01-01
    相关资源
    最近更新 更多