OAuth2.0是OAuth协议的延续版本,但不向前兼容OAuth 1.0(即完全废止了OAuth1.0)。 OAuth 2.0关注客户端开发者的简易性。要么通过组织在资源拥有者和HTTP服务商之间的被批准的交互动作代表用户,要么允许第三方应用代表用户获得访问的权限。同时为Web应用,桌面应用和手机,和起居室设备提供专门的认证流程

 

OAuth2.0它只是一个提供认证流程的标准方案, 它的请求路径和参数都是统一的标准。

认证流程图如下:

OAuth2.0 个人理解

 

1)资源拥有者打开客户端,客户端要求资源拥有者给予授权,它将浏览器被重定向到授权服务器,重定向时会
附加客户端的身份信息。如:
/uaa/oauth/authorize?client_id=c1&response_type=code&scope=all&redirect_uri=http://www.baidu.com
参数列表如下:
client_id:客户端准入标识。
response_type:授权码模式固定为code
scope:客户端权限。
redirect_uri:跳转uri,当授权码申请成功后会跳转到此地址,并在后边带上code参数(授权码)。
2)浏览器出现向授权服务器授权页面,之后将用户同意授权。
3)授权服务器将授权码(AuthorizationCode)转经浏览器发送给client(通过redirect_uri)
4)客户端拿着授权码向授权服务器索要访问access_token,请求如下:
/uaa/oauth/token?
client_id=c1&client_secret=secret&grant_type=authorization_code&code=5PgfcD&redirect_uri=http://w
ww.baidu.com
参数列表如下
client_id:客户端准入标识。
client_secret:客户端秘钥。
grant_type:授权类型,填写authorization_code,表示授权码模式
code:授权码,就是刚刚获取的授权码,注意:授权码只使用一次就无效了,需要重新申请。
redirect_uri:申请授权码时的跳转url,一定和申请授权码时用的redirect_uri一致。
5)授权服务器返回令牌(access_token)
这种模式是四种模式中最安全的一种模式。一般用于clientWeb服务器端应用或第三方的原生App调用资源服务
的时候。因为在这种模式中access_token不会经过浏览器或移动端的App,而是直接从服务端去交换,这样就最大
限度的减小了令牌泄漏的风险。
(6)验证 token 有效性路径 ../oauth/check_token
 
OAuth2.0 个人理解

相关文章:

  • 2022-02-13
  • 2022-01-03
  • 2022-12-23
  • 2021-08-22
  • 2021-08-27
  • 2021-04-15
  • 2021-11-12
  • 2021-05-26
猜你喜欢
  • 2021-06-14
  • 2021-08-19
  • 2021-08-30
  • 2022-01-04
  • 2022-12-23
  • 2021-10-13
相关资源
相似解决方案