【问题标题】:Service account impersonating user account on Google Drive from Google App Engine从 Google App Engine 模拟 Google Drive 上的用户帐户的服务帐户
【发布时间】:2014-07-08 13:41:00
【问题描述】:

我正在 Google App Engine 上开发 servlet 应用程序,该应用程序应响应 POST 请求在 Google Drive 中创建文件。我想使用带有私钥的服务帐户代表真实用户上传文件。

有可能吗? 有没有避免真正的用户交互的解决方案?

【问题讨论】:

    标签: google-app-engine google-drive-api


    【解决方案1】:

    是的,有可能。云端硬盘文档向您展示了如何为 Google Apps 域用户使用授权(2 步 oauth2)。
    您没有说,但似乎您希望将文件添加到用户的驱动器中。如果没有,您可以使用自己的驱动器或服务帐户驱动器(3step oauth2 服务器流程)并与用户共享,这有更多的配额/速率限制问题,但除了知道他们的电子邮件(使用 appengine 用户服务和谷歌身份验证选项)。

    【讨论】:

    • 你能给我更具体的细节吗?使用服务帐户时如何与用户共享文件?另一个问题 - 有没有办法从 GUI 或 Java 中的某个示例访问服务帐户驱动器?
    • 官方文档展示了如何更改共享权限。如果您无法让它工作,请发布您尝试过的代码。此外,您无法通过驱动器 gui 看到服务帐户。
    • 我在访问 App Engine 中的私钥文件时遇到问题。我在 appengine-web.xml 中添加了参考:<resource-files><include path="/res" /></resource-files>。我正在尝试获取位于/res/filename.p12 中的文件的路径。代码:File credFile = new File(getClass().getResource("/res/filename.p12").toURI()); 然后调用凭证生成器。尝试我收到 NullPointerException。
    • 创建一个新问题。
    猜你喜欢
    • 1970-01-01
    • 2012-09-02
    • 1970-01-01
    • 2014-06-23
    • 1970-01-01
    • 1970-01-01
    • 2012-03-15
    • 1970-01-01
    • 2016-02-15
    相关资源
    最近更新 更多