NAME
Signer::AWSv4::S3 - Implements the AWS v4 signature algorithm
SYNOPSIS
use Signer::AWSv4::S3;
$s3_sig = Signer::AWSv4::S3->new(
access_key => 'AKIAIOSFODNN7EXAMPLE',
secret_key => 'wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY',
method => 'GET',
key => 'test.txt',
bucket => 'examplebucket',
region => 'us-east-1',
expires => 86400,
version_id => '1234561zOnAAAJKHxVKBxxEyuy_78901j',
content_type => 'text/plain',
content_disposition => 'inline; filename=New Name.txt',
);
say $s3_sig->signed_url;
DESCRIPTION
Generates S3 Presigned URLs.
Request Attributes
This module adds two required attributes in the constructor for obtaining an S3 Presigned URL:
key
The name of the object in S3. This should not start with a slash (/)
bucket
The name of the S3 bucket
versionId
VersionId used to reference a specific version of the object.
Overriding Response Header Values
There are times when you want to override certain response header values in a GET response.
cache_control
Sets the Cache-Control header of the response.
content_disposition
Sets the Content-Disposition header of the response
content_encoding
Sets the Content-Encoding header of the response.
content_language
Sets the Content-Language header of the response.
content_type
Sets the Content-Type header of the response.
Signature Attributes
Apart from those in Signer::AWSv4, a convenience attribute is added:
signed_url
The presigned URL to download the object
BUGS and SOURCE
The source code is located here: https://github.com/pplu/AWSv4Signer
Please report bugs to: https://github.com/pplu/AWSv4Signer/issues
AUTHOR
Jose Luis Martinez
pplusdomain@gmail.com
COPYRIGHT and LICENSE
Copyright (c) 2018 by Jose Luis Martinez
This code is distributed under the Apache 2 License. The full text of the license can be found in the LICENSE file included with this module.