码迷,mamicode.com
首页 > 其他好文 > 详细

5分钟搞懂:基于token的用户认证

时间:2019-02-02 11:13:59      阅读:273      评论:0      收藏:0      [点我收藏+]

标签:有效期   账号   别人   酒店   服务端   情况   依赖   环境   通过   

用户认证

用户认证或者说用户登录是确认某人确实是某人的过程,生活中靠身份证,网络上就要靠账号和密码。用户提供账号和密码,网站通过与数据库中保存的账号与密码比对确认用户身份。

基于token的用户认证

基于token的用户认证原理很简单。让用户输入账号和密码,然后获得一个token(令牌),该token允许用户在不使用账号和密码的情况下访问特定的资源。一旦获得token,用户就获得了在一段时间内对特定资源的访问权限。

技术图片

这个过程类似酒店开房,在酒店前台认证身份、登记入住,这个步骤相当于网站的登录,然后酒店前台会给你一张房卡/钥匙,这个就相当于获得了一个token,然后拿着这个房卡/钥匙就可以打开特定房间,相当于带着token可以访问某个页面,这个房卡是有有效期的,同样token也是有有效期的。

有了token,访问特定页面,用户就不需要每次都输入账号和密码登录。

当然如果token泄漏了,别人也可拿着这个token冒名顶替,这个和密码泄漏的效果是一样的。

与session认证的区别

本质上来说,token与session认证的过程是相似的。区别之处在于,token认证过程没有依赖session/cookie机制,相反session认证过程必须要在有session/cookie支持的环境下使用,有些移动端的app是不支持cookie的。

优点

优点有很多——例如,服务端无状态有利于做集群等,token已经是互联网项目中用户认证的主流方式。

5分钟搞懂:基于token的用户认证

标签:有效期   账号   别人   酒店   服务端   情况   依赖   环境   通过   

原文地址:https://www.cnblogs.com/jinbuqi/p/10347800.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!