Question

Receiving Aws::S3::Errors::SignatureDoesNotMatch using Shrine lib

Posted July 3, 2018 2.1k views
Ruby

I’m trying to upload an attachment to Spaces by using Shrine lib from Ruby.
here is my config:

s3_options = {
  credentials: Aws::Credentials.new("key",'secret'),
  endpoint: 'https://nyc3.digitaloceanspaces.com',
  region: "*",
  bucket: "*"
}

Shrine.storages = {
  cache: Shrine::Storage::S3.new(prefix: 'cache', upload_options: {acl: 'public-read'}, **s3_options),
  store: Shrine::Storage::S3.new(prefix: 'store', upload_options: {acl: 'public-read'}, **s3_options)
}

I’m trying to run following code:

attachment.attachment = File.open("data_test.jpg")

and receiving

Aws::S3::Errors::SignatureDoesNotMatch

what is necessary steps I should do to debug this issue, or probably there is knowledge base I haven’t located?

Thank you for any help!

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.

×
2 answers

Could the issue be that in the fact that you’re not opening the file in binary mode? That can cause issues sometimes, try opening it binary mode:

attachment.attachment = File.open("data_test.jpg", "rb")

hello @jankomarohnic - I have no idea what it was, I’ve regenerated access keys and it started working

Submit an Answer