0

登录后服务端会返回一个Accesstoken和 refreshToken,,,accesstoken的有效期为两个小时,,refreshtoken的有效期为两个月。
在accesstoken过期之后需要携带accesstoken去请求刷新接口获取新的accesstoken 避免了重复登录。

不过现在都问题就是 refreshtoken要是泄露了咋办,,别人拿到这个直接利用refreshtoken就得到了accesstoken 各位都用什么办法解决?

Loveyou 26
2019-04-18 提问
3 个回答
1

已采纳

如果要做到很高的安全,你可以使用RSA加密

  1. 服务端给每一个oauth授权应用颁发公钥,服务端留私钥。
  2. 客户端使用公钥加密后的refreshtoken请求刷新access_token
  3. 使用access_token进行请求

但是你这么说,又会有公钥泄露的问题。(公钥好像不怕泄露,本来就是公有的?)
总而言之呢,绝对的安全是不存在的。

1

refreshtoken也有过期时间,只不过是相对accesstoken时间长点而已。

你考虑泄露refreshtoken的话,那accesstoken也有泄露的可能,至少在有效期内可以使用accesstoken请求接口了

0

token信息放在node层

撰写答案

推广链接