OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。
这在新浪微博第三方应用和梦宝谷游戏中都有应用。OAUTH认证有两个版本我使用的一直是07年发布的1.0的版本,认证的大体流程都一致,学会以后在不同的软件里都大同小异。10年发布了2.0的版本,据说客户端的开发更加简洁了,但是一直没有使用过。
大致步骤:
1、获取未授权的Request Token
根据从第三方获得的consumer_key,consumer_secret从Request Token URL(获取未授权的Request Token服务地址)获取OAUTH_token和OAUTH_token_secret
2、获取用户授权的request token
从User Authorization URL(获取用户授权的Request Token服务地址)获取用户授权的request token
3、用授权的request token换取Access Token
向Access Token URL(用授权的Request Token换取Access Token的服务地址)发送消息,请求Access Token,Access Token Secret。
大功告成,通过Access Token就可以调用第三方的API,访问或修改受限资源了。