Cookie的Secure屬性和HttpOnly屬性


  基於安全的考慮,需要給cookie加上Secure和HttpOnly屬性,HttpOnly比較好理解,設置HttpOnly=true的cookie不能被js獲取到,無法用document.cookie打出cookie的內容。

Secure屬性是說如果一個cookie被設置了Secure=true,那么這個cookie只能用https協議發送給服務器,用http協議是不發送的。換句話說,cookie是在https的情況下創建的,而且他的Secure=true,那么之后你一直用https訪問其他的頁面(比如登錄之后點擊其他子頁面),cookie會被發送到服務器,你無需重新登錄就可以跳轉到其他頁面。但是如果這是你把url改成http協議訪問其他頁面,你就需要重新登錄了,因為這個cookie不能在http協議中發送。

例子是:

前提條件:https://localhost:9102應用對cookie設置了Secure=true

1. 訪問 https://localhost:9102/manager

2. 輸入用戶名、密碼,用IE或者Chrome的developer tool會看到response的header里,set-cookie的值里有Secure屬性

3. 登錄后,繼續訪問https://localhost:9102/manager#user,可以正常看到內容

4. 修改url,訪問http://localhost:9100/manager#domain,會跳轉到登錄頁面,因為cookie在http協議下不發送給服務器,服務器要求用戶重新登錄


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM