2011-03-25 56 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)並啓動一個新的響應。 但正如約翰所提到的,可能會發送餅乾