近几天准备写第三方登陆,从原理学起
1.什么是OAuth
中文:开放式授权
英文全称:open oauthorization
OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。
读什么不重要了,,,
2.OAuth有什么用
用于登陆授权的认证标准
3.OAuth工作过程
主要的三个步骤:
(1)请求oauth登陆页面
说明:OAuth提供方事先分配给使用方一个appid和appkey,然后使用方用包含这个appid和回调地址的URL来向提供方请求登录页面
Request Token URL——未授权的令牌请求服务地址
(2)用户输入用户名和密码
这个是在oauth请求登陆页面上进行的,腾讯负责认证;所以客户端即慕课网(叫用户代理更好点)并不知道用户名和密码,比较安全
(3)返回登陆结果(两步认证)
1.当用户通过OAuth提供方的验证后,页面跳转到回调地址,并附加一个参数code,code在下一步中将会用到;
2.OAuth使用方将code、appid和appkey一起传给提供方,做最后一次验证。提供方将会返回用户的部分信息
User Token URL——用户授权的令牌请求服务地址
AccessToken:用户通过第三方应用访问OAuth接口的令牌,生命周期很短,
一个开发大牛的博客:http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html
值得关注: 阮一峰