我正致力于将我们的应用从oAuth1转换为oAuth2。我们的应用使用驱动器访问来填充电子表格。当前登录的用户会将一些数据发布到域上另一个用户的电子表格中。
这使用oAuth1工作正常但现在,当服务帐户尝试通过在Google_Auth_AssertionCredentials
对象中设置子字段代表域中的其他用户发出请求时,我收到此错误:
刷新OAuth2令牌时出错,消息:' { "错误" :" access_denied", " ERROR_DESCRIPTION" :"不允许请求的范围:...}'
请求范围如下:
我找到了这篇文章:https://groups.google.com/forum/#!topic/google-api-php-client/WzI2YGeO-4I 如果我以管理员身份登录并添加服务帐户客户端ID的权限,它就会起作用。
我的问题是,当域管理员批准访问时,不应该在应用安装过程中发生这种情况吗?。谢谢。
答案 0 :(得分:0)
您要求的范围必须包含在您的Google Apps Marketplace配置中:
https://developers.google.com/apps-marketplace/preparing#configure_the_google_apps_marketplace_sdk
此外,请确保您的服务帐户是在与您的商家信息相同的Google Developer Console项目中创建的。