Google cloud storage 为什么我不能在Google存储控制台中编辑元数据?

Google cloud storage 为什么我不能在Google存储控制台中编辑元数据?,google-cloud-storage,Google Cloud Storage,我是GCP项目的所有者,可以管理存储中的对象。但是,存储控制台中没有“编辑元数据”项,只有“查看元数据” 为什么呢 在同一项目的另一个bucket中,我有以下选项: 更新 执行gsutil ls-L将提供以下输出: Creation time: Tue, 29 Oct 2019 10:29:50 GMT Update time: Tue, 29 Oct 2019 10:29:50 GMT Storage class:

我是GCP项目的所有者,可以管理存储中的对象。但是,存储控制台中没有“编辑元数据”项,只有“查看元数据”

为什么呢

在同一项目的另一个bucket中,我有以下选项:

更新

执行
gsutil ls-L
将提供以下输出:

    Creation time:          Tue, 29 Oct 2019 10:29:50 GMT
    Update time:            Tue, 29 Oct 2019 10:29:50 GMT
    Storage class:          MULTI_REGIONAL
    Content-Length:         22536821
    Content-Type:           audio/mp3
    Hash (crc32c):          Gn3MXQ==
    Hash (md5):             VnUZeK6CjUZ8uqN9dIlGew==
    ETag:                   CJbNjcWhweUCEAE=
    Generation:             1572344990754454
    Metageneration:         1
    ACL:                    ACCESS DENIED
        Note:               You need OWNER permission on the object to read its ACL
TOTAL: 1 objects, 22536821 bytes (21.49 MiB)
奇怪的是,上面说我不是这个东西的主人。 -Bucket权限。
-IAM项目

我复制了你的问题。为此,我将用户授予为
Storage Legacy Bucket Owner
,并且我只能查看MEDATA数据

为了解决这个问题,我将
存储管理员
角色授予了用户。尝试将此角色授予您的用户

还有一件事。您可以是项目的所有者,但如果尚未在此项目中创建bucket,则不会在bucket中继承您的所有者角色。

权限为
storage.objects.getIamPolicy
。也许令人惊讶的是,这不是
角色/storage.legacyBucketOwner
之一。类似地,该权限也不授予读取对象的权限


如果您希望能够下载bucket中的所有对象并查看所有ACL,则需要为该bucket授予自己
角色/storage.legacyObjectOwner

如果将bucket移动到其他位置,你能看到blob的元数据吗?你能执行一个
gsutil-L gs://path/to/file
并在你的问题中跳过结果吗?@guillaumeblaquiere谢谢,我已经更新了问题。似乎我没有对象的所有者权限,但如果我是项目的所有者,怎么可能?似乎与相关,但我无法找到解决问题的方法。现在无法测试,但稍后将进行测试。难道你不知道为什么默认情况下这个角色没有授予项目的所有者吗?bucket属于同一个GCP项目,因此您的第二个假设并非如此。谢谢,非常有用。我想知道为什么默认的bucket权限是这样的。然而,这是另一个问题:)>(为了那桶)(谢谢)!我必须为我的项目中的每个bucket更新上面的权限,我是该项目的所有者。一般来说,授予这些权限,或者
存储管理员
并不能解决我的问题。