UNPKG

@aws-solutions-constructs/aws-cloudfront-s3

Version:

CDK Constructs for AWS Cloudfront to AWS S3 integration.

746 lines 33.9 kB
{ "version": "tree-0.1", "tree": { "id": "App", "path": "", "children": { "cfts3-bucket-with-http-origin": { "id": "cfts3-bucket-with-http-origin", "path": "cfts3-bucket-with-http-origin", "children": { "test-cloudfront-s3-legacy-http-origin": { "id": "test-cloudfront-s3-legacy-http-origin", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin", "children": { "S3LoggingBucket": { "id": "S3LoggingBucket", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3LoggingBucket", "children": { "Resource": { "id": "Resource", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3LoggingBucket/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::S3::Bucket", "aws:cdk:cloudformation:props": { "bucketEncryption": { "serverSideEncryptionConfiguration": [ { "serverSideEncryptionByDefault": { "sseAlgorithm": "AES256" } } ] }, "publicAccessBlockConfiguration": { "blockPublicAcls": true, "blockPublicPolicy": true, "ignorePublicAcls": true, "restrictPublicBuckets": true }, "versioningConfiguration": { "status": "Enabled" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.CfnBucket", "version": "2.143.0" } }, "Policy": { "id": "Policy", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3LoggingBucket/Policy", "children": { "Resource": { "id": "Resource", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3LoggingBucket/Policy/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy", "aws:cdk:cloudformation:props": { "bucket": { "Ref": "testcloudfronts3legacyhttporiginS3LoggingBucketA3DB7D64" }, "policyDocument": { "Statement": [ { "Action": "s3:*", "Condition": { "Bool": { "aws:SecureTransport": "false" } }, "Effect": "Deny", "Principal": { "AWS": "*" }, "Resource": [ { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginS3LoggingBucketA3DB7D64", "Arn" ] }, { "Fn::Join": [ "", [ { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginS3LoggingBucketA3DB7D64", "Arn" ] }, "/*" ] ] } ] }, { "Action": "s3:PutObject", "Condition": { "ArnLike": { "aws:SourceArn": { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginS3Bucket9C7276CA", "Arn" ] } }, "StringEquals": { "aws:SourceAccount": { "Ref": "AWS::AccountId" } } }, "Effect": "Allow", "Principal": { "Service": "logging.s3.amazonaws.com" }, "Resource": { "Fn::Join": [ "", [ { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginS3LoggingBucketA3DB7D64", "Arn" ] }, "/*" ] ] } } ], "Version": "2012-10-17" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.CfnBucketPolicy", "version": "2.143.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.BucketPolicy", "version": "2.143.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.Bucket", "version": "2.143.0" } }, "S3Bucket": { "id": "S3Bucket", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3Bucket", "children": { "Resource": { "id": "Resource", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3Bucket/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::S3::Bucket", "aws:cdk:cloudformation:props": { "bucketEncryption": { "serverSideEncryptionConfiguration": [ { "serverSideEncryptionByDefault": { "sseAlgorithm": "AES256" } } ] }, "lifecycleConfiguration": { "rules": [ { "noncurrentVersionTransitions": [ { "storageClass": "GLACIER", "transitionInDays": 90 } ], "status": "Enabled" } ] }, "loggingConfiguration": { "destinationBucketName": { "Ref": "testcloudfronts3legacyhttporiginS3LoggingBucketA3DB7D64" } }, "publicAccessBlockConfiguration": { "blockPublicAcls": false, "restrictPublicBuckets": false, "blockPublicPolicy": false, "ignorePublicAcls": false }, "versioningConfiguration": { "status": "Enabled" }, "websiteConfiguration": { "indexDocument": "index.html" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.CfnBucket", "version": "2.143.0" } }, "Policy": { "id": "Policy", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3Bucket/Policy", "children": { "Resource": { "id": "Resource", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3Bucket/Policy/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy", "aws:cdk:cloudformation:props": { "bucket": { "Ref": "testcloudfronts3legacyhttporiginS3Bucket9C7276CA" }, "policyDocument": { "Statement": [ { "Action": "s3:GetObject", "Effect": "Allow", "Principal": { "AWS": "*" }, "Resource": { "Fn::Join": [ "", [ { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginS3Bucket9C7276CA", "Arn" ] }, "/*" ] ] } }, { "Action": "s3:GetObject", "Condition": { "StringEquals": { "AWS:SourceArn": { "Fn::Join": [ "", [ "arn:aws:cloudfront::", { "Ref": "AWS::AccountId" }, ":distribution/", { "Ref": "testcloudfronts3legacyhttporiginCloudFrontDistributionAF04EDAB" } ] ] } } }, "Effect": "Allow", "Principal": { "Service": "cloudfront.amazonaws.com" }, "Resource": { "Fn::Join": [ "", [ { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginS3Bucket9C7276CA", "Arn" ] }, "/*" ] ] } } ], "Version": "2012-10-17" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.CfnBucketPolicy", "version": "2.143.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.BucketPolicy", "version": "2.143.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.Bucket", "version": "2.143.0" } }, "CloudfrontLoggingBucketAccessLog": { "id": "CloudfrontLoggingBucketAccessLog", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucketAccessLog", "children": { "Resource": { "id": "Resource", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucketAccessLog/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::S3::Bucket", "aws:cdk:cloudformation:props": { "bucketEncryption": { "serverSideEncryptionConfiguration": [ { "serverSideEncryptionByDefault": { "sseAlgorithm": "AES256" } } ] }, "publicAccessBlockConfiguration": { "blockPublicAcls": true, "blockPublicPolicy": true, "ignorePublicAcls": true, "restrictPublicBuckets": true }, "versioningConfiguration": { "status": "Enabled" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.CfnBucket", "version": "2.143.0" } }, "Policy": { "id": "Policy", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucketAccessLog/Policy", "children": { "Resource": { "id": "Resource", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucketAccessLog/Policy/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy", "aws:cdk:cloudformation:props": { "bucket": { "Ref": "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketAccessLog3AE680E5" }, "policyDocument": { "Statement": [ { "Action": "s3:*", "Condition": { "Bool": { "aws:SecureTransport": "false" } }, "Effect": "Deny", "Principal": { "AWS": "*" }, "Resource": [ { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketAccessLog3AE680E5", "Arn" ] }, { "Fn::Join": [ "", [ { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketAccessLog3AE680E5", "Arn" ] }, "/*" ] ] } ] }, { "Action": "s3:PutObject", "Condition": { "ArnLike": { "aws:SourceArn": { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketC643C2EE", "Arn" ] } }, "StringEquals": { "aws:SourceAccount": { "Ref": "AWS::AccountId" } } }, "Effect": "Allow", "Principal": { "Service": "logging.s3.amazonaws.com" }, "Resource": { "Fn::Join": [ "", [ { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketAccessLog3AE680E5", "Arn" ] }, "/*" ] ] } } ], "Version": "2012-10-17" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.CfnBucketPolicy", "version": "2.143.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.BucketPolicy", "version": "2.143.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.Bucket", "version": "2.143.0" } }, "CloudfrontLoggingBucket": { "id": "CloudfrontLoggingBucket", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucket", "children": { "Resource": { "id": "Resource", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucket/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::S3::Bucket", "aws:cdk:cloudformation:props": { "bucketEncryption": { "serverSideEncryptionConfiguration": [ { "serverSideEncryptionByDefault": { "sseAlgorithm": "AES256" } } ] }, "loggingConfiguration": { "destinationBucketName": { "Ref": "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketAccessLog3AE680E5" } }, "ownershipControls": { "rules": [ { "objectOwnership": "ObjectWriter" } ] }, "publicAccessBlockConfiguration": { "blockPublicAcls": true, "blockPublicPolicy": true, "ignorePublicAcls": true, "restrictPublicBuckets": true }, "versioningConfiguration": { "status": "Enabled" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.CfnBucket", "version": "2.143.0" } }, "Policy": { "id": "Policy", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucket/Policy", "children": { "Resource": { "id": "Resource", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucket/Policy/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy", "aws:cdk:cloudformation:props": { "bucket": { "Ref": "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketC643C2EE" }, "policyDocument": { "Statement": [ { "Action": "s3:*", "Condition": { "Bool": { "aws:SecureTransport": "false" } }, "Effect": "Deny", "Principal": { "AWS": "*" }, "Resource": [ { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketC643C2EE", "Arn" ] }, { "Fn::Join": [ "", [ { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketC643C2EE", "Arn" ] }, "/*" ] ] } ] } ], "Version": "2012-10-17" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.CfnBucketPolicy", "version": "2.143.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.BucketPolicy", "version": "2.143.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_s3.Bucket", "version": "2.143.0" } }, "CloudFrontDistribution": { "id": "CloudFrontDistribution", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudFrontDistribution", "children": { "Origin1": { "id": "Origin1", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudFrontDistribution/Origin1", "constructInfo": { "fqn": "constructs.Construct", "version": "10.3.0" } }, "Resource": { "id": "Resource", "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudFrontDistribution/Resource", "attributes": { "aws:cdk:cloudformation:type": "AWS::CloudFront::Distribution", "aws:cdk:cloudformation:props": { "distributionConfig": { "enabled": true, "origins": [ { "domainName": { "Fn::Select": [ 2, { "Fn::Split": [ "/", { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginS3Bucket9C7276CA", "WebsiteURL" ] } ] } ] }, "id": "cfts3bucketwithhttporigintestcloudfronts3legacyhttporiginCloudFrontDistributionOrigin15A81BB36", "customOriginConfig": { "originSslProtocols": [ "TLSv1.2" ], "originProtocolPolicy": "http-only" } } ], "defaultCacheBehavior": { "pathPattern": "*", "targetOriginId": "cfts3bucketwithhttporigintestcloudfronts3legacyhttporiginCloudFrontDistributionOrigin15A81BB36", "cachePolicyId": "658327ea-f89d-4fab-a63d-7e88639e58f6", "compress": true, "viewerProtocolPolicy": "redirect-to-https" }, "defaultRootObject": "index.html", "httpVersion": "http2", "ipv6Enabled": true, "logging": { "bucket": { "Fn::GetAtt": [ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketC643C2EE", "RegionalDomainName" ] } } } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_cloudfront.CfnDistribution", "version": "2.143.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.aws_cloudfront.Distribution", "version": "2.143.0" } } }, "constructInfo": { "fqn": "@aws-solutions-constructs/aws-cloudfront-s3.CloudFrontToS3", "version": "2.58.1" } }, "Integ": { "id": "Integ", "path": "cfts3-bucket-with-http-origin/Integ", "children": { "DefaultTest": { "id": "DefaultTest", "path": "cfts3-bucket-with-http-origin/Integ/DefaultTest", "children": { "Default": { "id": "Default", "path": "cfts3-bucket-with-http-origin/Integ/DefaultTest/Default", "constructInfo": { "fqn": "constructs.Construct", "version": "10.3.0" } }, "DeployAssert": { "id": "DeployAssert", "path": "cfts3-bucket-with-http-origin/Integ/DefaultTest/DeployAssert", "children": { "BootstrapVersion": { "id": "BootstrapVersion", "path": "cfts3-bucket-with-http-origin/Integ/DefaultTest/DeployAssert/BootstrapVersion", "constructInfo": { "fqn": "aws-cdk-lib.CfnParameter", "version": "2.143.0" } }, "CheckBootstrapVersion": { "id": "CheckBootstrapVersion", "path": "cfts3-bucket-with-http-origin/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion", "constructInfo": { "fqn": "aws-cdk-lib.CfnRule", "version": "2.143.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.Stack", "version": "2.143.0" } } }, "constructInfo": { "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase", "version": "2.143.0-alpha.0" } } }, "constructInfo": { "fqn": "@aws-cdk/integ-tests-alpha.IntegTest", "version": "2.143.0-alpha.0" } }, "BootstrapVersion": { "id": "BootstrapVersion", "path": "cfts3-bucket-with-http-origin/BootstrapVersion", "constructInfo": { "fqn": "aws-cdk-lib.CfnParameter", "version": "2.143.0" } }, "CheckBootstrapVersion": { "id": "CheckBootstrapVersion", "path": "cfts3-bucket-with-http-origin/CheckBootstrapVersion", "constructInfo": { "fqn": "aws-cdk-lib.CfnRule", "version": "2.143.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.Stack", "version": "2.143.0" } }, "Tree": { "id": "Tree", "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", "version": "10.3.0" } } }, "constructInfo": { "fqn": "aws-cdk-lib.App", "version": "2.143.0" } } }