S3 批量操作 - “禁止读取清单:访问被拒绝”

Nip*_*azz 6 amazon-s3 amazon-web-services

我正在尝试设置 PUT COPY S3 批量操作作业。我完全按照 AWS 指南的编写方式进行操作,但每次我都会遇到状态:失败,失败原因:“禁止读取清单:AccessDenied”。

我已经设法通过使用具有 AdministratorAccess 策略的 IAM 角色来完成这项工作,但我希望使用更少的权限来完成这项工作。我尝试为三个存储桶(源、目标和清单)及其内部的所有文件(“ARN”和“ARN/*”)授予“允许 *”权限来设置权限,但这不起作用。即使 AmazonS3FullAccess (Allow s3: *) 也会给出相同的错误。

我不知道如何继续下去。显然该角色需要更多权限,但是什么呢?

Ant*_*ado 7

此外,对于您的自定义 IAM 角色甚至AdministratorAccess策略,您需要确保您使用的 IAM 位于受信任实体batchoperations.s3.amazonaws.com下:

在此输入图像描述

单击编辑信任关系并添加以下内容:

{
"Version": "2012-10-17",
"Statement": [
    {
        "Effect": "Allow",
        "Principal": {
            "Service": "batchoperations.s3.amazonaws.com"
        },
        "Action": "sts:AssumeRole"
    }
]}
Run Code Online (Sandbox Code Playgroud)


Nip*_*azz 0

刚刚找到了答案 - 将库存文件 (manifest.json) 创建到与要复制的文件相同的存储桶中就可以了。