您的位置 首页 php

一文搞清认证、鉴权、cookie、session、token、jwt、oauth2、sso

1.认证
早期的系统登陆一般是采用用户名和密码和形式,这就是一种认证方法,简单且有效,不过安全系数太低。

2. 鉴权
为了让不同的用户享受不同的权限,比如会员和普通用户在一个软件的功能使用上是有明显区别的,这个时候就需要鉴定用户的权限。

3.授权、凭证
用户想要用某款APP就必须给她一些权限,这就叫授权,然而授权这种行为一般在指定时间只会触发一次,因为多了,会影响用户体验度,这个时候就出现了凭证,也就是我们经常说的cookie session token jwt oauth2等,下面我们一一说明。
4. cookie
存在于客户端,用于服务器鉴别客户端身份的一种凭证,大小不超过4k,且安全性低
5.session
存在与服务器端,也是可以鉴别客户端身份的一种凭证,大小不受限制,安全性高,不过由于存在于服务器,因此容易对服务器产生压力
6.token
一般保存在localstroge中,也是服务器给客户端签发的一种凭证,相比于 session 来说可以大大节省空间,只是每次请求时都会对客户端都会携带token一起进行验证。
7.jwt
Header 、payLoad、Signature组 成。
Header:描述JWT元数据,定义了生成签名的算法以及Token类型

payLoad(有效载荷):存放实际传递的数据


Signature(签名):服务器通过Payload、Header和一个密钥(serect)使用Header里面指定的签名算法生成

可以说jwt结合上述授权凭证的所有优点并可以解决跨域问题。
8.oauth2
常用于第三方登录,用于给 第三方应用颁发一个有时效性的令牌 token,使得第三方应用能够通过该令牌获取相关的资源。

9. sso
即单点登录,说的是用户登陆多个子系统的其中一个就有权访问与其相关的其他系统。比如我的登陆了微信也可以用它来登陆 qq浏览器 腾讯视频 等。

文章来源:智云一二三科技

文章标题:一文搞清认证、鉴权、cookie、session、token、jwt、oauth2、sso

文章地址:https://www.zhihuclub.com/79972.shtml

关于作者: 智云科技

热门文章

网站地图