andrewrk / node-s3-client

high level amazon s3 client for node.js
MIT License
1k stars 305 forks source link

New Authentication Signature? #60

Open SantoDE opened 10 years ago

SantoDE commented 10 years ago

Hey there,

I'm really liking this extension so far. Great job! :+1:

However, I'm currently trying to use your module with the new S3 Location, Frankfurt which apparently only supports signatureVersion AWS4-HMAC-SHA256. Is this extension able to use this signature version?

I can't really figure it out :(

Cheers!

andrewrk commented 10 years ago

When you call createClient you pass the s3Options field, yes? And one of the possible fields for that is signatureVersion.

https://github.com/andrewrk/node-s3-client#s3createclientoptions http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Config.html#constructor-property

Does that help?

mattiloh commented 9 years ago

@andrewrk thanks for the hint! It works with the additional field signatureVersion. But you have to explicitly set the field region as well.

Here is an example:

var client = s3.createClient({
  maxAsyncS3: 20,     // this is the default 
  s3RetryCount: 3,    // this is the default 
  s3RetryDelay: 1000, // this is the default 
  multipartUploadThreshold: 20971520, // this is the default (20 MB) 
  multipartUploadSize: 15728640, // this is the default (15 MB) 
  s3Options: {
    accessKeyId: "your key id here",
    secretAccessKey: "your secret access key here",
    signatureVersion: 'v4',
    region: 'eu-central-1'
  },
});

Thanks for this great module!

slavafomin commented 8 years ago

Hello there!

Thank you for this module! I'm using the suggestion above with the eu-central-1 region. However, I'm getting the following error when trying to upload the file to the bucket:

Error: Non-file stream objects are not supported with SigV4 in AWS.S3

What could be the issue?

Thanks!

thomasmery commented 8 years ago

Hi,

same as @slavafomin here,

was it solved by someone?

thanks

ghost commented 7 years ago

+1 please help with that issue