Question

I have searched here http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/frames.html under CloudFront and I don't see a method to generate a signed url for my RTMP endpoint using NodeJs SDK. I realize S3 has the method:

(String?) getSignedUrl(operation, params, callback)
Get a pre-signed URL for a given operation name.

Does this method exist for CloudFront? I know the procedure exists according to this: http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-canned-policy.html

If not, are there any alternate method to generating a signed url? I want the link to stop working after a minute or so because I don't want someone to steal my links and download content. Am I approaching this correctly?

Was it helpful?

Solution 2

For now AWS Nodejs SDK does not support getSignedUrl with CloudFront. http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/frames.html

It is possible with .net & co, but not yet with Nodejs. Some developers prefer to use S3 instead of Cloudfront for serving signedUrl, because it is a lot easier. Serving files stored in S3 in express/nodejs app

But some have reproduced what the method getSignedUrl should do for CloudFront. Creating signed S3 and Cloudfront URLs via the AWS SDK

Thanks to Jason who has even made a package for that. On NPM : https://www.npmjs.org/package/aws-cloudfront-sign

OTHER TIPS

Update: This method is available as of the 2017-03-25 api version of the AWS SDK for Javascript in the AWS.CloudFront.Signer class. http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudFront/Signer.html

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top