2

我正在编写 Python - Google App Engine 应用程序。这个应用程序必须做两件重要的事情:

  • 写入用户的日历。
  • 写入用户的个人资料(与 Google Apps 域中的用户合作)

第一次操作很简单。如果我理解 OAuth,这是经典的三足场景。最初开发 OAuth 的场景。登录的用户向客户端(我的应用程序)提供凭据,以代表他/她访问用户的数据(日历)。因此,这可以仅使用登录用户的凭据来完成。

第二次操作就没那么容易了。仅使用登录用户的凭据无法完成此操作。这是一个两足 OAuth 场景。因此,我需要委托 Google Apps 域管理员帐户使用 Google Profiles API(通过 google 数据库)访问用户的个人资料。到目前为止,我将管理员用户/密码硬编码到一个 json 文件中,然后我的应用程序会加载该文件。但这对我来说听起来有点

最后,我的应用程序需要处理经典的 3-legged OAuth 场景(没问题,只需要登录用户的凭据)加上 2-legged OAuth 场景(需要管理员凭据)。

是否有任何官方或更优雅的方式来处理 Google App Engine 中的这两种情况,使用 Google Apps 域,硬编码管理员凭据?

提前谢谢了

4

1 回答 1

2

AFAIK 无法使用 2-legged OAuth 授权对 Google Contacts Data API 的写入操作。

Google 的文档指定了哪些 API 可以通过 2-legged OAuth 访问,但似乎 Google 的某个人忘记指定其中一些是只读的 :-S

有些人在这里这里有同样的问题。

我期待谷歌的人来解决这个问题。在那之前,对管理员级别的凭据进行编码是我知道它有效的唯一选择。我一点也不喜欢它:它很脏但很有效。如果有人知道更优雅的禅级方式,请照亮我们!

于 2012-12-27T18:45:47.873 回答