使用 IAM 角色和权限进行访问权限控制

Storage Transfer Service 使用 Identity and Access Management (IAM) 权限和角色来控制哪些用户可以访问 Storage Transfer Service 资源。Storage Transfer Service 中主要提供两种类型的资源,即作业和操作。在 IAM 政策层次结构中,作业是项目的子资源,而操作则是作业的子资源。

要授予对某项资源的访问权限,请为用户,群组或服务帐号分配一个或多个权限角色

权限

您可以授予以下 Storage Transfer Service 权限:

转移项目权限

权限 说明
storagetransfer.projects.getServiceAccount 可以读取 Storage Transfer Service 用于访问 Cloud Storage 存储分区的 GoogleServiceAccount。

转移作业权限

权限 说明
storagetransfer.jobs.create 可以新建转移作业。
storagetransfer.jobs.delete 可以删除现有的传输作业。

通过调用 patch 函数删除转移作业。但是,用户在删除传输作业时必须具有此权限,以避免出现权限错误。
storagetransfer.jobs.get 可以检索特定作业。
storagetransfer.jobs.list 可以列出所有传输作业。
storagetransfer.jobs.patch 可以更新传输作业配置,而不删除这些配置。

转移操作权限

权限 说明
storagetransfer.operations.cancel 可以取消传输操作。
storagetransfer.operations.get 可以获取传输操作的详细信息。
storagetransfer.operations.list 可以列出所有传输作业操作。
storagetransfer.operations.pause 可以暂停传输操作。
storagetransfer.operations.resume 可以恢复暂停的传输操作。

角色

本节介绍可为 Storage Transfer Service 设置的角色,以及创建自定义角色的指南。

预定义角色比较矩阵

您可以分配以下项目角色或 Storage Transfer Service 预定义角色:

能力 roles/editor roles/storagetransfer.
admin user viewer
列出/获取作业
创建作业
更新作业
删除作业
列出/获取传输操作
暂停/恢复传输
读取 Storage Transfer Service 用于访问 Cloud Storage 存储分区的 Google 服务帐号详细信息。

更新作业权限不包含删除作业权限。

对于本地转移服务,需要 Admin 角色:

  • 列出代理
  • 读取项目的带宽限制
  • 设置项目的带宽限制

预定义角色详细信息

下表详细描述了 Storage Transfer Service 的预定义角色:

角色 说明 包含的权限

roles/storagetransfer.
admin

提供所有 Storage Transfer Service 权限,包括删除作业。

说明:这是责任最宽泛、级别最高的角色,也是可在其同事执行转移时为他们提供支持的超级用户。该角色最适合转移管理人员,例如 IT 管理员。

授予所有权限
roles/storagetransfer.
user

为用户提供在项目中创建、获取、更新和列出转移作业的权限。但是,他们无法删除自己的作业。

说明:此角色允许将创建和维护作业与删除作业分开。此角色最适合需要在工作职能中执行转移的用户,例如员工。此角色不允许删除转移,因此审核人员或安全人员可以查看保存完好的历史传输记录。

  • storagetransfer.projects.getServiceAccount
  • storagetransfer.jobs.create
  • storagetransfer.jobs.get
  • storagetransfer.jobs.list
  • storagetransfer.jobs.patch
  • storagetransfer.operations.get
  • storagetransfer.operations.list
  • storagetransfer.operations.pause
  • storagetransfer.operations.resume

roles/storagetransfer.
viewer

在项目中列出和获取作业以及转移操作的权限。用户无法安排、更新或删除作业。

说明:查看者角色适用于查看转移作业和操作的只读权限。此角色允许将报告和审核任务与创建和维护作业分开。此角色最适合审核转移使用情况的用户或内部团队,例如安全、合规或业务部门负责人。

  • storagetransfer.projects.getServiceAccount
  • storagetransfer.jobs.get
  • storagetransfer.jobs.list
  • storagetransfer.operations.get
  • storagetransfer.operations.list

自定义角色

创建自定义角色时,最佳做法是使用预定义角色创建角色,以便将合适的权限组合集中在一起。

如果自定义角色缺少必需的权限,则 Cloud Console 将无法正常运行。例如,Cloud Console 的某些部分假定该角色具有读取权限,可在修改项目之前显示该项目,因此仅具有写入权限的角色会发现 Cloud Console 界面无法正常使用。

后续步骤