Session登陆和token登陆的区别
【Session登陆和token登陆的区别】现在貌似大多数网站用户认证都是基于 session 的,(我们公司的网页登陆就是使用的把session),即在服务端生成用户相关的 session 数据,而发给客户端的 sesssion_id 存放到 cookie 中,这样用客户端请求时带上 session_id 就可以验证服务器端是否存在 session 数据,以此完成用户认证。这种认证方式,可以更好的在服务端对会话进行控制,安全性比较高(session_id 随机),但是服务端需要存储 session 数据(如内存或数据库),这样无疑增加维护成本和减弱可扩展性(多台服务器)。 CSRF 攻击一般基于 cookie 。另外,如果是原生 app 使用这种服务接口,又因为没有浏览器 cookie 功能,所以接入会相对麻烦。
——CSRF攻击(比如,用户登陆了网页QQ A,此时用户浏览器端存了一个cookie,网页QQ未下线,然后与此同时登陆了一个钓鱼网站B, B会发出一个Request请求给用户浏览器端,用户浏览器不知道是A发出的请求还是B发出的请求,从而B能达到模拟A的权限。)
文章图片
——CSRF防御
- 通过referer、token或者验证码来检测用户提交
- 尽量不要在页面的链接中暴露用户隐私信息
- 对于用户增删改查操作都用post请求
- 避免全站通用的cookie,严格设置cookie的域
转载于:https://www.cnblogs.com/southbean/articles/8555646.html
推荐阅读
- 急于表达——往往欲速则不达
- 第三节|第三节 快乐和幸福(12)
- 20170612时间和注意力开销记录
- 2.6|2.6 Photoshop操作步骤的撤消和重做 [Ps教程]
- 对称加密和非对称加密的区别
- 眼光要放高远
- 樱花雨
- 前任
- 2020-04-07vue中Axios的封装和API接口的管理
- 烦恼和幸福