SignatureDoesNotMatch with DigitalOcean Spaces presigned URL

Posted December 15, 2018 3.3k views

I keep getting SignatureDoesNotMatch errors with pre-signed URL PUT requests for uploading files. I tried both v2 and v4 signature versions, double checked CORS policies and API keys. Regular file upload works, so it’s not an issue with my API keys. I can also reproduce this issue using s3cmd

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
2 answers

Never mind I got it working. For me I had to set x-amz-acl header to match the ACL parameter used to generate the pre-signed URL. I did not have to do this for AWS.

I confirm.

The problem is that with presigned url (putObject), you have to send again all headers specified in the putObject request (acl, metadata, etc).

This is very annoying, with aws is not needed. Can a digitalocean developer explain whether this will be fixed or not?