为什么 OAuth2.0 要设计 refresh token

2018-07-14 21:15:21 +08:00
 cc959798

refresh token 用来请求 access token,access token 过期时间变得非常短暂,网上的答案都是说增强了安全性,但是具体没说怎么增强,请问添加 refresh token 具体意义是什么

5189 次点击
所在节点    PHP
11 条回复
stevenhawking
2018-07-14 21:19:46 +08:00
因为短了所以安全, 添加 refresh_token 的意义就在于让他变得更安全
zwh2698
2018-07-14 21:27:29 +08:00
如果一个 token 长期有效,你怕不怕别人偷你家东西?你设置失效机制,但是你活没完,怎么办申请延期,可是如果谁都能申请延期那还有什么意义,所以需要身份证
hu5ky
2018-07-14 21:28:56 +08:00
Acebiu
2018-07-14 22:06:40 +08:00
panpanpan
2018-07-14 23:15:50 +08:00
access token 是给客户端的,有泄露的风险,refersh token 是给服务端的,不能暴露给用户。
HunterPan
2018-07-15 00:05:27 +08:00
@panpanpan 你这个说发也解决不了泄露问题的。
Lax
2018-07-15 00:17:12 +08:00
@HunterPan 把泄漏分两个阶段看

1,从 token 泄漏途径方面,确实没有减少泄漏的机会
2,当 token 已经泄漏,更短的失效时间能够减少损失。
leekafai
2018-07-15 00:24:55 +08:00
scope=时间+范围
doubleflower
2018-07-15 09:05:48 +08:00
有些服务 refresh token 也会很快过期,比如 inoreader 家的 API
cc959798
2018-07-15 09:53:39 +08:00
@zwh2698 但是 refersh token 也是存在客户端,也可以通过获得 refersh token 来再次窃取 access token
whileFalse
2018-07-15 10:11:28 +08:00
@cc959798 但是如果有需要的话,refresh_token 也可以存在服务端。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/470943

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX