gpt4 book ai didi

移动应用程序中的 HTTP 到 HTTPS 重定向使用 MVC 4 用于某些页面,如登录、注册

转载 作者:可可西里 更新时间:2023-11-01 16:43:13 25 4
gpt4 key购买 nike

在我的 MVC4 移动应用程序中,我有注册、登录页面和剩余页面。我想将用户重定向到所有敏感信息页面的 HTTPS 连接,例如注册和登录页面以及 HTTP 到重邮页面。

为此,我使用了以下代码:在 Controller 操作方法中:

if (!HttpContext.Request.IsSecureConnection)
{
var url = new UriBuilder(HttpContext.Request.Url);
url.Scheme = "https";
Response.Redirect(url.Uri.AbsoluteUri);
}

但出现此错误:

Server cannot modify cookies after HTTP headers have been sent.

最佳答案

您可以使用 Controller 上的 [RequireHttps] 属性来执行您要求的操作。但是我建议,既然您已经拥有 SSL 证书,那么只需将所有交易都设为 HTTPS。

我的建议的原因是一旦用户通过身份验证,身份验证 cookie 将随每个 HTTP 请求一起发送。如果您随后离开具有 HTTPS 要求的 Controller ,man in the middle attack是一个潜在的漏洞。任何能够嗅探用户 HTTP 流量的人都可能通过窃取 cookie 来劫持他们的 session 。

要在整个站点强制使用 HTTPS,请在 Global.asax 中将此行添加到 RegisterGlobalFilters 方法

filters.Add(new RequireHttpsAttribute());

关于移动应用程序中的 HTTP 到 HTTPS 重定向使用 MVC 4 用于某些页面,如登录、注册,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21181845/

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