S3 AccessDenied 不符合策略
S3 AccessDenied doesn't match policy
我有以下政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "StmtXXX",
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::MYBUCKET"
]
}
]
}
(是的,我打算在 s3:*
正常工作时缩小范围)
以下列表桶操作正常:
$ aws s3 ls s3://MYBUCKET/test --profile MYPROFILE --region eu-west-1
2016-11-30 15:21:13 16712119 test
但是 PUT 不起作用
$ aws s3 cp /tmp/test2 s3://MYBUCKET/test2 --profile MYPROFILE --region eu-west-1
upload failed: ../../../../tmp/test2 to s3://MYBUCKET/test2
A client error (AccessDenied) occurred when calling the CreateMultipartUpload operation: Access Denied
Parameter validation failed:
Invalid type for parameter UploadId, value: None, type: <type 'NoneType'>, valid types: <type 'basestring'>
我已经在 IAM 策略模拟器中尝试过,它似乎应该可以工作。我已验证密钥对应于正确的用户。
(我也用自己的凭证试过,操作正常,所以我认为这不是语法错误)
这应该有效吗?知道为什么不是吗?
这个问题的答案似乎是 IAM 策略可能需要一些时间才能传播。这从不工作,到断断续续,再到工作。
所以如果你遇到莫名其妙的情况,等几分钟。
如果您在同一语句中指定存储桶和对象操作,则需要将存储桶内容作为与存储桶本身分开的资源输入
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "StmtXXX",
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::MYBUCKET",
"arn:aws:s3:::MYBUCKET/*"
]
}
]
}
我有以下政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "StmtXXX",
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::MYBUCKET"
]
}
]
}
(是的,我打算在 s3:*
正常工作时缩小范围)
以下列表桶操作正常:
$ aws s3 ls s3://MYBUCKET/test --profile MYPROFILE --region eu-west-1
2016-11-30 15:21:13 16712119 test
但是 PUT 不起作用
$ aws s3 cp /tmp/test2 s3://MYBUCKET/test2 --profile MYPROFILE --region eu-west-1
upload failed: ../../../../tmp/test2 to s3://MYBUCKET/test2
A client error (AccessDenied) occurred when calling the CreateMultipartUpload operation: Access Denied
Parameter validation failed:
Invalid type for parameter UploadId, value: None, type: <type 'NoneType'>, valid types: <type 'basestring'>
我已经在 IAM 策略模拟器中尝试过,它似乎应该可以工作。我已验证密钥对应于正确的用户。
(我也用自己的凭证试过,操作正常,所以我认为这不是语法错误)
这应该有效吗?知道为什么不是吗?
这个问题的答案似乎是 IAM 策略可能需要一些时间才能传播。这从不工作,到断断续续,再到工作。
所以如果你遇到莫名其妙的情况,等几分钟。
如果您在同一语句中指定存储桶和对象操作,则需要将存储桶内容作为与存储桶本身分开的资源输入
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "StmtXXX",
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::MYBUCKET",
"arn:aws:s3:::MYBUCKET/*"
]
}
]
}