如何允许匿名上传到云存储

我需要我的用户将文件上传到我的Google云端存储,而无需通过Google进行身份validation。 这些主要是运行我的应用程序的Windows桌面/笔记本用户。 通过阅读不同的身份validation机制后,我发现可恢复的上传可能是我正在寻找的。 上面的页面包含有关如何完成此操作的REST API。 我有几个问题:

  1. 这是第三方将数据上传到我的帐户而不登录任何Google帐户的正确方法吗?

  2. 是否有包含可恢复上传相关代码的Python或Java示例?

谢谢你的帮助。

您有三个主要选择:

  1. 使用签名的URL。 基本上,您将提供一个服务器,可以使用您喜欢的任何身份validation方案为应用程序分配“签名URL”。 然后,应用程序将使用其XML API与Google Cloud Storage联系,并使用签名URL上传内容。 这是最推荐的方式。 http://developers.google.com/storage/docs/accesscontrol#Signed-URLs

  2. 在服务器上启动可恢复的上载,并将URL传递给应用程序。 当启动可恢复会话时,将生成上载者联系的URL以上载实际数据。 该URL包含一个upload_id参数,该参数作为自己对该一次上载的身份validation,因此该URL就是客户端所需的全部内容(注意:这就是保持上载URL安全的重要性)。 https://developers.google.com/storage/docs/json_api/v1/how-tos/upload#resumable

  3. 创建具有权限集的存储桶,以便匿名用户可以将任意对象写入其中。 这是个坏主意 。 对存储桶的写入权限意味着匿名用户可以删除该存储桶中的任何文件,上传任意大小的对象(您负责产生的存储费用),在他们上传的对象上设置ACL(例如,他们可以使用您的水桶作为转储电影和与朋友分享url的地方)。 不要采用这种方法。