-
Notifications
You must be signed in to change notification settings - Fork 675
SDK does not calculate signature correctly for files with commas #3061
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
I can't reproduce this. Downloading an object with a comma with a comma on its name works as expected. The object key gets correctly URL-encoded and the object is retrieved as expected. Using
Notice how the GET request is mapped to |
Appreciate the quick reply as well as your detailed logs as it helped us understand what was going on! I'll close the ticket as there's nothing to report. Just for anyone else if they run into this; When running with minio on localhost the following configuration "worked" after following your example
I was thinking that
With our initial config of
working we were thinking that was the correct way since we could read the file and produces the non-encoded
On second glance this is obvious but when it half works we assumed it as truth. |
This issue is now closed. Comments on closed issues are hard for our team to see. |
Acknowledgements
go get -u github.com/aws/aws-sdk-go-v2/...
)Describe the bug
I am trying to read and consume a file whose path contains a special character (in this case the comma
,
). I am aware of this page that indicates that it may require special handling, but it seems that when reading in the key it does not uriencode it before generating the signature.Regression Issue
Expected Behavior
The call to return successfully and the file contents to be outputted. This call works fine when using the
minio client
as well as the go code when it is generated by postman.Current Behavior
It fails and I get
Reproduction Steps
I self-hosted a minio server using
docker run -p 9000:9000 -p 9001:9001 quay.io/minio/minio server /data --console-address ":9001"
created a bucket namedtest
and then underneath created two files,qwerty.txt
andbad,file.txt
.I then ran the following code
Where it fails on
bad,file.txt
but not forqwerty.txt
Possible Solution
Improve key with uri-encoding
Additional Information/Context
No response
AWS Go SDK V2 Module Versions Used
Compiler and Version used
go version go1.22.2 linux/amd64
Operating System and version
Ubuntu 20.04.2
The text was updated successfully, but these errors were encountered: