class Aws::CloudFront::UrlSigner
Allows you to create signed URLs for Amazon CloudFront
resources
signer = Aws::CloudFront::UrlSigner.new( key_pair_id: "cf-keypair-id", private_key_path: "./unit_test_dummy_key" ) url = signer.signed_url(url, policy: policy.to_json )
Public Instance Methods
signed_url(url, params = {})
click to toggle source
create a signed Amazon CloudFront
URL @param [String] url @option params [Time, DateTime, Date, String, Integer<timestamp>] :expires @option params [String<JSON>] :policy
# File lib/aws-sdk-cloudfront/url_signer.rb, line 28 def signed_url(url, params = {}) scheme, uri = scheme_and_uri(url) signed_content = signature( resource: resource(scheme, uri), expires: time(params[:expires]), policy: params[:policy] ) start_flag = URI.parse(uri).query ? '&' : '?' signature = signed_content.map{ |k, v| "#{k}=#{v}" }.join('&').gsub("\n", '') uri = "#{uri}#{start_flag}#{signature}" if scheme == 'rtmp' rtmp_url(URI(uri)) else uri end end