配置对数据源和数据接收器的访问权限

本页面介绍了如何针对使用 Storage Transfer Service 进行的数据传输,设置对数据源和数据接收器的访问权限。

前提条件

服务帐号权限在存储分区级层进行授予。您必须具有授予这些权限的功能,例如具有 Storage Admin 角色。如需了解详情,请参阅身份和访问权限管理

如果您打算使用 Pub/Sub 转移,请确保向服务帐号授予所需 Pub/Sub 主题的 IAM 角色 roles/pubsub.publisher。在分配角色之后,可能会经历几秒钟的延迟,角色才会应用到您的服务帐号上。如果您以编程方式授予此权限,请等待 30 秒再配置 Storage Transfer Service。

如果您在 Cloud Storage 源存储分区或目标存储分区启用了 Cloud Key Management Service,请检查项目的配额页面中列出的 Cloud KMS 配额是否与 Storage Transfer 的读取配额写入配额相匹配。如不兼容,请从项目的配额页面申请增加配额。

详情请参阅以下内容:

设置对数据源的访问权限

Cloud Storage

如要设置 Storage Transfer Service 以将 Cloud Storage 用作数据源,请为源存储分区的 accountEmail 字段中列出的电子邮件地址分配以下角色等效权限

角色 用途 备注
roles/storage.objectViewer 允许服务帐号读取存储分区的内容,以及读取对象数据和元数据。
roles/storage.legacyBucketReader 允许服务帐号读取存储分区的内容和其元数据,以及读取对象元数据。 如果您不打算从 Cloud Storage 中删除源对象,请向服务帐号分配 roles/storage.legacyBucketReader
roles/storage.legacyBucketWriter 允许服务帐号创建、覆盖和删除对象;列出存储分区中的对象;列出时读取对象元数据;以及读取存储分区元数据(不包括 IAM 政策)。 如果您要从 Cloud Storage 中删除源对象,请将 roles/storage.legacyBucketWriter 分配给服务帐号。

如需了解高级数据传输,请参阅 Storage Transfer Service 的 IAM 权限

Amazon S3

请按照以下步骤设置对 Amazon S3 存储分区的访问权限:

  1. 创建 AWS IAM(身份识别与访问管理服务)用户,并设置便于识别的用户名,如 transfer-user。确保名称遵循 AWS IAM 用户命名指南(请参阅 IAM 实体和对象的限制)。
  2. 授予 AWS IAM 用户执行以下操作的权限:
    • 列出 Amazon S3 存储分区。
    • 获取存储分区的位置。
    • 读取存储分区中的对象。
    • 如果您计划在对象转移后从来源删除对象,请授予用户“删除对象”权限。
  3. 为您要设置的转移作业创建至少一个访问/密钥对。您还可以为每个转移作业创建单独的访问/密钥对。

  4. 恢复归档到 Amazon Glacier 的任意对象。在恢复归档到 Amazon Glacier 的 Amazon S3 对象之前,您无法访问这些对象如需了解详情,请参阅“从 Amazon Glacier 迁移到 Cloud Storage”白皮书

Microsoft Azure Blob Storage

要配置对 Microsoft Azure Storage 容器的访问权限,请按以下步骤操作:

  1. 创建或使用现有的 Microsoft Azure Storage 用户来访问 Microsoft Azure Storage Blob 容器的存储帐号。
  2. 在容器级层创建一个 SAS 令牌。请参阅使用共享访问签名授予对 Azure Storage 资源的有限访问权限

    SAS 令牌的默认到期时间为 8 小时。在创建 SAS 令牌时,请确保设置合理的到期时间,以便成功完成转移。

网址列表

如果您的数据源是网址列表,请确保网址列表中的每个对象都可公开访问。

设置对数据接收器的访问权限

数据传输的数据接收器始终是 Cloud Storage 存储分区。 如要设置 Storage Transfer Service 以将 Cloud Storage 用作数据接收器,请为目标存储分区的 accountEmail 字段中列出的电子邮件地址分配以下角色等效权限

角色 用途
roles/storage.legacyBucketWriter 允许服务帐号创建、覆盖和删除对象;列出目标存储分区中的对象;读取存储分区元数据。
roles/storage.objectViewer 允许服务帐号列出和获取目标存储分区中的对象。

如需详细了解所需权限,请参阅 Storage Transfer Service 的 IAM 权限

后续步骤