我想從aws-sdk-js
上s3上的對象,但不能找出我的情況的政策。我想只允許一個用戶擁有上傳權限和公開閱讀權限。s3桶策略訪問被拒絕
這裏是我的S3存儲政策
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PublicReadForGetBucketObjects",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::some-bucket/*"
},
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::1111111111111:user/some-bucket-user"
},
"Action": "s3:*",
"Resource": "arn:aws:s3:::some-bucket/*"
}
]
}
和我的IAM策略是:
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"AddPerm",
"Effect":"Allow",
"Action":"s3:*",
"Resource":["arn:aws:s3:::some-bucket/*"]
}
]
}
可有人請指出我在做什麼錯在這裏?
我正在使用'private' ACL,而在JS中我只是簡單地在'aws.config.update({})'中添加創建用戶的密鑰/祕密。如果我這樣做,原則:{AWS:*}'這個整個事情是有效的,因爲它給予所有用戶權限。 –
哦,在這種情況下,這個鏈接應該覆蓋這一切: http://docs.aws.amazon.com/AmazonS3/latest/dev/s3-bucket-user-policy-specifying-principal-intro.html – HerSta