Set-Cookie生成器

在线 Set-Cookie 头生成器,设置 Cookie 名称值、过期、Path、Domain、Secure、HttpOnly、SameSite,生成规范的 Set-Cookie 响应头。


工具介绍

Set-Cookie生成器是用于生成HTTP响应中Set-Cookie头字符串的工具,可帮助开发者快速配置Cookie各项属性,包括过期时间、访问范围、安全属性等。

使用方法

  1. 在「Cookie名称」输入框中填写要创建的Cookie名称;
  2. 在「Cookie值」输入框中填写要存储的Cookie数据;
  3. 根据需要填写可选属性:
    • 过期时间:填写Cookie存活的秒数,留空则为会话Cookie,关闭浏览器后过期;
    • Path:指定Cookie生效的路径,一般填写/表示全站生效;
    • Domain:指定Cookie生效的域名,填写后主域名和子域名都可以访问该Cookie;
    • SameSite:选择跨站请求策略,推荐默认选择Lax;
    • 勾选Secure表示仅HTTPS下携带,勾选HttpOnly表示禁止JS读取;
  4. 点击「生成Set-Cookie」即可得到完整的Set-Cookie字符串,同时会显示各属性的安全说明;
  5. 点击「复制结果」可以将生成的字符串复制到剪贴板。

属性安全说明

属性安全意义
Secure开启后仅HTTPS连接携带Cookie,防止HTTP传输过程中被中间人窃听窃取,敏感Cookie建议开启。
HttpOnly开启后禁止JavaScript读取Cookie,有效防止XSS攻击窃取用户会话信息,会话类Cookie建议开启。
SameSite限制跨站请求携带Cookie,有效防止CSRF攻击。Strict最严格但影响用户体验,Lax兼顾安全和体验,None不限制。
Domain/Path合理限制可以缩小Cookie的使用范围,避免不必要的请求携带,降低泄露风险。

敏感Cookie(如用户会话ID)建议开启HttpOnly、Secure,设置合理的过期时间,并选择SameSite为Lax或Strict,降低安全风险。

注意事项

什么是Set-Cookie?它的作用是什么?

Set-Cookie是HTTP响应头,由服务器发送给浏览器,通知浏览器保存指定的Cookie数据。之后浏览器会在后续同域名/路径的请求中通过Cookie请求头携带该数据,用于维持用户会话、记住用户偏好等功能。

HttpOnly属性有什么作用?为什么建议开启?

HttpOnly属性禁止JavaScript通过document.cookieAPI读取该Cookie。开启后可以有效防止跨站脚本攻击(XSS)窃取用户的Cookie信息,保护用户会话安全,因此对于存储用户会话ID等敏感信息的Cookie,建议开启HttpOnly。

SameSite属性的三个值有什么区别?应该怎么选?

Strict:只有完全同一站点的请求才会携带Cookie,安全级别最高,但用户从外部链接点击进入网站时,Cookie不会携带,可能导致登录失效等问题;Lax:同一站点请求携带Cookie,跨站点的GET导航请求(如点击链接)也会携带,兼顾安全和用户体验,是大多数场景下的推荐选择;None:不对跨站点请求做限制,任何站点请求都会携带Cookie,安全级别最低,必须配合Secure属性使用。

为什么SameSite=None需要同时开启Secure?

根据现代浏览器的安全规范,SameSite=None表示允许跨站请求携带Cookie,为了防止不安全的HTTP连接泄露Cookie,浏览器要求当SameSite设置为None时,必须同时开启Secure属性(仅HTTPS下携带),否则浏览器会拒绝接受该Cookie。