Google cloud storage 谷歌云存储使backet公开可见
我想让bucket公开可读(这样添加的每个文件都有一个“共享的公开链接”) 我试图从JSON API更改更新bucket(目前是从API引用()上的“Try it”更改) 并添加到bucketGoogle cloud storage 谷歌云存储使backet公开可见,google-cloud-storage,Google Cloud Storage,我想让bucket公开可读(这样添加的每个文件都有一个“共享的公开链接”) 我试图从JSON API更改更新bucket(目前是从API引用()上的“Try it”更改) 并添加到bucketpredefinedAcl:PublicRead 我得到的回应似乎正是我所需要的: ... { "kind": "storage#bucketAccessControl", "id": "<bucket name>/allUsers", "selfLink": "http
predefinedAcl:PublicRead
我得到的回应似乎正是我所需要的:
...
{
"kind": "storage#bucketAccessControl",
"id": "<bucket name>/allUsers",
"selfLink": "https://content.googleapis.com/storage/v1/b/<bucket name>/acl/allUsers",
"bucket": "<bucket name>",
"entity": "allUsers",
"role": "READER",
"etag": "CAI="
}
...
。。。
{
“种类”:“存储#bucketAccessControl”,
“id”:“/诱惑者”,
“自链接”:https://content.googleapis.com/storage/v1/b//acl/allUsers",
“桶”:“桶”,
“实体”:“诱惑者”,
“角色”:“读者”,
“etag”:“CAI=”
}
...
但是,当我向bucket添加新文件时,我没有选中“公开共享”复选框
我错过了什么
**编辑**
与json相关命令的直接链接(感谢接受的答案):
您是否混淆了bucket和object ACL?将bucket ACL更改为public read会让人们列出bucket内容。要下载对象本身,您需要将每个object ACL设置为public read。最后,要使将来的对象默认为public read,您需要将bucket的默认object ACL更改为public read(另请参见)。设置GCS存储桶以使用以下内容比设置JSON API更容易: 使用acl设置当前bucket对象的公共读取
gsutil -m acl set -R -a public-read gs://BUCKET_NAME
使用defacl将未来上载设置为默认值:
gsutil -m defacl set public-read gs://BUCKET_NAME
我的印象是预定义的ACL:PublicRead是默认的对象ACL。。。