gpt4 book ai didi

asp.net-mvc-3 - 如何修复来自 Shibboleth 的 SAML SSO 后的浏览器后退按钮问题

转载 作者:行者123 更新时间:2023-12-05 08:01:51 25 4
gpt4 key购买 nike

在 .NET MVC (3) 上构建 SAML2 服务提供商 Web 应用程序。我们正在使用 ComponentSpace 的 SAML2 库进行身份验证,不是Shibboleth SP。这是相关的 Controller 逻辑:

public class SignOnController : Controller
{
// constructor-inject _services

[HttpPost]
public ActionResult SendAuthnRequest(string userName, string returnUrl)
{
// this users ComponentSpace internally to push user to IdP
_services.SamlServiceProvider.SendAuthnRequest(args);
return new EmptyResult();
}

[HttpPost]
public ActionResult ReceiveAuthnResponse()
{
var samlResponse = _services.SamleServiceProvider
.ReceiveSamlResponse(args);
// ...
return Redirect(samlResponse.RelayResourceUrl ?? defaultUrl);
}
}

最终用户登陆中继 url 或默认登录页面。但是,当他们单击链接,然后单击后退按钮时,浏览器将返回到 Shibboleth IdP 服务器上的错误页面。之后,浏览器的前进和后退按钮最终变得毫无用处。

我是不是在上述两种方法中做错了什么?发送时我应该返回 View() 而不是 EmptyResult() 吗?有什么方法可以重置浏览器历史记录以防止重复回发到 IdP?这是我可以在 ComponentSpace 的实现中配置的东西吗?

最佳答案

据我所知,您在 IdP i WBSSO SAML2 配置文件中进行身份验证时点击了返回按钮?我不知道您列举的组件,但在 Shibboleth 情况下,它总是以错误页面结尾。我可能是错的,但如果你考虑 SP->IdP 通信的性质,我相信没有其他选择,除非你重新实现一些东西。

关于asp.net-mvc-3 - 如何修复来自 Shibboleth 的 SAML SSO 后的浏览器后退按钮问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11548668/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com