Cookie 的 Domain 设置到底该怎么配才安全?

溢洋 阅读 11

我在做登录功能时设置了 Cookie,但对 Domain 属性有点拿不准。比如我的前端是 app.example.com,后端 API 是 api.example.com,想让 Cookie 能在两个子域共享,就写了 Domain=.example.com

但同事说这样有安全风险,可能被其他子域读到?可我不设 Domain 的话,Cookie 又只在 app.example.com 生效,API 请求带不上凭证。到底该怎么配才既安全又能跨子域?

我试过只设 Path,也试过不设 Domain,但跨子域请求时后端根本收不到 Cookie。现在卡在这儿了,求指点!

我来解答 赞 5 收藏
二维码
手机扫码查看
1 条解答
迷人的焕玲
把 Domain 设成 .example.com 没毛病,但记得加个 Secure 和 HttpOnly 属性。另外在 Set-Cookie 时加上 SameSite=Strict 或 Lax,这样能防跨站请求伪造。试试看这样配:

Set-Cookie: sessionId=abc123; Domain=.example.com; Path=/; Secure; HttpOnly; SameSite=Lax


别忘了后端也要校验来源域名,多重保险总没错。干了这么多年,这种配置见多了,放心用吧。
点赞
2026-03-26 20:01