【发布时间】:2016-08-24 23:44:46
【问题描述】:
我正在开发一个网络应用程序,并且正在努力使用 Google Directory API。
应用程序正在尝试使用以下简单代码获取用户所属的 google 组列表:
from apiclient import discovery
from google.appengine.api import users
from oauth2client.appengine import OAuth2DecoratorFromClientSecrets
def decorator():
....(some scopes including admin.directory.group)
return decorator
class MainHandler(webapp2.RequestHandler):
@decorator.oauth_required
def get(self):
me = users.get_current_user()
http = oauth_decorator.http()
service = discovery.build('admin', 'directory_v1', http=http)
grouplist = service.groups().list(userKey=me).execute()
....
这会在启用 Admin SDK 时导致 403 Not Authorized to access this resource。有很多问题报告了类似的问题,但主要区别在于我尝试使用 OAuth2.0 而不是使用服务帐户,这意味着用户需要明确同意并授予我要求的权限。
所以我的猜测是出于某种原因,该请求没有使用正确的用户授权代码,但我不知道如何证明我的怀疑以及如何使其工作。有什么建议么?非常感谢提前!
【问题讨论】:
标签: google-app-engine oauth2 google-account google-directory-api