Creates and signs private Cloudfront Urls (http:, https:, rtmp:, rtmpt:, rtmpe:, and rtmpte:
)
npm i cloudfront-private-url-creator
If you are using Node 0.10 - 0.12
, please use version 1.1.0
.
'use strict'
const fs = require('fs')
const cf = require('cloudfront-private-url-creator')
const urlToSign = 'https://somedistro.cloudfront.net/somefolder/someFile'
const keyPairId = 'yourKeyPaidId'
const privateKeyPath = './yourKey.pem'
// date when the private url will expire (1 hour from now in this case)
const dateLessThan = new Date()
dateLessThan.setHours(dateLessThan.getHours() + 1)
const privateKey = fs.readFileSync(privateKeyPath)
const config = {
privateKey,
keyPairId,
dateLessThan
}
// sign the url and return it, or just get the signature
const signatureQueryString = cf.getSignatureQueryString(urlToSign, config)
// OR
const signedUrl = cf.signUrl(urlToSign, config)
Creating a Signed URL Using a Canned Policy