Oauth授权流程

举报
CeshirenTester 发表于 2022/06/14 22:15:19 2022/06/14
【摘要】 我们经常会使用第三方的账号来登录某个平台,比如使用QQ账号登录爱奇艺,使用微博登录自如APP。而登录的过程中,会提示自如想访问你的微博公开资料、好友信息,或者爱奇艺要访问您QQ头像、照片等资料。那么这个过程是有一个比较复杂的授权流程,在IoT云业务测试过程中,也会有这种场景的授权流程。下面我就通过图例结合业务场景和大家介绍下oauth授权流程。举栗如下图,是在使用微信登录自如APP时,自如A...

我们经常会使用第三方的账号来登录某个平台,比如使用QQ账号登录爱奇艺,使用微博登录自如APP。而登录的过程中,会提示自如想访问你的微博公开资料、好友信息,或者爱奇艺要访问您QQ头像、照片等资料。那么这个过程是有一个比较复杂的授权流程,在IoT云业务测试过程中,也会有这种场景的授权流程。下面我就通过图例结合业务场景和大家介绍下oauth授权流程。

举栗

如下图,是在使用微信登录自如APP时,自如APP要求访问用户的微信公开资料。其实就是自如想获取微信的相关接口,去访问用户的微信信息。那点击确认时这个过程,就是oauth的授权流程。有了这个概念,下面我通过一个流程图来介绍下整个流程的主要几点。

oauth授权流程

  1. 用户使用微信登录自如APP

  2. 自如APP向用户申请访问用户的个人微信资料

  3. 用户点击同意(代表用户同意自如访问他的微信信息)

  4. 用户点击同意时,自如会携带一个回调地址,去微信服务器申请获取code

  5. 微信返回一个code给自如

  6. 自如携带code和回调地址,再次想微信请求获取access_token

  7. 微信将access_token返回给自如

  8. 自如以后就会通过这个access_token,去访问用户的微信资料

划重点

  1. code是有时效性的,尽量在获取后的几分钟内去申请获取access_token

  2. access_token也是有过期时间的,而过期后就需要重新获取新的令牌

业务场景

在我们的业务中,会对接一些第三方的设备,以达到访问并控制第三方设备的能力。这个时候用户要想通过自家云去访问或者控制第三方云下面的设备,就需要在登录时,获取oauth授权。这里的自家云就相当于上面流程图中的自如,而第三方云相当于上面流程图中的微信,授权流程基本一致。

结束语:自己是在业务测试中,接触到这种场景,才逐渐的对这种授权流程熟悉。我们经常会遇到这种通过第三方登录某个网站或者APP,现在大家应该对这个授权流程有一些了解。如果想要知道更深的细节,可以去了解下oauth认证原理。

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。