1、简单熟悉Oauth2规范(rfc6749)

Oauth2的作用就是让第三方应用在资源持有者授权的情况下,通过认证服务器的认证,从而安全的在资源服务器上获得对应的资源。

 1、角色

在oauth规范中大致分为四个角色:

  • 资源所有者(resource owner)
  • 资源服务(resource server)
  • 客户端(client)
  • 认证服务(authorization server)

资源所有者提供资源,并通过授权允许客户端去访问资源。客户端得到授权后去认证服务认证并得到一个访问令牌,之后客户端就可以使用访问令牌去请求资源服务,获取想要的资源。

2、协议流程

 3、授权类型

授权许可的类型分为4种:授权码授权、隐式授权、密码凭证授权、客户凭证授权。

  • 授权码:使用一个code作为资源所有者和客户端的授权媒介,作为客户端能够通过认证服务的凭证。这样做就可以在认证过程中解耦资源所有者,想要通过认证,并不需要再次与资源所有者交流,降低了资源所有者信息暴露的风险。这是推荐的并且普遍使用的授权类型。
  • 隐式授权:通过url去识别客户端,没有授权码之类的媒介,减少了客户与资源所有者交流的过程,能够直接的获取访问令牌。由于访问令牌在url片段中传输,有安全风险,这可能会将其公开给未授权方。
  • 密码访问:使用资源所有者的密码凭证去认证,能够获得一个长期有效的令牌。风险系数高,访问权限不可控(权限同资源所有者)。这种方式只适用于高度信赖的客户端上。
  • 客户凭证授权:通常在客户端代表自己行事(客户端也是资源所有者)对受保护资源的访问时使用。

4、访问令牌

访问令牌是请求受保护资源的凭证,通常以字符串形式返回给用户。访问令牌有scope限制,以及过期时间。他替代了用户名密码形式的校验,减少了敏感信息暴露风险。

5、刷新令牌

刷新令牌是用于访问令牌无效或过期时,向认证服务请求新的访问令牌的凭证。它通常和访问令牌一起返回给客户端,但至只用于和认证服务换取访问令牌,不会被发送给资源服务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值