[![Build Status](https://travis-ci.org/zoncoen/Amazon-CloudFront-SignedURL.png?branch=master)](https://travis-ci.org/zoncoen/Amazon-CloudFront-SignedURL)
# NAME

Amazon::CloudFront::SignedURL - A module to generate AWS CloudFront signed URLs.

# SYNOPSIS

   use Amazon::CloudFront::SignedURL;

   my $signed_url = Amazon::CloudFront::SignedURL->new(
       private_key_string => {PRIVATE_KEY},
       key_pair_id        => {KEY_PAIR_ID}
   );

   # create signed url with canned policy
   $signed_url->generate( resource => {RESOURCE_PATH}, expires => {EXPIRES} );

   # create signed url with custom policy
   $signed_url->generate( resource => {RESOURCE_PATH}, policy => {CUSTOM_POLICY} );

# DESCRIPTION

Amazon::CloudFront::SignedURL generates AWS CloudFront signed URLs.

# METHODS

- `Amazon::CloudFront::SignedURL->new(\%args: HashRef)`

   Creates a new instance.

   Arguments can be:

   - private\_key\_string

       The private key strings.

   - key\_pair\_id

       The AWS Portal assigned key pair identifier.

- `$signed_url->generate(\%args: HashRef)`

   Generate a signed URL.

   Arguments can be:

   - resource

       The URL or stream. (required)

   - expires

       The Unix epoch time when the URL is to expire. (xor policy)

   - policy

       The CloudFront policy document. (xor expires)

# LICENSE

Copyright (C) zoncoen.

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.

# AUTHOR

zoncoen <[email protected]>