仅在登录页面上设置SSL页面
本文关键字:设置 SSL 页面 登录 | 更新日期: 2023-09-27 18:00:54
我想只为登录页面设置SSL页面。我该怎么做?我指的是这篇文章:
http://weblogs.asp.net/scottgu/archive/2007/04/06/tip-trick-enabling-ssl-on-iis7-using-self-signed-certificates.aspx
但这个链接在整个网站上设置SSL是不可取的。我如何才能为登录页面或其他需要安全信息的页面启用它。我使用的是IIS 7.5,Asp.Net 4.0
一个简单的方法是在进入登录页面时检查页面是否安全,并在登录后将其重定向到非安全页面。
您可以使用以下命令检查页面是否安全
HttpContext.Current.Request.IsSecureConnection
IsSecureConnection
,实际检查url是否以https://开头
例如,如果你在登录页面、PageLoad或init上添加这个,就可以完成的工作
if(!HttpContext.Current.Request.IsSecureConnection)
{
Response.Redirect(Request.Url.Replace("http://","https://"),true);
return;
}
但当你离开登录页面时,你需要将他重定向到非安全页面。
一种更复杂但更确定的方法是使用一种代码,该代码不仅检查一个页面,而且检查所有页面都基于规则。我建议我个人使用以下代码:
http://www.codeproject.com/KB/web-security/WebPageSecurity_v2.aspx
和
http://code.google.com/p/securityswitch/
Ps SSL与非SSL页面并行运行,在不同的端口上。在哪里导航用户取决于您。因此,不存在"只有一页ssl"选项。