我想仅为登录页面设置 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
The IsSecureConnection
,实际检查 url 是否以以下开头https://
例如,如果您将其添加到登录页面,则可以在页面加载或 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
and
http://code.google.com/p/securityswitch/
PS SSL 与非 ssl 页面在不同端口上并行运行。由您决定将用户导航到何处。所以不存在“只有一页 ssl”选项。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)