OAuth2有了token为啥还要refresh token

OAuth2是一种授权框架,允许第三方应用在用户授权下访问受保护资源,无需知道用户凭证。该过程涉及资源持有者、客户端、授权服务器和资源服务器。accesstoken用于访问资源,而refreshtoken则用于更新过期的accesstoken,避免重复用户授权。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、OAuth2

  1. OAuth2简介

  1. OAuth2是一种授权框架,用于允许第三方应用程序(客户端)在不知道用户的凭证(例如用户名密码)的情况下,访问受保护的资源(比如用户的个人信息,通讯录等)。

  1. OAuth2协议包含的角色

  1. 资源持有者:拥有受保护资源的用户

  1. 客户端:请求访问受保护资源的应用程序

  1. 授权服务器:验证资源持有这会儿、授予客户端访问令牌的服务器

  1. 资源服务器:存储收保护资源的服务器,只允许访问令牌来保护资源

  1. OAuth协议通常包括以下步骤,如下图OAuth2协议流程图所示:

  1. 请求获取访问令牌

  1. 客户端发出授权请求

  1. 授权服务区向资源服务器发出授权请求

  1. 资源服务器同意授权

  1. 授权服务器颁发令牌给客户端

  1. 根据访问令牌访问受保护资源

  1. 客户端使用访问令牌向资源服务器发起 访问(受保护资源)

  1. 资源服务器验证令牌并返回受保护资源

  1. 用户授权的含义是?

  1. 用户授权就是指用户允许一个应用程序或服务访问其受保护的资源(例如个人信息、通讯录等)的过程

  1. 在OAuth2授权框架中,access token 、refresh token授权认证的令牌,但他们的作用是不同的。

二、access token

access token 就是普通理解的token,用于唯一身份的标识,每次在请求后端,访问受保护的资源时,比如用户的个人信息,通讯录等,需要通过access token令牌来 访问受保护的资源。

三、refresh token

refres token是用于更新access token的令牌,因为access token 的过期时间较短,当access token 过期时,客户端需要通过refresh token 获取欣的access token。这样做的好处是避免了再次请求用户授权。

四、举例说明

access token 就像一把钥匙,想进门,就需要这把钥匙。而refresh token 就像一个钥匙管家,如果想要换开门的钥匙,就可以直接通过refresh token 换一个access token。这样一来,在access token失效时,不需要去找主人重新确认一遍主人就是这个房子的主人,才给配一把新的access token钥匙。而是直接找管家 refresh token,换一把accesstoken就好了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值