GeneratePresignedURL
Creates a presigned URL granting temporary, secure access to an object without requiring AWS credentials.
Stored Procedure-Specific Information
This procedure returns a presigned HTTPS URL that grants temporary access to an object. The procedure signs the URL with the AWS Signature Version 4 algorithm and embeds the signature in the query string. That means that anyone who holds the URL can perform the requested operation until it expires, without supplying AWS credentials.Set Expires to the lifetime of the URL in seconds. The value must be greater than zero and no more than 604,800 seconds (seven days), which is the maximum lifetime Amazon S3 allows. AWSMethod selects the HTTP method the URL authorizes; it accepts GET, PUT, DELETE, or HEAD, and defaults to GET. If you do not supply AWSAccessKey, AWSSecretKey, or AWSRegion, the procedure uses the values from the connection.
The following example generates a URL that allows an object to be downloaded for one hour:
EXECUTE GeneratePresignedURL
@Bucket='BucketName',
@Object='ObjectName',
@Expires=3600
Input
| Name | Type | Required | Description |
| AWSAccessKey | String | False | The AWS access key used for authentication. Optional if already included in the connection string. |
| AWSSecretKey | String | False | The AWS secret key paired with the access key. If the AWS secret key is already included in the connection string, this is optional. |
| AWSSessionToken | String | False | The temporary session token for AWS authentication. If not provided, it is retrieved from the connection. |
| AWSRegion | String | False | The AWS region where the target bucket resides. If the AWS region is already included in the connection string, this is optional. |
| AWSMethod | String | False | The HTTP method to include in the presigned URL, such as GET, PUT, or DELETE. If not specified, defaults to GET. |
| Expires | Long | True | The validity period of the presigned URL in seconds, after which it expires and access is denied. |
| Bucket | String | True | The name of the S3 bucket containing the object to be accessed. |
| Object | String | True | The key (name) of the S3 object for which the presigned URL is generated. |
Result Set Columns
| Name | Type | Description |
| URL | String | The generated presigned URL that provides temporary, secure access to the object. |