準備我的 ASP.NET / MVC 站點以使用 SSL?
我正準備
SSL cert在我的主機上安裝一個。我的理解是(如果我錯了,請糾正我..….):
- 託管人員安裝證書後,我將能夠在
Http或上瀏覽我的網站Https(沒有什麼可以阻止我繼續使用 Http)?- 我唯一需要做的就是添加邏輯(在 MVC 的情況下,控制器屬性/過濾器)以強制我選擇的某些頁面重定向到
Https(例如,[RequiresHttps]謹慎添加屬性)。我是否必須擔心對這些東西做任何額外的事情以確保我
SSL正確使用?我不確定是否需要更改與邏輯有關的內容:
- 餅乾
- 貝寶快遞集成
此外,我計劃
[RequiresHttps]僅在購物車、結帳、登錄、帳戶和管理頁面上添加。我希望保留我的產品瀏覽/購物頁面,Http因為我聽說使用Https. 這是正常的/可以接受的/可以嗎?還有一個問題……我知道 ASP.NET 以 Auth cookie 的形式儲存了一些登錄資訊。使用者在一個
Https頁面內登錄是可以的,但隨後可以返回並在一個Http頁面中瀏覽?我想知道這是否會造成安全漏洞,因為使用者已登錄並Http再次瀏覽。這會破壞使用的意義SSL嗎?我在這方面有點新手……所以我們將不勝感激。
從你的問題開始,一,(1)是的,沒有什麼會阻止你在相同的頁面上使用 http ether https。
(2) 是的,您需要在僅顯示為 https 的頁面和顯示為 http 的頁面上添加邏輯。如果有人想知道,為什麼不全部顯示為 https 原因是速度,當您將它們作為 https 發送時,頁面更大並且編碼/解碼需要更多一點,所以如果您不需要 https,只需切換它到http。
在 HTTP 和 HTTPS 之間自動切換是一個非常好的程式碼,用於快速輕鬆地實現切換邏輯。
餅乾
當 cookie 與使用者的憑據有關時,您需要強制它僅與安全頁面一起傳輸。這意味著,如果您使用 https 設置 cookie,則此 cookie 不會在非安全頁面上傳輸,因此保持安全,中間人無法竊取它。這裡的提示是這個 cookie 不能在 http 頁面上讀取 - 所以你可以知道使用者是 A,或者 B 只能在安全頁面上。
購物車 - 產品
是的,這是正常的:因為資訊不那麼特別,所以將產品和購物車置於不安全的連接上。當您使用使用者真實數據(例如姓名、電子郵件、地址等)時,您會啟動 https 頁面。
授權 cookie
如果您將其設置為僅安全,則此 cookie 不會顯示/讀取/存在於不安全的頁面上。如果您不使其安全,這是一個問題。
Response.Cookies[s].Secure = true;再說幾句
我們對安全和非安全頁面所做的是,我們實際上將使用者數據分成兩部分。一種是安全的,一種是不安全的。所以我們實際上使用了兩種 cookie,一種是安全的,一種是不安全的。
不安全的cookie例如是連接購物車上所有產品的cookie,或者可能是使用者的歷史記錄(產品看到了什麼)這也是我們實際上並不關心是否有人得到它,因為即使是代理也可以看到從 url 使用者歷史記錄或使用者看到的內容。
安全 cookie 是身份驗證,為使用者保留一些關鍵資訊。因此,非安全 cookie 在頁面上隨處可見,安全僅在結帳、登錄等時使用。
有關的