我想通过带有签名URL的Cloudfront将文件上传到S3。 Cloudfront行为中允许HTTP PUT。 铲斗政策Amazon S3无法通过Cloudfront上传文件
{ "Sid": "2", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E1C2T5UJU07REZ" }, "Action": [ "s3:PutObject", "s3:PutObjectAcl", "s3:GetObject" ], "Resource": "arn:aws:s3:::testback/*" }
HTTP PUT是允许在CORS配置。 Cloudfront用户也具有读取,写入权限。 当我尝试使用签名的URL上载文件时。
curl -v -X PUT -F [email protected] http://my-host.cloudfront.net/hello.txt?Expires=1514764800&Signature=MySig&Key-Pair-Id=My-KeyPair
我得到了一个错误:
InvalidRequest
The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256. 5D5DEF3D06F4583C8rBCpTUzYwm1ccc8IfkNtUnkuLxr3RZ2n7xn1j+VvP5dpG+3NMpHKPiNQ5tKpJjVliZ9UBI52vk=
登录:
2017-06-19 03:23:08 FRA54 726 My-IP PUT
my-host.cloudfront.net /hello.txt 400 -
curl/7.50.1
Expires=1514764800&Signature=My-Sig&Key-Pair-Id=My-KeyPair - Error MMHwKFzGuBzrlgP0yV71elcwEp2RVBAwJRJD1A5rO4Na6UmeKvcZPQ==
my-host.cloudfront.net http 838 0.235 - --
Error HTTP/1.1
而且,获取,删除工作正常。
@unknown是否解决了您的问题?是否[此AWS论坛帖子](https://forums.aws.amazon.com/thread.jspa?threadID=258104)您的也是? –
是的,它是帮助。 – unknown