OAuth2.0 - 访问令牌

访问令牌(Access Token)

访问令牌是用于访问受保护资源的凭据。一个访问令牌是代表颁发给授权的字符串的客户端。该字符串通常对客户端不透明。令牌代表特定的访问范围和持续时间,由资源所有者授予,并由资源服务器和授权服务器强制执行。

我们可能通过前面的四种模式来获取令牌。

如果访问令牌请求是有效的且被授权,颁发访问令牌以及可选的刷新令牌。

响应参数说明:

参数参数说明是否必填备注
access_token授权leix必填
token_type令牌类型必填该值大小写不敏感
expires_in过期时间,单位为秒。推荐的以秒为单位的访问令牌生命周期,如果省略,则授权服务器应该通过其他方式提供过期时间,或者记录默认值。
refresh_token刷新令牌可选
scope权限范围可选若与客户端请求的范围相同;否则,必需的。

成功响应示例:

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Cache-Control: no-store
Pragma: no-cache
{"access_token":"2YotnFZFEjr1zCsicMWpAA","token_type":"example","expires_in":3600,"refresh_token":"tGzv3JOkF0XG5Qx2TlKWIA","example_parameter":"example_value"
} 

客户端必须忽略响应中不能识别的值的名称。令牌和从授权服务器接收到的值的大小未定义。客户端应该避免对值的大小做假设。授权服务器应记录其发放的任何值的大小。

如果请求因客户端身份验证失败或无效。返回错误响应

授权服务器使用HTTP 400(错误请求)状态码响应,在响应中包含下列参数:

参数参数说明是否必填备注
error错误必填
error_description错误描述可选用于协助客户端开发人员理解所发生的错误。
error_uri错误的url可选的用于提供客户端开发人员关于该错误的额外信息。

常见error:

错误错误说明
invalid_request请求缺少必需的参数、包含不支持的参数值(除了许可类型)、重复参数、包含多个凭据、采用超过一种客户端身份验证机制或其他不规范的格式。
invalid_client客户端身份验证失败(例如,未知的客户端,不包含客户端身份验证,或不支持的身份验证方法)。授权服务器可以返回HTTP 401(未授权)状态码来指出支持的HTTP身份验证方案。如果客户端试图通过Authorization请求标头域进行身份验证,授权服务器必须响应HTTP 401(未授权)状态码,并包含与客户端使用的身份验证方案匹配的WWW-Authenticate响应标头字段。
invalid_grant提供的授权许可(如授权码、资源所有者凭据)或刷新令牌无效、过期、吊销、与在授权请求使用的重定向URI不匹配或颁发给另一个客户端。
unauthorized_client进行身份验证的客户端没有被授权使用这种授权许可类型。
unsupported_grant_type授权许可类型不被授权服务器支持。
invalid_scope请求的范围无效、未知的、格式不正确或超出资源所有者许可的范围。

错误响应示例:

HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Cache-Control: no-store
Pragma: no-cache
{"error":"invalid_request"
} 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值