什么时候刷新令牌?
Posted
技术标签:
【中文标题】什么时候刷新令牌?【英文标题】:When to refresh token? 【发布时间】:2015-06-09 08:33:31 【问题描述】:我的应用程序在后台持续运行。该应用程序使用 UCWA REST api。身份验证后,我得到 OAuth 令牌和一些过期时间。 Authentication docs 说“对于经过身份验证的用户,令牌的生命周期为八 (8) 小时。客户端应用程序应监控到期时间并根据需要刷新令牌”。 那么,什么时候需要刷新令牌呢?开始刷新令牌时我应该保留什么到期时间? 1、10 或 60 分钟?什么是 OAuth 最佳做法?
【问题讨论】:
【参考方案1】:票务服务的响应将为用户提供 OAuth 令牌、令牌类型和过期值。此值以秒为单位,这意味着您可以除以分钟 (60) 或小时 (3600) 来获得一个值,您可以预期请求开始失败并出现 401 Unauthorized。当应用程序使用匿名会议加入时,监控最有用,因为令牌到期时间要短得多,大约 1 小时,而且它是唯一直接提供更新令牌的身份验证机制。
这导致了两种可能的方法:
如果使用匿名会议加入 检查身份验证响应中的过期值并启动一个小于预期值的计时器(可能少 1-3 分钟) 计时器到期时刷新 OAuth 令牌 如果不使用匿名会议加入 发送请求直到 401 发生 检查 WWW-Authenticate 的响应标头并发送另一个身份验证请求以获取新令牌 使用新令牌重新发出请求在非匿名会议加入场景中,最好等待 401 出现,然后再采取措施刷新令牌。
【讨论】:
以上是关于什么时候刷新令牌?的主要内容,如果未能解决你的问题,请参考以下文章