OAuth2
OAuth2是什么
目前最流行的授权协议,用来授权第三方应用,获得用户数据。
授权模式
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/4811868e36c9407ef2c3c669d864e72a.png)
OAuth2的特点
Cookie Session 和 Token的区别
- cookie不能跨域,前后端分离分布式架构实现多系统SSO非常困难
- 移动端应用没有cookie,所以对移动端支持不好
- token基于header传递,部分解决了CSRF攻击
- token要比sessionID大,客户端存储在了Local Storage中,可以直接被JS读取
基于token的分布式方案
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/8744882d9bb0ed1df590798df017096a.png)
OAuth2的使用
t31项目授权流程
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/171eb0ef97a4b36d5361a8939e0c50e9.png)