适用于 Google Cloud Console 的 IAM 权限

以下页面讨论使用 Cloud Console 时,对 Cloud Storage 存储分区和对象执行各种操作所需的 Identity and Access Management (IAM) 权限。将 IAM 权限捆绑在一起即可创建角色,您可以为用户和群组分配角色

使用 Cloud Console 需要的常用权限

通常具有某些权限才能使用 Cloud Console:

  • 涉及存储分区的所有操作都需要项目级层的 resourcemanager.projects.getstorage.buckets.list 权限。

    这些权限让您可以访问 Console 浏览器的存储分区页面,您可以在该页面中创建、查看和更新存储分区。

  • 请求中包含结算项目的所有操作都需要指定项目的 serviceusage.services.use 权限。

    此权限可确保您有权对指定的项目进行结算。例如,在访问启用了请求者付款功能的存储分区时,将包含结算项目。

执行特定操作所需的权限

操作 必需的 IAM 权限(除了上面列出的权限以外)
创建存储分区 storage.buckets.create
列出或过滤存储分区 无其他权限
查看以下存储分区信息:
  • 位置、标签和默认存储类别
  • 对象生命周期政策
  • 保留政策和锁定状态
  • 统一存储分区级访问权限状态
  • 基于事件的默认保全设置
  • 默认的 Cloud Key Management Service 密钥
  • 网站配置
storage.buckets.get
更改以下存储分区设置:
  • 标签和默认存储类别
  • 对象生命周期政策
  • 保留政策,包括锁定存储分区
  • 统一存储分区级访问权限状态
  • 默认基于事件的保全状态
  • 默认的 Cloud Key Management Service 密钥
  • 网站配置
storage.buckets.get
storage.buckets.update
启用请求者付款功能 storage.buckets.get
storage.buckets.update
停用请求者付款功能 storage.buckets.get
storage.buckets.update
resourcemanager.projects.createBillingAssignment3
更改存储分区权限 storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
删除空存储分区 storage.buckets.delete
storage.objects.list
删除非空存储分区 storage.buckets.delete
storage.objects.delete
storage.objects.list
上传对象或对象文件夹 storage.objects.create
storage.objects.delete1
查看对象的详情页面5 storage.objects.get
storage.objects.list
下载对象5或对象文件夹 storage.objects.get
storage.objects.list
列出存储分区中的对象 storage.objects.list
确定对象是否可公开访问5 storage.buckets.getIamPolicy
storage.objects.list
storage.objects.getIamPolicy4
重命名对象 storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.list
storage.objects.getIamPolicy4
storage.objects.setIamPolicy4
复制对象 storage.objects.create(针对目标存储分区)
storage.objects.delete1(针对目标存储分区)
storage.objects.get(针对源对象)
storage.objects.list(针对源存储分区和目标存储分区)
storage.objects.getIamPolicy2、4(针对源对象)
storage.objects.setIamPolicy2、4(针对目标存储分区)
移动对象 storage.objects.create(针对目标存储分区)
storage.objects.delete1(针对目标存储分区)
storage.objects.delete(针对源存储分区)
storage.objects.get(针对源对象)
storage.objects.list(针对源存储分区和目标存储分区)
storage.objects.getIamPolicy2、4(针对源对象)
storage.objects.setIamPolicy2、4(针对目标存储分区)
查看对象的访问权限5、6 storage.objects.get
storage.objects.list
storage.objects.getIamPolicy
修改对象的访问权限5、6 storage.objects.get
storage.objects.list
storage.objects.getIamPolicy
storage.objects.setIamPolicy
storage.objects.update
修改对象的元数据5 storage.objects.get
storage.objects.list
storage.objects.update
添加或移除对象的保全5 storage.objects.get
storage.objects.list
storage.objects.update
删除对象5或文件夹 storage.objects.delete
storage.objects.list
查看项目的 HMAC 密钥 resourcemanager.projects.get
storage.hmacKeys.list
为服务帐号创建 HMAC 密钥 resourcemanager.projects.get
storage.hmacKeys.list
storage.hmacKeys.create
为服务帐号停用或重新启用 HMAC 密钥 resourcemanager.projects.get
storage.hmacKeys.list
storage.hmacKeys.update
删除服务帐号的 HMAC 密钥 resourcemanager.projects.get
storage.hmacKeys.list
storage.hmacKeys.delete

1仅当目标存储分区中已存在同名对象时,才需要此权限。

2仅在保留当前应用于源对象的权限时,才需要此权限。

3仅当您的请求中未包含结算项目时,才需要此权限。如需了解详情,请参阅请求者付款功能的使用和访问要求

4 此权限不适用于启用了统一存储分区级访问权限的存储分区。

5如果在相关对象的详情页面上执行此操作,并且您不会从存储分区的整个对象列表中访问详情页面,则此操作不需要 storage.objects.list

6 此操作不适用于启用了统一存储分区级访问权限的存储分区。

后续步骤