I can’t seem to overwrite existing objects in a bucket with the same key. The initial flow:
1.) Get presigned URL
2.) Upload object to bucket location (key)
All good there.
Then, when I try and re-initiate the same flow using the same bucket location/key, I get “Access Denied”. My current s3 credentials include READ, WRITE, and DELETE.
FWIW, I’m performing multipart uploads and CompleteMultipartUpload and AbortMultipartUpload are failing (on the second go around).
Is it possible that your credentials is limited to the object, not the prefix or the bucket?
Could you please generate another ones S3 credentials but also with LIST permissions in additional to write, read and delete to the prefix/bucket?
Maybe because there is no replace actually. It need to check the existence of the piece (and here you need a LIST permission), delete the piece and upload a new one.
You may make a persistent storage this way - give only write permissions, and you would be able to upload, but not list, read or delete, so no possible to alter something.