2011-03-25 59 views
0

如果我重定向登录的用户到非SSL网页上我的网站:ASP.net SSL问题

Response.Redirect("http://www.mysite.com/page.aspx"); 

但母版页具有代码:

if (IsLoggedIn) 
    ForceSSL(); 

,用户重定向到:

Response.Redirect("https://www.mysite.com/page.aspx"); 

在重定向,然后第二个重定向之间,是否有从客户端传输到服务器的任何不安全的数据?

回答

5

初始请求http://www.mysite.com将发送与域关联的任何cookie,但不应该有任何,如果你做你的流量对https://www.mysite.com

(假设你的cookies设置,以确保只)

编辑:

错过了有关登录的部分...如果网站使用标准的表单身份验证,你会想在web.config中做这样的事情,它应该照顾你的(requireSSL):

<authentication mode="Forms"> 
    <forms loginUrl="Login.aspx" timeout="15" slidingExpiration="true" requireSSL="true"/> 
</authentication> 

编辑#2:

我很好奇,如果你能迫使这个在网站级别的所有Cookie(无窗体身份验证),它看起来像您可以通过添加这对配置文件:

<httpCookies domain="String" requireSSL="true" /> 
0

这取决于:) 如果假定masterpage中的代码是在Page_load中,那么没有:)您正在处理服务器端的所有内容。在请求完成之前,没有数据发送到客户端。 Response.Redirect以特别讨厌的方式终止响应(threadAbort)并启动一个新的响应。 但正如约翰所提到的,可能会发送饼干