当源桶和目标桶由不同账户拥有时配置复制
在源
桶和目标
桶由不同 Amazon Web Services 账户拥有时设置复制的操作,与这两个桶由相同账户拥有时设置复制的操作类似。唯一区别在于,目标
桶拥有者必须通过添加桶策略,向源
桶拥有者授予复制对象的权限。
有关在跨账户场景中使用具有 Amazon Key Management Service 的服务器端加密配置复制的更多信息,请参阅为跨账户方案授予其他权限。
当源桶和目标桶由不同 Amazon Web Services 账户 拥有时配置复制
-
在此示例中,您将在两个不同的 Amazon Web Services 账户 中创建
源
桶和目标
桶。您需要为 Amazon CLI 设置两个凭证配置文件(在此示例中,我们使用acctA
和acctB
作为配置文件名称)。有关设置凭证配置文件的更多信息,请参阅《Amazon Command Line Interface 用户指南》中的命名配置文件。 -
按照 针对同一账户中的桶进行配置 中的分步说明操作,进行以下更改:
-
对于与
源
桶活动相关的所有 Amazon CLI 命令(用于创建源
桶、启用版本控制和创建 IAM 角色),使用acctA
配置文件。使用acctB
配置文件创建目标
桶。 -
确保权限策略指定为此示例创建的
源
桶和目标
桶。
-
-
在控制台中,在
目标
桶上添加以下桶策略,以允许源
桶的拥有者复制对象。请务必编辑该策略,即提供源
桶拥有者的 Amazon Web Services 账户 ID 和目标
桶名称。如果您手动创建 IAM 服务角色,请将角色路径设置为
role/service-role/
,如以下策略示例所示。有关更多信息,请参阅《IAM 用户指南》中的 IAM ARN。{ "Version":"2012-10-17", "Id":"", "Statement":[ { "Sid":"Set-permissions-for-objects", "Effect":"Allow", "Principal":{ "AWS":"arn:aws:iam::
source-bucket-acct-ID:role/service-role/source-acct-IAM-role
" }, "Action":["s3:ReplicateObject", "s3:ReplicateDelete"], "Resource":"arn:aws:s3:::DOC-EXAMPLE-BUCKET
/*" }, { "Sid":"Set permissions on bucket", "Effect":"Allow", "Principal":{ "AWS":"arn:aws:iam::source-bucket-acct-ID:role/service-role/source-acct-IAM-role
" }, "Action":["s3:List*", "s3:GetBucketVersioning", "s3:PutBucketVersioning"], "Resource":"arn:aws:s3:::DOC-EXAMPLE-BUCKET
" } ] }
请选择桶并添加桶策略。有关说明,请参阅 使用 Amazon S3 控制台添加桶策略。
在复制中,默认情况下,源对象的拥有者拥有副本。当源桶和目标桶由不同的 Amazon Web Services 账户拥有时,您可以添加可选的配置设置以将副本所有权更改为拥有目标桶的 Amazon Web Services 账户。这包括授予 ObjectOwnerOverrideToBucketOwner
权限。有关更多信息,请参阅更改副本拥有者。