配置 IAM 角色以进行 S3 批量复制
由于 Amazon S3 批量复制是批量操作任务的一种类型,因此您必须创建一个 Amazon Identity and Access Management(IAM)角色,用于向批量操作授予代表您执行操作的权限。您还必须将分批复制 IAM 策略附加到批量操作 IAM 角色。
使用以下过程创建策略和 IAM 角色,来向批量操作授予启动批量复制任务的权限。
创建用于批量复制的策略
登录 Amazon Web Services Management Console,然后通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/
。 -
在访问管理下,选择策略。
-
选择 Create policy (创建策略)。
-
在指定权限页面上,选择 JSON。
-
根据您的清单是由 Amazon S3 生成还是您自行提供清单,插入以下策略之一。有关清单的更多信息,请参阅为分批复制任务指定清单。
在使用这些策略之前,请将以下策略中的
替换为复制源存储桶、清单存储桶和完成报告存储桶的名称。user input placeholders
注意
批量复制的 IAM 角色需要不同的权限,具体取决于您是生成清单还是提供清单,因此,请务必从以下示例中选择相应的策略。
使用和存储 Amazon S3 生成的清单时的策略
{ "Version":"2012-10-17", "Statement":[ { "Action":[ "s3:InitiateReplication" ], "Effect":"Allow", "Resource":[ "arn:aws:s3:::
amzn-s3-demo-source-bucket
/*" ] }, { "Action":[ "s3:GetReplicationConfiguration", "s3:PutInventoryConfiguration" ], "Effect":"Allow", "Resource":[ "arn:aws:s3:::amzn-s3-demo-source-bucket
" ] }, { "Action":[ "s3:GetObject", "s3:GetObjectVersion" ], "Effect":"Allow", "Resource":[ "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] }, { "Effect":"Allow", "Action":[ "s3:PutObject" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
/*", "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] } ] }使用用户提供的清单时的策略
{ "Version":"2012-10-17", "Statement":[ { "Action":[ "s3:InitiateReplication" ], "Effect":"Allow", "Resource":[ "arn:aws:s3:::
amzn-s3-demo-source-bucket
/*" ] }, { "Action":[ "s3:GetObject", "s3:GetObjectVersion" ], "Effect":"Allow", "Resource":[ "arn:aws:s3:::amzn-s3-demo-manifest-bucket
/*" ] }, { "Effect":"Allow", "Action":[ "s3:PutObject" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
/*" ] } ] } -
选择下一步。
-
指定策略名称,然后选择创建策略。
创建用于批量复制的 IAM 角色
登录 Amazon Web Services Management Console,然后通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/
。 -
在 Access management(访问管理)下,请选择 Roles(角色)。
-
选择 Create role(创建角色)。
-
选择 Amazon Web Services 服务作为可信实体的类型。在使用案例部分中,选择 S3 作为服务,并选择 S3 批量操作作为使用案例。
-
选择下一步。此时将显示添加权限页面。在搜索框中,搜索您在前面的过程中创建的策略。选中策略名称旁的复选框,然后选择下一步。
-
在命名、查看和创建页面上,输入 IAM 角色的名称。
-
在步骤 1:信任身份部分中,验证 IAM 角色是否使用以下信任策略:
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"batchoperations.s3.amazonaws.com" }, "Action":"sts:AssumeRole" } ] }
-
在步骤 2:添加权限部分中,验证 IAM 角色是否使用您之前创建的策略。
-
选择 Create role(创建角色)。