Reference Documentation: | https://docs.aws.amazon.com/solutions/latest/constructs/ |
---|
This AWS Solutions Construct implements an Amazon CloudFront distribution to an AWS Elemental MediaStore container.
Here is a minimal deployable pattern definition:
Typescript
import { Construct } from 'constructs';
import { Stack, StackProps } from 'aws-cdk-lib';
import { CloudFrontToMediaStore } from '@aws-solutions-constructs/aws-cloudfront-mediastore';
new CloudFrontToMediaStore(this, 'test-cloudfront-mediastore-default', {});
Python
from aws_solutions_constructs.aws_cloudfront_mediastore import CloudFrontToMediaStore
from aws_cdk import Stack
from constructs import Construct
CloudFrontToMediaStore(self, 'test-cloudfront-mediastore-default')
Java
import software.constructs.Construct;
import software.amazon.awscdk.Stack;
import software.amazon.awscdk.StackProps;
import software.amazon.awsconstructs.services.cloudfrontmediastore.*;
new CloudFrontToMediaStore(this, "test-cloudfront-mediastore-default", new CloudFrontToMediaStoreProps.Builder()
.build());
Name | Type | Description |
---|---|---|
existingMediaStoreContainerObj? | mediastore.CfnContainer |
Optional user provided MediaStore container to override the default MediaStore container. |
mediaStoreContainerProps? | mediastore.CfnContainerProps |
Optional user provided props to override the default props for the MediaStore Container. |
cloudFrontDistributionProps? |
cloudfront.DistributionProps |any
|
Optional user provided props to override the default props for the CloudFront Distribution. |
insertHttpSecurityHeaders? | boolean |
Optional user provided props to turn on/off the automatic injection of best practice HTTP security headers in all responses from CloudFront |
responseHeadersPolicyProps? | cloudfront.ResponseHeadersPolicyProps |
Optional user provided configuration that cloudfront applies to all http responses. |
cloudFrontLoggingBucketProps? | s3.BucketProps |
Optional user provided props to override the default props for the CloudFront Logging Bucket. |
Name | Type | Description |
---|---|---|
cloudFrontWebDistribution | cloudfront.Distribution |
Returns an instance of cloudfront.Distribution created by the construct. |
mediaStoreContainer | mediastore.CfnContainer |
Returns an instance of mediastore.CfnContainer. |
cloudFrontLoggingBucket | s3.Bucket |
Returns an instance of s3.Bucket as the logging bucket for the CloudFront Web Distribution. |
cloudFrontOriginRequestPolicy | cloudfront.OriginRequestPolicy |
Returns an instance of cloudfront.OriginRequestPolicy created by the construct for the CloudFront Web Distribution. |
cloudFrontOriginAccessIdentity? | cloudfront.OriginAccessIdentity |
Returns an instance of cloudfront.OriginAccessIdentity created by the construct for the CloudFront Web Distribution origin custom headers and the MediaStore Container policy. |
cloudFrontFunction? | cloudfront.Function |
Returns an instance of the Cloudfront function created by the pattern. |
Out of the box implementation of the Construct without any override will set the following defaults:
- Configure access logging for CloudFront Web Distribution
- Enable CloudFront Origin Request Policy for AWS Elemental MediaStore Container
- Set
User-Agent
custom header with CloudFront Origin Access Identity - Enable automatic injection of best practice HTTP security headers in all responses from CloudFront Distribution
- Set the deletion policy to retain the resource
- Set the container name with the CloudFormation stack name
- Set the default Container Cross-origin resource sharing (CORS) policy
- Set the default Object Life Cycle policy
- Set the default Container Policy to allow only
aws:UserAgent
with CloudFront Origin Access Identity - Set the default Metric Policy
- Enable the access logging
© Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.