我正在尝试将图像从.NET Web服务上传到Amazon s3存储桶。
通过在存储桶上使用此公共策略,我可以做到:
{ "Id": "Policyxxxxxxxx", "Version": "yyyy-MM-dd", "Statement": [ { "Sid": "xxxxxxxxxx", "Action": [ "s3:GetObject", "s3:PutObject" ], "Effect": "Allow", "Resource": "arn:aws:s3:::(bucketName)/*", "Principal": "*" } ] }
但是,当我尝试仅授予我的用户/凭据这样的权限时:
{ "Id": "Policyxxxxxxxx", "Version": "yyyy-MM-dd", "Statement": [ { "Sid": "xxxxxxxxxx", "Action": [ "s3:GetObject", "s3:PutObject" ], "Effect": "Allow", "Resource": "arn:aws:s3:::(bucketName)/*", "Principal": { "AWS": [ "arn:aws:iam::(accountID):user/(userName)" ] } } ] }
我得到“拒绝访问”。
那我在政策上做错了什么?
答案 0 :(得分:0)
如果您希望向特定IAM用户授予对Amazon S3存储桶的访问权限,则应在IAM用户本身上放置策略,而不要使用存储桶策略。
例如,请参阅:Create a single IAM user to access only specific S3 bucket