1

看起来这真的非常非常容易 - 但我无法让它发挥作用。我需要做的就是能够从谷歌云存储中提供文件,同时限制对我的谷歌应用程序域的访问。在使用 Google App 引擎之前,我很容易做到这一点,只需选择我想限制对我的域的访问并适当地设置 app.yaml。我找不到任何可以告诉我我可能缺少什么的东西 - 我尝试使用 gsutil 将 ACL 设置为限制为我的域,该域通过命令行成功处理,但是当我尝试查看存储桶或通过云 Web 控制台的对象权限,我得到“意外的 ACL 实体类型:域”。

我正在尝试使用 storage.googleapis.com/bucket/object (当然使用我的存储桶和对象名称)进行访问,即使我确实已登录 gmail 并且作为域,它似乎应该可以工作,因为即使 ACL 在其他方面是错误的(我已经尝试过有和没有域限制的情况),并且它至少对我有用。我可以使用上述 url 提供内容的唯一方法是公开它——这显然不是我想要做的。

我敢肯定我错过了一些完全愚蠢的东西,或者一些关于这应该如何工作的基本原则 - 任何人都可以给我任何想法吗?

4

1 回答 1

1

我不是 100% 确定您的用例是什么,但我猜您的用户正试图直接从 Web 浏览器访问对象。storage.cloud.google.com接受 Google 授权 cookie,这意味着如果用户登录到适当的 Google 帐户,他们可以访问仅限于某些用户、组或域的资源。但是,其他端点不接受 cookie 作为授权,因此这个用例不起作用。

这些用户有权使用 访问对象storage.googleapis.com,但这样做需要明确授权请求。

换句话说,一个简单的<img src="http://storage.cloud.google.com/bucket/object" />链接对于已登录的用户来说可以正常工作,但使用storage.googleapis.com需要通过 OAuth 2 明确授权请求。

于 2013-09-24T17:14:50.650 回答