如何使许多文件公众在谷歌云存储?(How do you make many files public

2019-07-18 07:40发布

我有1000个文件在谷歌云存储要公开,或在一般的目录层次结构。

在Web UI,我只能似乎使一次一个公众。

是否有某种方式来做到这一点。

Answer 1:

运行gsutil -m acl set -R -a public-read gs://bucket

  • -m问题在同一时间多个请求。
  • -R问题,请在你的水桶每个对象。
  • -a问题要求为每个对象的每个版本。

请参阅gsutil help acl以获得更多信息。

在API层gsutil会发出以下HTTP请求:

PUT /bucket/obj?acl HTTP/1.1
Host: storage.googleapis.com
x-goog-acl: public-read

您可以使用此-D标志与gsutil

gsutil -D setacl public-read gs://bucket/obj


Answer 2:

当您运行: gsutil -m acl set -R -a public-read gs://bucket定义公共读了目前在桶中的所有对象,但是当你上传新文件,他们不会默认为公开。

我发现是一个值得来定义一个桶默认的ACL公众阅读gsutil defacl set public-read gs://bucket



Answer 3:

您可以在水桶公共的所有对象。 这里的链接 。

  1. 打开在谷歌云平台控制台中的云存储浏览器。
  2. 在桶的列表中,单击要公开桶的名称。
  3. 选择靠近页面顶部的权限选项卡。
  4. 点击添加成员按钮。
    出现添加成员对话框。
  5. 在成员字段中输入ALLUSERS。
  6. 在角色下拉菜单中,选择存储子菜单,然后单击存储对象浏览器选项。
  7. 单击添加。

一旦公开分享,链接图标出现在公共接入>列中的每个对象。 您可以单击此图标以获取对象的URL。



Answer 4:

关于托管发现了一个静态的网站电流(月/ 2017年)的文件在这里指出:

gsutil acl ch -r -u AllUsers:R gs://bucket-name

-r做递归伎俩和-u AllUsers:R给人的公共读取权限。



Answer 5:

做到这一点,最简单的方法是使用一个控制台。

点击“编辑区权限”

输入allUsers中添加成员。 然后Select Role > Storage > Storage Object Viewer

注意! 这将给读取权限给所有的人在互联网上,以在选定的桶中的所有对象。



Answer 6:

要复制并粘贴代表Erik的,这个工作一直对我说:

使物体公开可读的组

要在一个桶中的所有对象公开可读:

CONSOLEGSUTILREST APIS使用gsutil IAM CH命令,用适当的值替换[VALUES_IN_BRACKETS]:

 gsutil iam ch allUsers:objectViewer gs://[BUCKET_NAME]


文章来源: How do you make many files public in Google Cloud Storage?