什么是鉴权❓
背景:http协议是一种无状态的协议, 用户在访问服务器资源上存在差异, 因此需要用户的登录鉴权。
http四种鉴权方式
1、Authentication。
用户和密码, 采用base64 加密, 安全性低, 不推荐。
2、session-cookie 机制。
服务器创建session并持久化到数据库里,浏览器创建相应的cookie,并在携带在http的请求头中。
3、Token 验证。
客户端保存token并在请求服务器时携带。
常用的JWT(Json Web Token)。
4、(单点登录)OAuth 验证。
常见的微信授权登录。
流程:
- 请求鉴权服务器, 拿到code(此code代表用户)
- code ➕ appId ➕ appSecret 再请求鉴权服务器拿到一个Access Token
- Token 解密用户信息
5、全息生物验证。
OAuth 2.0 的四种方式
1、授权码
2、隐藏式
3、密码式
4、凭证式
Oauth2 授权机制
参考:
前端鉴权的兄弟们:cookie、session、token、jwt、单点登录
微信-鉴权必须了解的5个兄弟:cookie、session、token、jwt、单点登录
公众号-关于鉴权(微医)