xrD*_*DDD 5 security cookies jwt
我没有使用cookie,而是使用JWT令牌,该令牌随每个请求一起发送.每个请求都是POST请求,因此令牌不会保存在浏览器的历史记录中.
这是一个单页面的应用程序.
令牌看起来像:
{
userId: 12345678,
expires: <UNIX timestamp>,
otherInfo: <something>
}
Run Code Online (Sandbox Code Playgroud)
一切都是SSL安全的.用户登录时,将在服务器上创建令牌.
这是替换cookie的好方法还是看到任何缺陷?
不,这不是一个好的解决方案。使用 cookie(带有httpOnly
标志)进行跨请求持久性不是可选的 - 这是安全存储会话凭据的唯一方法,这样页面上的 JavaScript 代码就无法直接访问它。
这对于防止例如。XSS 攻击中的会话窃取,通过确保脚本无法访问凭据,但它们仍然可以在对服务器的请求中使用。
您对 JWT 的使用似乎也没有真正解决问题 - 为什么您不能使用现有会话实现来使用会话 cookie?这种事情正是他们的目的。
归档时间: |
|
查看次数: |
514 次 |
最近记录: |