0

我正在使用 googlecloudstorageclient 来操作存储桶中的文件。存储桶不是也不应该是公共可读的,但我需要通过 python 代码为单个文件设置 public-read ({'x-goog-acl': 'public-read'})。

如何在 python 中以编程方式将现有 GCS 文件上的 ACL 或元数据更改为公开读取或删除?

我尝试了 copy2(),但如果我传入权限,它会将内容类型重置为二进制/八位字节流。

https://cloud.google.com/appengine/docs/python/googlecloudstorageclient/functions

4

2 回答 2

0

使用listbucket方法遍历存储桶并从GCSFileStat获取每个文件的内容类型。

现在使用 copy2 方法并为元数据字典提供 GCSFileStat 中的值并修改该字典中的 ACL。

于 2015-08-10T18:13:41.753 回答
0

您可以使用对象补丁来更改对象的 acl 或元数据。此代码示例(使用插入 acl)向您展示了如何使用云存储 apiclient并使用 appengine 发送授权的 api 请求。

于 2015-08-10T23:02:54.563 回答