node.js - httpOnly cookie 可见
问题描述
我正在创建基于 jwt 令牌的会话,并使用 httpOnly 参数将该令牌传递给客户端,但 cookie 在浏览器中可见这里是照片: 这是代码
const token = jwt.sign({id :payload}, process.env.SECRET, {
expiresIn: 10
})
console.log(token)
res.cookie('token', token, {
httpOnly: true
});
为什么“令牌cookie”可见的问题是什么?
解决方案
来自MDN
为了防止跨站点脚本 (XSS) 攻击,JavaScript 的 Document.cookie API 无法访问 HttpOnly cookie;它们只发送到服务器。例如,保持服务器端会话的 cookie 不需要对 JavaScript 可用,并且应该设置 HttpOnly 标志。
HttpOnly 标志不会阻止 cookie 可见,但会阻止 JavaScript 访问。Cookie 无法隐藏
推荐阅读
- php - PHP GD 在另一个形状上绘制形状并使其透明
- machine-learning - 如何使用 lightgbm 和 xgboost 框架处理投票分类器中的 'object' dtypes 变量?
- python - 比较两个配对数据列表并删除不符合标准的数据,python
- security - 证书不正确,潜在的攻击?
- cloud - 如何使用 Golang 编写机密/SGX 应用程序?
- django - django_elasticsearch_dsl_drf 在带有空格的文本字段中搜索返回 null
- php - 如何使用php在年份选项中进行选择?
- javascript - 如何从 React 中的另一个对象中查找和排列对象?
- file - 在lua中解析文件的二进制文件
- terraform - 如何使用用户提供的变量访问嵌套地图中的元素?