首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Nginx中通过nginx.conf文件设置Set-cookie的安全属性

如何在Nginx中通过nginx.conf文件设置Set-cookie的安全属性
EN

Stack Overflow用户
提问于 2018-02-20 16:28:12
回答 4查看 32.9K关注 0票数 9

我是Nginx服务器的新手。最近开始了nginx项目。我的任务是通过nginx.conf文件设置安全头。我正确设置了一些标头,但无法设置Set-cookie。我的要求是,在响应头设置-Cookie应该有安全和HTTPOnly属性。在nginx.conf文件中添加了下面的两个指令

代码语言:javascript
运行
复制
set_cookie_flag HttpOnly Secure;
proxy_cookie_path / "/; HTTPOnly; Secure";

尝试了每一个,也尝试了两个,但只有HttpOnly来了。请在下面查看我的conf文件片段

代码语言:javascript
运行
复制
server {
    listen       80;
    server_tokens off;
    server_name  http://{{ getenv "PROXY_URL" }};
    set_cookie_flag HttpOnly Secure;
    proxy_cookie_path / "/; HTTPOnly; Secure"; 
    include routes;     
}

请帮助我,我需要在这里添加或任何我遗漏的东西。

提前谢谢。

EN

回答 4

Stack Overflow用户

发布于 2020-08-04 15:58:56

记住还要添加SameSite=none

代码语言:javascript
运行
复制
location /foo {
    proxy_pass http://localhost:4000;
    proxy_cookie_path /foo "/; SameSite=None; HTTPOnly; Secure";
}

资料来源:

  1. https://web.dev/samesite-cookies-explained/
  2. https://stackoverflow.com/a/56514484/1561922
票数 8
EN

Stack Overflow用户

发布于 2019-02-04 17:06:07

我看过这篇文章https://geekflare.com/httponly-secure-cookie-nginx/

为了使用set_cookie_flag HttpOnly Secure;,您需要从源代码构建nginx,同时添加安全cookie附加模块--add-module=/path/to/nginx_cookie_flag_module的路径。

如果你不想从源代码构建nginx,你可以只将proxy_cookie_path / "/; HTTPOnly; Secure";添加到你的配置中。

看完这篇文章,应该就足够了。

票数 5
EN

Stack Overflow用户

发布于 2019-06-09 20:12:00

另一种选择是:

转到此目录:"/etc/nginx/conf.d".

  1. 创建一个名为ssl.conf的空文本文件(如您所见,这里有example_ssl.conf )。

  1. 在ssl.conf (或default.conf)中添加以下语法:

server { proxy_cookie_path / "/; HTTPOnly; Secure";}

请注意,整个路径"/“将被替换。例如,指令"proxy_cookie_path /two/ uri;“会将”path=/two/one/“重写为“path=/one/uri/”.

  1. 打开/etc/nginx/nginx.conf并添加以下命令:

include /etc/nginx/conf.d/ssl.conf

  1. 重新启动Nginx以查看结果。
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48880738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档