OAuth 2.0 刷新令牌是不是完全过期?

Posted

技术标签:

【中文标题】OAuth 2.0 刷新令牌是不是完全过期?【英文标题】:Does OAuth 2.0 refresh token expires at all?OAuth 2.0 刷新令牌是否完全过期? 【发布时间】:2014-07-09 22:39:09 【问题描述】:

如果超过 6 个月未使用,我需要了解来自 OAuth 2.0 的 Google 数据刷新令牌是否过期?

很多地方都说不会过期,有的地方说6个月不用就过期了。

例如,在this question 中,接受的答案是它永不过期,但其中一个 cmets 建议如果 6 个月未使用它可能会过期。

This Google doc 表示刷新令牌永远不会过期,而this doc 表示如果 6 个月不使用它就会过期。

虽然我对刷新令牌因任何原因而过期的情况进行了安全检查,但仍想确保我正确理解该行为。

【问题讨论】:

【参考方案1】:

您是正确的,Using OAuth 2.0 for Web Server Applications 和 Using OAuth 2.0 to Access Google APIs 两个页面没有相同的信息。

使用 OAuth 2.0 访问 Google API 是正确的。

您应该编写代码以预测出现以下情况的可能性 授予的令牌可能不再起作用。令牌可能会停止为一个人工作 这些原因:

用户已撤销访问权限。 令牌没有 已使用六个月。 用户帐户已超过某个 令牌请求数。

目前每个 Google 用户帐户有 25 个令牌的限制。如果一个用户 账户有 25 个有效令牌,下一次认证请求成功, 但悄悄地使最旧的未完成令牌无效,没有任何 用户可见的警告。

如果您需要授权多个程序、机器或设备,一个 解决方法是限制您授权的客户端数量 用户帐户为 15 或 20。如果您是 Google Apps 管理员,您可以 创建额外的管理员用户并使用他们来授权一些 客户。

6 个月未使用的刷新令牌将过期。

我已经发送了关于第一个 URL 的错误报告。 Google 应该在他们下次查看这些文件时清除差异。

【讨论】:

以上是关于OAuth 2.0 刷新令牌是不是完全过期?的主要内容,如果未能解决你的问题,请参考以下文章

具有公共访问权限的 Web 应用程序的 Google OAuth 2.0 刷新令牌

google oauth2 刷新令牌何时过期?

java api中的Bigquery实例是不是在使用具有刷新令牌的凭据构建它后自动刷新它的Oauth 2.0授权?

如何识别 OAuth 令牌是不是已过期?

GoogleAPI oauth2 刷新令牌在 1 小时后过期

使用 Google Drive Oauth 2.0 管理访问令牌