Google OAuth 2.0 增量授权不起作用

Posted

技术标签:

【中文标题】Google OAuth 2.0 增量授权不起作用【英文标题】:Google OAuth 2.0 incremental authorization not working 【发布时间】:2014-05-29 23:06:38 【问题描述】:

我有一个需要访问 Google API 组合的服务器端应用程序,对于我们应用程序的某些用户,我们只需要访问一个 API/一组范围(例如 Google Drive),而其他用户则需要访问另一个 API/范围(例如 G+),对于某些我们需要同时访问两者(用户可以稍后链接到应用程序的其他部分)。

我们想为此使用incremental authorization,但是当我们第一次请求访问一组范围,然后请求访问另一组范围时,我们为第二个请求获得的访问令牌只允许访问第二个范围,而不是最初请求的范围和新范围的组合,如上面给出的 Google 链接中所述。

我们所有的授权网址都包含include_granted_scopes=true 参数。

要启用增量身份验证,我们是否需要执行任何其他步骤?我们正在我们的服务器端应用程序中使用 Google oauth Java 客户端库,如果这有什么不同的话。

This question 描述了一个类似的问题,但对于已安装的应用程序,它包含一个很好的简单脚本来重现该问题。

【问题讨论】:

【参考方案1】:

我们看到了这个问题的一个变种。我们发现 Drive API 的作用域可以正常工作,但对电子表格 API 不起作用。

已向 Google 提出问题

https://code.google.com/a/google.com/p/apps-api-issues/issues/detail?id=3642&thanks=3642&ts=1412997212

【讨论】:

以上是关于Google OAuth 2.0 增量授权不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Google OAuth2 - 令牌的交换访问代码 - 不起作用

OAuth 2.0 授权认证详解

如何重置 google oauth 2.0 授权?

尝试切换开关以在 Google APIS Explorer 中使用 OAuth 2.0 授权请求返回 500 错误

OAuth 2.0介绍

使用服务帐户通过 OAuth 2.0 调用 v3 Google 日历 API 时出现“需要登录”401 未经授权的消息