什么时候刷新令牌?
When to refresh token?
我有一个应用程序在后台持续 运行。该应用程序使用 UCWA REST api。身份验证后,我得到 OAuth 令牌和一些过期时间。 Authentication docs 说 "The lifetime of a token is eight (8) hours for authenticated users. The client application should monitor the expiration time and refresh the token as required"。
那么,什么时候需要刷新token呢?开始刷新token时应该预留多少过期时间? 1、10 或 60 分钟?什么是 OAuth 最佳实践?
票务服务的响应将为用户提供 OAuth 令牌、令牌类型和过期值。此值以秒为单位,这意味着您可以除以分钟 (60) 或小时 (3600) 以获得您可以预期请求开始失败并返回 401 Unauthorized 的值。当应用程序使用匿名会议加入时,监视最有用,因为令牌到期时间短得多,大约 1 小时,并且它是直接提供更新令牌的唯一身份验证机制。
这导致两种可能的方法:
- 如果使用匿名会议加入
- 检查在身份验证响应中找到的过期值并启动一个小于预期值的计时器(可能少 1-3 分钟)
- 计时器到期时刷新 OAuth 令牌
- 如果不使用匿名会议加入
- 发送请求直到出现 401
- 检查 headers 对 WWW-Authenticate 的响应并发送另一个身份验证请求以获取新令牌
- Re-issue 使用新令牌的请求
在 non-anonymous 会议加入场景中,最好等待 401 出现后再采取行动刷新令牌。
我有一个应用程序在后台持续 运行。该应用程序使用 UCWA REST api。身份验证后,我得到 OAuth 令牌和一些过期时间。 Authentication docs 说 "The lifetime of a token is eight (8) hours for authenticated users. The client application should monitor the expiration time and refresh the token as required"。 那么,什么时候需要刷新token呢?开始刷新token时应该预留多少过期时间? 1、10 或 60 分钟?什么是 OAuth 最佳实践?
票务服务的响应将为用户提供 OAuth 令牌、令牌类型和过期值。此值以秒为单位,这意味着您可以除以分钟 (60) 或小时 (3600) 以获得您可以预期请求开始失败并返回 401 Unauthorized 的值。当应用程序使用匿名会议加入时,监视最有用,因为令牌到期时间短得多,大约 1 小时,并且它是直接提供更新令牌的唯一身份验证机制。
这导致两种可能的方法:
- 如果使用匿名会议加入
- 检查在身份验证响应中找到的过期值并启动一个小于预期值的计时器(可能少 1-3 分钟)
- 计时器到期时刷新 OAuth 令牌
- 如果不使用匿名会议加入
- 发送请求直到出现 401
- 检查 headers 对 WWW-Authenticate 的响应并发送另一个身份验证请求以获取新令牌
- Re-issue 使用新令牌的请求
在 non-anonymous 会议加入场景中,最好等待 401 出现后再采取行动刷新令牌。