Skip to content

S3 Curl Presigned URL

Rnjai Lamba edited this page Jan 28, 2016 · 1 revision

Create Pre signed url in node js

var AWS = require(‘aws-sdk’);
AWS.config.region = ‘ap-southeast-1’;
var AWS_ACCESS_KEY_ID = config.amazonS3key;
var AWS_SECRET_ACCESS_KEY = config.amazonS3secret;
AWS.config.update({accessKeyId: AWS_ACCESS_KEY_ID, secretAccessKey: AWS_SECRET_ACCESS_KEY});
var s3 = new AWS.S3();
var params = {Bucket: ‘cementifyblogimages’, Key: “test.txt”, Expires: 6000000};
var url = s3.getSignedUrl(‘putObject’, params);
console.log(“The URL is”, url);

Use this url in curl command below -

curl -X PUT “Content-Type:text/xml” –data “junk” https://cementifyblogimages.s3-ap-southeast-1.amazonaws.com/test.txt?AWSAccessKeyId=AKIAJDTELPCXKB6E3LBQ&Expires=1459950084&Signature=fqrKefXugisf0JsLAjqgLZAeDuQ%3D

Add everyone in Grantee -
http://stackoverflow.com/questions/22077445/aws-s3-bucket-permissions-access-denied

Clone this wiki locally