【问题标题】:Static Web site served from Google Cloud storage in Google Apps Domain从 Google Apps 域中的 Google Cloud 存储提供的静态网站
【发布时间】:2013-09-27 02:13:39
【问题描述】:

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

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

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

【问题讨论】:

  • 所以我猜这与 google-app-engine 无关,但与 google-cloud-storage.. 对吧?
  • 是的,它是谷歌云存储——我提到谷歌应用程序是因为它是用于企业帐户的谷歌应用程序,所以我不确定这是否会有所作为。此外,我之前使用谷歌应用程序引擎创建了一个提供静态内容的应用程序,并且可以很好地验证域用户..但我想将该静态内容移动到谷歌云存储,但我没有任何运气(在身份验证条款)
  • 我想我试图使用错误的 url - storage.googleapis.com//。当我改用storage.cloud.google.com/<bucket>/<object> 时,它似乎按预期工作。
  • 很高兴知道为什么我得到“意外的 ACL 实体类型:域”。”虽然

标签: google-apps google-cloud-storage


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-22
    • 1970-01-01
    • 2010-11-15
    • 2020-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-12
    相关资源
    最近更新 更多