OAuth2.0和1.0的区别

OAuth2.0的最大改变就是不需要临时token了,直接authorize生成授权code,用code就可以换取accesstoken了,同时accesstoken加入过期,刷新机制,为了安全,要求第三方的授权接口必须是https的。OAuth2.0不能向下兼容OAuth1.0版本,OAuth2.0使用Https协议,OAuth1.0使用Http协议;

OAuth2.0去掉了签名,改用SSL确保安全性:OAuth1.0需要保证授权码和令牌token在传输的时候不被截取篡改,所以用了很多签名反复验证,但在OAuth2.0中是基于Https的。这里有个问题Https也有可能被中间人劫持;

令牌刷新:OAuth2.0的访问令牌是“短命的”,且有刷新令牌(OAuth1.0可以存储一年及以上);
-OAuth2.0所有的token不再有对应的secret存在,签名过程简洁,这也直接导致OAuth2.0不兼容老版本;

对于redirect_uri的校验,OAuth1.0中没有提到redirect_uri的校验,那么OAuth2.0中要求进行redirect_uri的校验;

授权流程区别:OAuth1.0授权流程太过单一,除了Web应用以外,对桌面、移动应用来说不够友好。而OAuth2.0提供了四种授权模式;

OAuth2.0和1.0的区别_第1张图片
OAuth2.0和1.0的区别_第2张图片

你可能感兴趣的:(java)