Amazon S3 putObject 存储桶策略

Amazon S3 putObject 存储桶策略

我正在尝试创建一个仅具有将对象 (PutObject) 访问名为“desking”的 S3 存储桶权限的用户。

在 IAM 中我创建了一个用户,并应用了此策略:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowPut",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::desking/*"
            ]
        }
    ]
}

但是,当我进入“模拟策略”时,出现错误:implicitly denied (no matching statements found)

我也尝试向实际的“办公桌”存储桶添加一项策略:

{
    "Id": "Policy1447457038043",
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1447457035535",
            "Action": [
                "s3:PutObject"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::desking/*",
            "Principal": "*"
        }
    ]
}

但是,仍然是同样的错误。

我是否需要针对存储桶和用户制定策略?或者针对用户的策略就足够了吗?

答案1

所以,事实证明我使用模拟器的方式是错误的。

我需要点击模拟器内的服务列表并将其添加到 ARN:

arn:aws:s3:::办公桌/*

现在就可以了。只需要用户策略,不需要两者。

相关内容