【问题标题】:(GCS) Additional permissions required to view this object's metadata: Ask an object owner to grant you 'storage.objects.get' permission(GCS) 查看此对象的元数据所需的其他权限:请求对象所有者授予您“storage.objects.get”权限
【发布时间】:2021-12-07 19:37:21
【问题描述】:
当我在Cloud Storage上使用“细粒度”访问控制点击文件名查看详细信息时:
我可以看到细节:
但是,将访问控制“细粒度”更改为“统一”后:
我看不到文件的详细信息并收到此错误:
查看此对象的元数据所需的其他权限:询问
对象所有者授予您“storage.objects.get”权限(例如,通过
为您的帐户提供 IAM 存储管理员角色)。
有没有什么办法可以解决使用访问控制“统一”查看文件详情的错误?
【问题讨论】:
标签:
google-cloud-platform
google-cloud-storage
access-control
google-iam
google-bucket
【解决方案1】:
您可以通过访问控制“统一”查看文件的详细信息来解决错误。
首先,打开左侧栏:
然后,点击“IAM & Admin”中的“IAM”:
然后,点击“✏️”来编辑角色为“Owner”的主体的权限:
现在,打开了一个面板:
接下来,点击“添加另一个角色”:
接下来,从“Cloud Storage”中选择“Storage Admin” 或:
选择更具体的“Storage Object Admin”或:
选择更具体的“Storage Object Viewer”:
这一次,我选择“Storage Admin”并点击“SAVE”:
最后,您可以解决错误并使用访问控制“统一”查看文件的详细信息。 *不要忘记,主体权限的变化会在一点时间后体现出来。
【解决方案2】:
对此行为的可能解释是您可能在存储桶级别没有足够的权限,因为您可以看到uniform access control 使用存储桶级别的权限,而细粒度的访问控制使用对象级别的权限。因此,您应该检查您的存储桶级权限是否具有storage.buckets.get IAM 权限。
如果你通过this document,你会发现下面的声明,就像我上面解释的那样。
如果您启用统一的存储桶级访问权限,您将撤消访问权限
仅通过对象 ACL 获得访问权限并阻止
用户使用存储桶 ACL 管理权限。请确保
您在迁移现有存储桶之前阅读了注意事项
启用统一的存储桶级访问。
您可以参考this document 了解如何将 IAM 权限添加到存储桶。
【解决方案3】:
您可以通过访问控制“统一”查看文件的详细信息来解决错误。
最简单的方法是再次将访问控制“Uniform”改回“Fine-grained”:
然后,再次将访问控制 “细粒度” 改回 “统一”,但不要忘记选中 “添加项目角色 ACL到存储桶 IAM 政策”:
最后,您可以解决错误并使用访问控制“统一”查看文件的详细信息。