简单分析第三方登录之oauth认证
关键词:oauth、第三方登录
1、是什么?
oauth认证就是一种授权认证机制。
简单分析:用户告诉系统,同意授权第三方应用(eg:本地服务器)进入系统(eg:qq/微信),获取存储在系统中的数据,系统从而产生一个短期的进入令牌(token),用来代替密码,供第三方应用使用,即获取系统数据的一种授权认证机制。
2、为什么?
使用这个认证机制可以方便某些用户省去手动注册账号的麻烦,可以直接利用用户已有的信息来自动帮助用户进行注册,为用户带来便利。
3、怎么做?
(1)基本流程:
- 请求用户授权:用户打开客户端以后,客户端要求用户给予授权;用户同意给予客户端授权。
- 获取token:客户端使用上一步获得的授权,向认证服务器申请令牌;认证服务器对客户端进行认证以后,确认无误,同意发放令牌。
- 利用token获取数据信息:客户端使用令牌,向资源服务器申请获取资源;资源服务器确认令牌无误,同意向客户端开放资源。
eg:用户授权qq登录的基本流程图:
(2)具体实现:
django中实现第三方登录:social-app-django
附注:以上内容如觉不妥,欢迎交流。