api 使用session替代token 的利弊在哪?

补充:几种常用的验证机制
最近写app的api,使用laravel 框架的session替代了传统的存贮到数据库的token作为校验登录用户的方法!
以下是我们目前的做法

  1. 登录后后台生产session,会往返回信息head头里写一个set_cookie

  2. ios和安卓 会从head头里得到拿到这个cookie的东西

  3. 然后再请求需要登录的地方的时候,ios和安卓会把cookie放到head头里,让框架完成自我的校验

ps:

  1. 有人说不安全

  2. 有人说不好管理

  3. 有人说性能问题

有谁具体研究过,请帮我分析分析其利弊

我个人认为的观点:

  1. 说session不安全的,感觉有点牵强,假如真的一点不安全的话,那网站也就完全被暴露了,而且laravel的session也是有自己加密的方式,不是直接暴露的!

  2. 有人说不好管理,放在redis里了,我不太知道不好管理在哪里。

  3. 性能问题,session可以存贮的位置有很多,mysql,文件,redis,我觉得性能也不是问题。我也不知其弊端在哪里,

有谁具体研究过,请帮我分析分析其利弊
也请大家有想法的各抒己见,我们一起讨论下

阅读 9.4k
评论
    12 个回答

    早些年写ASP年代,session是用的最多的验证,到了近几年做facebook、twitter等app时,第三方验证用的都是token,在跨域比较有优势
    如果都是一个系统的话,session和token应该是没啥区别的