存储桶中的Google云存储列表文件需要项目所有者的许可

时间:2018-01-25 13:51:22

标签: google-cloud-platform google-cloud-storage google-cloud-iam

我目前正在使用网络用户界面来浏览其中一个存储区中的文件,而我恰好也是项目所有者。但是我收到了权限错误

  

您需要storage.objects.list权限才能列出此对象   桶。让项目或桶主给你这个许可,   然后再试一次。

作为我的项目老板,我完全被难过了。有什么想法吗?

4 个答案:

答案 0 :(得分:3)

角色roles/owner不会授予对存储桶中数据的访问权限。

要确定哪些内置IAM角色可以执行哪些操作的最佳资源是Google Cloud Platform IAM Permissions Reference

在该页面上,对于storage.objects.list的CTRL-F(或对此感兴趣的其他任何权限),您将在右侧栏中看到授予该权限的角色。请注意,项目所有者(roles/owner)在授予此权限的角色列表中不是

创建存储桶时,默认情况下,roles/storage.legacyBucketOwner被授予项目所有者,编辑者和查看者。但是,此权限始终可以撤消,实际上,许多用户选择删除此权限,以更精细地控制存储桶中的数据,而不是像VM这样的项目资源。

一个很好的例子是包含敏感PII数据的存储桶。您可能不希望可以通过SSH进入项目中的VM的人员在范围内读取数据。

答案 1 :(得分:0)

我记得当我使用谷歌存储语言API时,我需要去IAM控制台添加"存储管理员"即使我是项目所有者,也要担任服务帐户的角色。

我知道你没有使用gsutil。但是在这一点上,也许尝试创建服务帐户并给予正确的权限?希望这会使它适合你。

答案 2 :(得分:0)

在GCP控制台中,导航到IAM管理员菜单。

  1. 选择IAM(顶部菜单项)

选择您的帐户。

在信息面板中,单击“添加角色”

将Storage Object Admin角色添加到您的帐户

  1. 从IAM菜单中选择“服务帐户”菜单项(位于“配额”下方)

选择compute@developer.gserviceaccount.com或默认帐户。

在信息面板中,单击“添加成员”并添加您的帐户。

您现在应该可以完全访问存储桶

答案 3 :(得分:0)

您可以尝试运行此命令

gsutil iam ch 'user:myacc@mydoma.in:legacyObjectOwner' gs://mybucket

对我有用。

否则,您可以进入I&AM并将存储管理员角色分配给您的帐户。