我有1000个文件在谷歌云存储要公开,或在一般的目录层次结构。
在Web UI,我只能似乎使一次一个公众。
是否有某种方式来做到这一点。
我有1000个文件在谷歌云存储要公开,或在一般的目录层次结构。
在Web UI,我只能似乎使一次一个公众。
是否有某种方式来做到这一点。
运行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
当您运行: gsutil -m acl set -R -a public-read gs://bucket
定义公共读了目前在桶中的所有对象,但是当你上传新文件,他们不会默认为公开。
我发现是一个值得来定义一个桶默认的ACL公众阅读gsutil defacl set public-read gs://bucket
您可以在水桶公共的所有对象。 这里的链接 。
- 打开在谷歌云平台控制台中的云存储浏览器。
- 在桶的列表中,单击要公开桶的名称。
- 选择靠近页面顶部的权限选项卡。
- 点击添加成员按钮。
出现添加成员对话框。- 在成员字段中输入ALLUSERS。
- 在角色下拉菜单中,选择存储子菜单,然后单击存储对象浏览器选项。
- 单击添加。
一旦公开分享,链接图标出现在公共接入>列中的每个对象。 您可以单击此图标以获取对象的URL。
关于托管发现了一个静态的网站电流(月/ 2017年)的文件在这里指出:
gsutil acl ch -r -u AllUsers:R gs://bucket-name
凡-r
做递归伎俩和-u AllUsers:R
给人的公共读取权限。
做到这一点,最简单的方法是使用一个控制台。
点击“编辑区权限”
输入allUsers
中添加成员。 然后Select Role
> Storage
> Storage Object Viewer
注意! 这将给读取权限给所有的人在互联网上,以在选定的桶中的所有对象。
要复制并粘贴代表Erik的,这个工作一直对我说:
使物体公开可读的组
要在一个桶中的所有对象公开可读:
CONSOLEGSUTILREST APIS使用gsutil IAM CH命令,用适当的值替换[VALUES_IN_BRACKETS]:
gsutil iam ch allUsers:objectViewer gs://[BUCKET_NAME]