Kit*_*tes 3 security cookies session node.js express
我习惯于单独使用 cookie。
使用 cookie,我会保存用户名和哈希值,并在每次页面加载时执行数据库查询,以确保用户拥有正确的密码。我正准备对会话做同样的事情,当我发现会话不能被用户编辑时。
理论上,我可以说:
req.session.authenticated = true
Run Code Online (Sandbox Code Playgroud)
只需测试用户是否已通过身份验证,无需重新检查密码是否正确。
这样做安全吗?或者是否有必要存储用户名和哈希?
PS 我使用 Express 4.8.6 和 express-session 1.7.6
express-session不会在 cookie 中存储任何工作数据。相反,它将 uuid 存储在 cookie 中,然后将该 uuid 与会话存储中的数据匹配(默认为内存中)。
所以如果我访问你的网站,你会给我一个包含23949324
. 您分配给我的会话的任何数据都将存储在我浏览器以外的某个地方,我的 cookie 仍然存在23949324
。Redis 是一个常见的会话存储。
你可以这样做,req.session.creditcard = "4186xxxxxxxxxxx2"
而且这在技术上是安全的,至少在 cookie 领域是这样。实际上,您可能不应该在会话存储中存储信用卡数据明文。
如果您想要持久会话,我建议您使用express-sessions。
归档时间: |
|
查看次数: |
1465 次 |
最近记录: |