oauth2.0认证

   OAUth的主要目的主要是为了给API授权提供一个统一的标准。优点在于不会提供用户名和密码给第三方应用。即第三方无需使用用户的用户名和密码就可以访问用户资源。

oauth2.0相对于oauth1.0来说更为安全。以新浪微博为例,oauth2.0授权流程如下:

OAUth认证一般可以抽象出三个对象,Server(service provider),client(consumer),user(resource owner)。对于新浪微博来说,微博是服务提供者,微博用户是他的服务对象,如果一个微博用户想要使用第三方应用,又不想把用户名和密码交与第三方应用。那么,就可以通过登录微博,给第三方应用授权的方式使用该应用。

定义app如何通过服务器认证这个过程就是OAUth协议的主要内容。对于新浪微博,OAUth认证的三个对象实例化为微博授权服务端,微博应用(app),微博用户。

OAUth认证定义的流程

1、当用户想使用一个应用时,appclient会向用户发起授权请求。

2、用户授权之后,appclient会得到一个授权码

3、appclient再拿着这个授权码跟授权服务器换取accesstoken.

4、appclient就可以用这个accesstoken访问微博apiserver,调用与该用户相关的接口。

从这个流程可以看到,OAUth2.0的优点:

1、OAUth不会使第三方网站触到用户的用户名和密码。

2、授权后的http通信中也不会涉及到用户的用户信息,取而代之的是数字签名和访问令牌(accestoken)。这样的话,即使截取到数据包,也无法还原出用户的数据信息。









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值