我目前正在尝试在现有的S3存储桶上实施Cloudfront上传(POST / PUT方法)。
我的Cloudfront发行版似乎配置正确。我正在使用Cloudfront签名的URL将我的文件上传到S3存储桶中。它工作正常。文件上传后,我可以使用Cloudfront签名的URL访问它们。也可以
但是我发现我无法使用AWS凭证(access_key_id和secret_key)(通过Cloudfront)访问上传的文件。每次尝试此操作时,我都会收到一个AccessDenied错误代码。
我感觉S3存储桶策略的配置中缺少某些内容。这是我当前的S3存储桶策略:
{
"Version": "2008-10-17",
"Id": "PolicyForCloudFrontPrivateContent",
"Statement": [
{
"Sid": "1",
"Effect": "Allow",
"Principal": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity XXXXXXXXXXXX",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::XXXXX-XXXXXX-XXXX/*"
}
]
}
我是否错过了某件事?
我曾经有过同样的问题。
尝试将标头“ x-amz-acl = bucket-owner-full-control ”添加到上传请求中,这样就可以解决问题。
希望能帮助到你!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句