OAuth2.0
2019-06-05 10:20:14   185  举报             
     
         
 一张图看懂OAuth2.0
    作者其他创作
 大纲/内容
 服务提供商
    4种授权模式
  密码模式
  授权层
  角色
  A)用户访问客户端,后者将前者导向认证的服务器B)用户选择是否给予客户端授权C)假设用户给予授权,认证服务将用户导向客户端事先指定的“重定向URI”,并附上授权码D)客户端收到授权码,附上早先的“重定向URI”,向认证服务器申请令牌。这一步是在客户端的后台服务器上完成的,用户不可见。E)认证服务器核对授权码和重定向URI无误后,向客户端发送访问令牌(access Token)和更新令牌(refresh Token)
  客户端模式
  获得令牌
  4.颁发access token+refresh token
  客户端
  2.重定向到授权页面
  9.access token+refresh token
  Auth Server
  资源所有者
  使用令牌访问资源
  Auth Login
  10.令牌颁发完成
  OAuth2.0
  A)客户端向认证服务器进行身份认证,并要求一个访问令牌B)认证服务器确认无误后,向客户端提供访问令牌 
  3.用户名+密码+clientId+redirectUrl
  登陆
  8.颁发access token+refresh token
  获得授权许可
  A)用户向客户端提供用户名和密码B)客户端将用户名和密码发给认证服务器,向后者请求令牌C)认证服务器确认无误后,向客户端提供访问令牌 
  使用令牌访问资源,过期阻止
  6.发起授权码换令牌请求
  获取 令牌及刷新令牌
  5.重定向到redirectUrl+access token
  response_type:codeclient_id:redirect_uri:scope:state:
  用户代理
  时序图
  简化模式
  授权码模式
  认证服务器
  A)客户端将用户导向认证的服务器B)用户决定是否给客户端授权C)假设用户给予授权,认证服务将用户导向客户端事先指定的“重定向URI”,并在URI的Hash部分包含了访问令牌D)浏览器向资源服务器发出请求,其中不包括上一步收到的Hash值E)资源服务器返回一个网页,其中包含的代码可以获取Hash中的令牌F)浏览器执行上一步获得的脚本,提出出令牌G)浏览器将令牌发给客户端
  抽象流程图
  重获 令牌及刷新令牌
  User Agent
  5.access token+refresh token
  资源服务器
  1.访问客户端
  1.clientId+clientSecretl
  5.重定向到redirectUrl+授权码
  7.授权码+clientId+clientSecret
  Client
  4.返回授权码
  2.用户名+密码
  4.颁发access token
  思路
  用户
  3.用户名+密码+clientId+clientSecretl
  刷新Token
  2.颁发access token+refreshtoken
   
 
 
 
 
  0 条评论
 下一页