关于访问 HttpOnly Cookie & Secure cookie 的查询

Posted

技术标签:

【中文标题】关于访问 HttpOnly Cookie & Secure cookie 的查询【英文标题】:Query about accessing HttpOnly Cookie & Secure cookie 【发布时间】:2014-02-04 07:16:10 【问题描述】:

我正在使用 angularJS 开发 RESTful SPA 应用程序。当前,初始 REST 调用是在用户成功登录后在 xyz.com 上设置“令牌”cookie(安全响应 cookie)。当我在本地主机上工作时,我无法在 javascript/Angular 中读取此 cookie。

我在这里理解的是,除非我从 xyz.com 运行此应用程序,否则我将无法访问此 cookie 或者我需要安全连接吗?

我的理解正确吗?

其次,我对“httponly”cookie 的理解是,即使您在同一主机上,也无法从 javascript 访问它。

请纠正我的理解。

【问题讨论】:

【参考方案1】:

作为网站的作者:

您无法读取其他网站的 cookie(永远) 您无法使用 JavaScript 读取仅 HTTP 的 cookie 除非通过 HTTPS 提供,否则您无法读取安全 cookie

这是三个独立的条件,具有独立的效果,并且没有一个、部分或全部可以应用于任何给定的 cookie。

因此,如果 cookie 安全 并且 用于不同的站点,那么无论您是否使用 HTTPS,您都无法读取它(因为 不同的站点 阻止你,即使 secure 没有)。

【讨论】:

这意味着,如果我在同一个域或子域中部署应用程序,它将允许访问受保护的 cookie 对吗? ..我对你提到的第三点有点困惑。不过,我了解 httpOnly Cookie。

以上是关于关于访问 HttpOnly Cookie & Secure cookie 的查询的主要内容,如果未能解决你的问题,请参考以下文章

HttpOnly 与cookie安全

用javascript能不能提取httponly属性的cookie

将会话 cookie 设置为 HttpOnly

HttpOnly cookie 如何处理 AJAX 请求?

浅谈HTTP Cookie 的 Secure 和 HTTPONLY属性

无法访问 iframe 中加载的自己域上的 httponly 标记 cookie