自上周以来,我们的两位用户无法授予我们使用Google OAuth2代币的权限。我们为这些用户获取的刷新令牌可以换成新的访问令牌,但新令牌也无效。
我们使用OAuth 2.0 for Web Server Applications流程。对于这两个用户,OAuth2 authentication_code
请求成功,我们获取访问权限并刷新令牌。但是,使用授予的访问令牌向授权API发出的请求会失败,并显示401状态,并且https://www.googleapis.com/oauth2/v3/tokeninfo?access_token=XXXXX
失败时身份为400状态且{ error_description: "Invalid Value" }
。
奇怪的是,我们为这些用户获得的刷新令牌似乎有效,我们可以POST
他们到https://accounts.google.com/o/oauth2/token
获取新的访问令牌。但是,新令牌表现出与旧令牌相同的行为。
这两个用户的问题仍然存在,即使他们撤销我们的访问权限并返回OAuth流程,在这种情况下,令牌会表现出同样的奇怪行为。
我们已经尝试过刷新这些用户和其他用户'重复令牌并且为受影响的用户返回的访问令牌始终被视为无效,而其他用户的令牌正常工作。撤销访问权限并重新授权的其他用户获取工作令牌。
为所有用户授予的范围为https://mail.google.com/
,https://www.googleapis.com/auth/userinfo.profile
,https://www.googleapis.com/auth/userinfo.email
和https://www.google.com/m8/feeds/
。
我在old Groups list上发现了一个描述相似内容的帖子,但是那里没有解决方案,并且它已经足够长了以至于我怀疑当前问题有不同的根本原因