OAuth2.0认证原理

OAuth2.0认证原理

一.OAuth是什么?

    OAuth的英文全称是Open Authorization,它是一种开放授权协议。OAuth目前共有2个版本,2007年12月的1.0版(之后有一个修正版1.0a)和2010年4月的2.0版,1.0版本存在严重安全漏洞,而2.0版解决了该问题,下面简单谈一下我对OAuth2.0的理解。

二.OAuth2.0有什么用?

     引用一下OAuth2.0中文文档中的介绍:

        1.需要第三方应用存储资源所有者的凭据,以供将来使用,通常是明文密码。

        2.需要服务器支持密码身份认证,尽管密码认证天生就有安全缺陷。

        3.第三方应用获得的资源所有者的受保护资源的访问权限过于宽泛,从而导致资源所有者失去对资源使用时限或使用范围的控制。

        4.资源所有者不能仅撤销某个第三方的访问权限而不影响其它,并且,资源所有者只有通过改变第三方的密码,才能单独撤销这第三方的访问权限。

        5.与任何第三方应用的让步导致对终端用户的密码及该密码所保护的所有数据的让步。

    简单概括,就是用于第三方在用户授权下调取平台对外开放接口获取用户相关信息。

     OAuth引入了一个授权环节来解决上述问题。第三方应用请求访问受保护资源时,资源服务器在获准资源用户授权后,会向第三方应用颁发一个访问令牌(AccessToken)。该访问令牌包含资源用户的授权访问范围、授权有效期等关键属性。第三方应用在后续资源访问过程中需要一直持有该令牌,直到用户主动结束该次授权或者令牌自动过期。

三.OAuth2.0有哪几种授权模式?

授权码模式(Authorization Code)(正统方式)(支持refresh token)
授权码简化模式(Implicit)(为web浏览器设计)(不支持refresh token)
Pwd模式(Resource Owner Password Credentials) (基本不用)(支持refresh token)
Client模式(Client Credentials) (为后台api调用设计)(不支持refresh token)
扩展模式(Extension)(
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值