基於安全的考慮,須要給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協議中發送。服務器
例子是:cookie
前提條件:https://localhost:9102應用對cookie設置了Secure=truedom
1. 訪問 https://localhost:9102/managerurl
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協議下不發送給服務器,服務器要求用戶從新登陸developer