Google oAuth2 令牌越来越失效

Posted

技术标签:

【中文标题】Google oAuth2 令牌越来越失效【英文标题】:Google oAuth2 tokens invalidated more and more 【发布时间】:2017-03-22 04:32:10 【问题描述】:

我有一个基于 oAuth2 构建的网络应用,已经投入生产 5 年以上。用户通过 Google 进行身份验证和授权,并授予我的应用程序访问 Google Analytics 数据的权限。

在刷新我的用户 oAuth2 令牌时,我突然发现失败激增。这是电话: https://accounts.google.com/o/oauth2/token

传递这些参数: client_id=xxyyzz client_secret=xxyyzz grant_type=refresh_token refresh_token=xxyyzz

这似乎是针对不太活跃的帐户(即,我们代表他们拨打电话的实例之间可能有 15 天以上的时间)。我必须与他们联系,让他们对 Google 进行“重新授权”以使事情正常进行。

1) 最近 Google oAuth2 或 GA Core Reporting API 是否发生了变化?

2) 如果访问令牌在一段时间后没有刷新,我的刷新令牌会失效吗?即我是否应该对所有帐户进行调用,即使我认为我不需要数据;只是为了防止刷新令牌过时?

谢谢, 标记。

范围更新 要求在此处提供起作用的范围: https://www.googleapis.com/auth/userinfo.emailhttps://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/analytics.readonly

【问题讨论】:

六个月未使用的刷新令牌将过期。去看看能不能在google上找人ping看看有没有变化。 谢谢.....但是我看到的情况不是这么长。大多数情况下需要 15-30 天。 在过去的几周里,我看到了很多同样问题的问题。我在想谷歌做了一个隐形的改变。我正在尝试在我的网络中找到与 Google Oauth 人员有联系的人。可能需要一点时间,我已经发送了几封邮件。 谢谢....这让人放心,其他人也有同样的问题。这多年来一直坚如磐石......现在突然之间,令牌变得无效。感谢您的调查。 我收到了一位用户的回复,他们的令牌已失效,他们报告说他们已经有一段时间没有更改密码了。 【参考方案1】:

2016 年 11 月 17 日更新:

我们确实发现了导致某些令牌被清除的问题。我们正在努力确保它不会再次发生。不幸的是,无法恢复已删除的令牌,您的用户将不得不再次重新授权。


2016 年 11 月 11 日更新:

我们正在积极调查此问题。您应该要求您的用户重新授权该应用程序。


(来自 Google 身份/身份验证团队)我们希望对此进行更多调查,以确保我们的系统按预期工作。除了密码更改时的令牌撤销(具有某些范围)外,我们没有更改令牌撤销政策。

请通过我的 G+ 个人资料 ping 我好吗?

【讨论】:

很抱歉我很迟钝...不幸的是,我不使用 G+。但是确实尝试了很长时间在其上设置帐户并弄清楚如何发送消息。如果我了解我应该可以访问您的页面 (plus.google.com/+NaveenAgarwal) 并单击图标以分享帖子或发起环聊。我没有看到任何这些图标。可以发邮件给我 mschenkel@embeddedanalytics.com 吗?? 我们的系统出现了完全相同的问题。多年来没有问题,然后突然之间更多的 refresh_tokens 被无效(即使用户报告他们没有撤销访问或更改密码)。如果您能与我联系以帮助解决此问题,那就太好了。我尝试在 G+ 上向您发送消息,但不能。我的电子邮件是 david@compass.co 任何帮助都会很棒。 @nvnagr - 有什么更新吗?每天,越来越多的这些令牌变得无效。请帮忙! Google 在电子邮件中声明问题已解决。

以上是关于Google oAuth2 令牌越来越失效的主要内容,如果未能解决你的问题,请参考以下文章

即使访问令牌有效,也无法使用刷新令牌刷新 Google OAuth2 的访问令牌

Spring 5,401 返回后带有 Google 刷新访问令牌的 OAuth2

带有刷新令牌的 Spring Google OAuth2

Google OAuth2:获取令牌 ID

Spring Security + Google OAuth2 登录:访问令牌为空?

无法获取 Google Analytics API 的 oAuth2 访问令牌