Mozilla剛剛發布了一個新工具來檢查您的網站配置.observatory.mozilla.org
但掃描正在抱怨Cookies(-10分):沒有安全標志的會話cookie設定…
不幸的是,在我的nginx后面運行的服務只能在SSL直接終止時才設定安全頭,而不是在SSL終止nginx時.因此,cookie上沒有設定“安全”標志.
是否可以使用nginx以某種方式將“安全”標志附加到cookie?修改位置/路徑似乎是可能的.
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cookie_domain
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cookie_path
uj5u.com熱心網友回復:
我知道有兩種方法可以做到這一點,它們都不是很好.首先是像這樣濫用proxy_cookie_path:proxy_cookie_path / "/; secure";
第二個是使用Headers More模塊中的more_set_headers指令,如下所示:
more_set_headers 'Set-Cookie: $sent_http_set_cookie; secure';
這些都可能引入問題,因為他們盲目地添加專案.例如,如果上游設定安全標志,您將最終向客戶端發送一個副本,如下所示:
Set-Cookie: foo=bar; secure; secure;
在第二種情況下,如果上游應用程式沒有設定cookie,nginx將把它發送到瀏覽器:
Set-Cookie; secure;
當然,這是doubleplusungood.
我認為這個問題需要修復,因為很多人都會問過這個問題.在我看來,需要這樣的指令:
proxy_cookie_set_flags * HttpOnly;
proxy_cookie_set_flags authentication secure HttpOnly;
但唉,目前還不存在:(
uj5u.com熱心網友回復:
搜索到你這個帖子,現在已經有了
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cookie_flags
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/276777.html
標籤:其他技術討論專區
