推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > java1234 > OAuth2.0简介-QQ第三方登录Java实现(连载)

OAuth2.0简介-QQ第三方登录Java实现(连载)

java1234 2019-02-12

QQ第三方登录演示站点:

http://www.open1111.com/


领取QQ第三方登录Java实现视频教程

http://blog.java1234.com/blog/articles/485.html


视频目录:

http://www.java1234.com/a/yuanchuang/qq/



    为了简化网站和应用的注册登录开发,第三方登录横空出世,比如QQ登录,微信登录,微博登录等等;

第三方登录也叫做第三方授权,相应的规范是OAuth 2.0;每家提供第三方登录的大型互联网公司都有具体实现,原理一致,大体过程一致,细节有差别;


 这里我们先了解下OAuth 2.0原理;

    OAuth2.0是OAuth协议的延续版本,但不向后兼容OAuth 1.0即完全废止了OAuth1.0。 OAuth 2.0关注客户端开发者的简易性。要么通过组织在资源拥有者和HTTP服务商之间的被批准的交互动作代表用户,要么允许第三方应用代表用户获得访问的权限。同时为Web应用,桌面应用和手机,和起居室设备提供专门的认证流程。2012年10月,OAuth 2.0协议正式发布为RFC 6749 [1]  。



在认证和授权的过程中涉及的三方包括:

1、服务提供方,用户使用服务提供方来存储受保护的资源,如照片,视频,联系人列表。

2、用户,存放在服务提供方的受保护的资源的拥有者。

3、客户端,要访问服务提供方资源的第三方应用,通常是网站,如提供照片打印服务的网站。在认证过程之前,客户端要向服务提供者申请客户端标识。


使用OAuth进行认证和授权的过程如下所示:

用户想操作存放在服务提供方的资源。

用户登录客户端向服务提供方请求一个临时令牌。

服务提供方验证客户端的身份后,授予一个临时令牌。

客户端获得临时令牌后,将用户引导至服务提供方的授权页面请求用户授权。在这个过程中将临时令牌和客户端的回调连接发送给服务提供方。

用户在服务提供方的网页上输入用户名和密码,然后授权该客户端访问所请求的资源。

授权成功后,服务提供方引导用户返回客户端的网页。

客户端根据临时令牌从服务提供方那里获取访问令牌。

服务提供方根据临时令牌和用户的授权情况授予客户端访问令牌。

客户端使用获取的访问令牌访问存放在服务提供方上的受保护的资源。


QQ第三方登录实现大体过程:

Step1:接入申请,获取appid和apikey;

Step2:放置QQ登录按钮;

Step3:通过用户登录验证和授权,获取Access Token;

Step4:通过Access Token获取用户的OpenID;

Step5:调用OpenAPI,来请求访问或修改用户授权的资源。


锋哥要说:大体原理了解,大体流程了解,看后面我的一顿猛操,就几步搞定,坑我都已经填平了;


   

版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《OAuth2.0简介-QQ第三方登录Java实现(连载)》的版权归原作者「java1234」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注java1234微信公众号

java1234微信公众号:gh_27ed55ecb177

java1234

手机扫描上方二维码即可关注java1234微信公众号

java1234最新文章

精品公众号随机推荐