You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django是否可以获取浏览器存储的Cookie用于身份认证?

内部站点获取组织身份认证Cookie的可行方案

前提判断

首先需要确认你开发的内部站点域名,和组织身份认证服务的域名是否属于同域/父域关系(例如你的站点是xxx.company.com,认证服务是sso.company.com,就属于同父域场景),不同场景下的实现方式不同:


同域/同父域场景

  • 如果目标Cookie没有设置HttpOnly属性:你可以直接通过前端JS调用document.cookie读取对应Cookie值,再将该值通过请求头/请求体传给你的后端即可。
  • 如果目标Cookie设置了HttpOnly属性:前端JS无法直接读取,但前端请求你的后端接口时可以自动携带该Cookie,你直接从后端接收到的请求Cookie头中提取对应值即可。

跨父域场景需要额外配置:前端发请求时开启withCredentials: true,后端响应头配置Access-Control-Allow-Credentials: true,且Access-Control-Allow-Origin不能设置为通配符*。


完全跨域场景

如果你的站点和认证服务域名完全无关联,受浏览器同源策略限制,你无法直接读取、也无法让浏览器自动携带认证服务域下的Cookie,这种场景请走以下合规方案:

  • 联系组织认证服务运维方,在用户完成认证后将你需要的凭证同步写入你站点的域下的Cookie中,你就可以按照同域场景的方式读取/携带。
  • 对接组织的服务端凭证换取接口,你的后端直接通过服务端调用的方式,用用户的基础身份信息换取你需要的服务调用凭证,不需要从浏览器侧获取Cookie。

注意事项

  • 不要尝试绕过浏览器安全限制读取跨域Cookie,所有这类方案都不符合现代浏览器的安全规范,无法稳定生效。
  • 如果你的后端要对接的服务属于组织内部信任域,也可以申请服务端之间的专属调用凭证,不需要依赖用户侧的浏览器Cookie完成调用。

内容的提问来源于stack exchange,提问作者Surya_1897

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.21 14:36:04