OAuth1.0与OAuth2.0的区别与联系
Posted 架构师之家
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OAuth1.0与OAuth2.0的区别与联系相关的知识,希望对你有一定的参考价值。
一、OAuth1.0的用户授权过程
客户端到授权服务器请求一个授权令牌(Request Token&Secret)
引导用户到授权服务器请求授权
用授权令牌到授权服务器换取访问令牌(Access Token&Secret)
用访问令牌去访问得到授权的资源
二、OAuth2.0的用户授权过程
引导用户到授权服务器,请求用户授权,用户授权后返回 授权码(Authorization Code)
客户端由授权码到授权服务器换取访问令牌(Access Token)
用访问令牌去访问得到授权的资源
注:(Client指第三方应用,Resource Owner指用户,Authorization Server是我们的授权服务器,Resource Server是API服务器。)
三、两者的比较
OAuth1.0所有的token都对应一个secret存在,需要数字前面,来确保安全性;OAuth2.0去掉了数字签名,改用SSL来保证安全性,这也导致OAuth1.0与OAuth2.0两个版本不兼容。
OAuth1.0虽然在安全性上经过修补已经没有问题了,但还存在其它的缺点,其中最主要的莫过于以下两点:其一,签名逻辑过于复杂,对开发者不够友好;其二,授权流程太过单一,除了Web应用以外,对桌面、移动应用来说不够友好;而OAuth2.0充分考虑了客户端的各种子态,因而提供了多种途径获取访问令牌,可根据客观情况选择。
参考:
1、http://blog.sina.com.cn/s/blog_617c5fce0102xmdr.html
2、https://blog.csdn.net/sonikk/article/details/9705439
以上是关于OAuth1.0与OAuth2.0的区别与联系的主要内容,如果未能解决你的问题,请参考以下文章