簡體   English   中英

在服務器端的cookie上設置HttpOnly是否會影響在瀏覽器中創建的cookie?

[英]Does setting HttpOnly on cookies on the server side affect cookies created in the browser?

我正在管理服務器,一直在考慮為Cookie設置HttpOnly。

雖然我在服務器端和客戶端都沒有與之交互的cookie,但是是否為所有cookie啟用此選項會阻止客戶端生成的cookie在后續頁面加載時被訪問?

為了澄清,這將被設置為服務器選項。 我正在使用Apache,因此類似於: Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure在Apache配置中Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure

此外,問題是基於使用cookie進行數據存儲。 LocalStorage不在問題的上下文范圍內,即使它是存儲純粹在客戶端使用的數據的高級方法。

為所有cookie啟用此選項是否會阻止客戶端生成的cookie在后續頁面加載時被訪問?

是。 JS無法訪問服務器響應使用HttpOnly標記的cookie的值,也無法向其中寫入新值。

但是,我還沒有發現當JS嘗試寫一個消息時到底發生了什么,瀏覽器似乎用本地存儲的,只能由客戶端腳本訪問的一個消息遮蓋了HTTP發送的消息。 雖然我不會依賴此行為,但是寫入可能會被忽略。 在較舊的瀏覽器中,似乎存在一些僅HTTP cookie被寫入的錯誤。

但是,無法為所有 cookie啟用HttpOnly 您必須分別在每個交換的cookie上設置它,因此僅對服務器確實通過該標志發送給客戶端的cookie啟用此選項。

因此,如果將Apache配置為在所有傳出的Cookie上啟用該標志,則仍然取決於服務器應用程序是否鏡像客戶端發送的所有Cookie。 通常不會,並且僅發送它確實要設置的cookie(就其本身而言,將在服務器上使用)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM