@aws-solutions-constructs/aws-cloudfront-oai-s3 2.100.0 → 2.101.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/.jsii +269 -5
  2. package/lib/index.js +1 -1
  3. package/package.json +9 -9
  4. package/test/integ.cftoais3-custom-headers.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
  5. package/test/integ.cftoais3-custom-headers.js.snapshot/cdk.out +1 -1
  6. package/test/integ.cftoais3-custom-headers.js.snapshot/cftoais3-custom-headers.assets.json +4 -4
  7. package/test/integ.cftoais3-custom-headers.js.snapshot/cftoais3-custom-headers.metadata.json +355 -0
  8. package/test/integ.cftoais3-custom-headers.js.snapshot/cftoais3-custom-headers.template.json +2 -2
  9. package/test/integ.cftoais3-custom-headers.js.snapshot/cftoais3customheadersIntegDefaultTestDeployAssert5AA11BA9.assets.json +1 -1
  10. package/test/integ.cftoais3-custom-headers.js.snapshot/cftoais3customheadersIntegDefaultTestDeployAssert5AA11BA9.metadata.json +14 -0
  11. package/test/integ.cftoais3-custom-headers.js.snapshot/integ.json +2 -2
  12. package/test/integ.cftoais3-custom-headers.js.snapshot/manifest.json +100 -374
  13. package/test/integ.cftoais3-custom-headers.js.snapshot/tree.json +1 -1
  14. package/test/integ.cftoais3-custom-originPath.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
  15. package/test/integ.cftoais3-custom-originPath.js.snapshot/cdk.out +1 -1
  16. package/test/integ.cftoais3-custom-originPath.js.snapshot/cftoais3-custom-originPath.assets.json +4 -4
  17. package/test/integ.cftoais3-custom-originPath.js.snapshot/cftoais3-custom-originPath.metadata.json +341 -0
  18. package/test/integ.cftoais3-custom-originPath.js.snapshot/cftoais3-custom-originPath.template.json +1 -1
  19. package/test/integ.cftoais3-custom-originPath.js.snapshot/cftoais3customoriginPathIntegDefaultTestDeployAssert1C351914.assets.json +1 -1
  20. package/test/integ.cftoais3-custom-originPath.js.snapshot/cftoais3customoriginPathIntegDefaultTestDeployAssert1C351914.metadata.json +14 -0
  21. package/test/integ.cftoais3-custom-originPath.js.snapshot/integ.json +2 -2
  22. package/test/integ.cftoais3-custom-originPath.js.snapshot/manifest.json +100 -360
  23. package/test/integ.cftoais3-custom-originPath.js.snapshot/tree.json +1 -1
  24. package/test/integ.cftoais3-customLoggingBuckets.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
  25. package/test/integ.cftoais3-customLoggingBuckets.js.snapshot/cdk.out +1 -1
  26. package/test/integ.cftoais3-customLoggingBuckets.js.snapshot/cftoais3-customLoggingBuckets.assets.json +4 -4
  27. package/test/integ.cftoais3-customLoggingBuckets.js.snapshot/cftoais3-customLoggingBuckets.metadata.json +379 -0
  28. package/test/integ.cftoais3-customLoggingBuckets.js.snapshot/cftoais3-customLoggingBuckets.template.json +1 -1
  29. package/test/integ.cftoais3-customLoggingBuckets.js.snapshot/cftoais3customLoggingBucketsIntegDefaultTestDeployAssert8F33EF2A.assets.json +1 -1
  30. package/test/integ.cftoais3-customLoggingBuckets.js.snapshot/cftoais3customLoggingBucketsIntegDefaultTestDeployAssert8F33EF2A.metadata.json +14 -0
  31. package/test/integ.cftoais3-customLoggingBuckets.js.snapshot/integ.json +2 -2
  32. package/test/integ.cftoais3-customLoggingBuckets.js.snapshot/manifest.json +100 -398
  33. package/test/integ.cftoais3-customLoggingBuckets.js.snapshot/tree.json +1 -1
  34. package/test/integ.cftoais3-existing-bucket.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
  35. package/test/integ.cftoais3-existing-bucket.js.snapshot/cdk.out +1 -1
  36. package/test/integ.cftoais3-existing-bucket.js.snapshot/cftoais3-existing-bucket.assets.json +4 -4
  37. package/test/integ.cftoais3-existing-bucket.js.snapshot/cftoais3-existing-bucket.metadata.json +355 -0
  38. package/test/integ.cftoais3-existing-bucket.js.snapshot/cftoais3-existing-bucket.template.json +1 -1
  39. package/test/integ.cftoais3-existing-bucket.js.snapshot/cftoais3existingbucketIntegDefaultTestDeployAssertB7627F26.assets.json +1 -1
  40. package/test/integ.cftoais3-existing-bucket.js.snapshot/cftoais3existingbucketIntegDefaultTestDeployAssertB7627F26.metadata.json +14 -0
  41. package/test/integ.cftoais3-existing-bucket.js.snapshot/integ.json +2 -2
  42. package/test/integ.cftoais3-existing-bucket.js.snapshot/manifest.json +100 -374
  43. package/test/integ.cftoais3-existing-bucket.js.snapshot/tree.json +1 -1
  44. package/test/integ.cftoais3-no-arguments.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
  45. package/test/integ.cftoais3-no-arguments.js.snapshot/cdk.out +1 -1
  46. package/test/integ.cftoais3-no-arguments.js.snapshot/cftoais3-no-arguments.assets.json +4 -4
  47. package/test/integ.cftoais3-no-arguments.js.snapshot/cftoais3-no-arguments.metadata.json +341 -0
  48. package/test/integ.cftoais3-no-arguments.js.snapshot/cftoais3-no-arguments.template.json +1 -1
  49. package/test/integ.cftoais3-no-arguments.js.snapshot/cftoais3noargumentsIntegDefaultTestDeployAssert5CF03E3D.assets.json +1 -1
  50. package/test/integ.cftoais3-no-arguments.js.snapshot/cftoais3noargumentsIntegDefaultTestDeployAssert5CF03E3D.metadata.json +14 -0
  51. package/test/integ.cftoais3-no-arguments.js.snapshot/integ.json +2 -2
  52. package/test/integ.cftoais3-no-arguments.js.snapshot/manifest.json +100 -360
  53. package/test/integ.cftoais3-no-arguments.js.snapshot/tree.json +1 -1
  54. package/test/integ.cftoais3-no-cloudfront-s3-access-logs.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
  55. package/test/integ.cftoais3-no-cloudfront-s3-access-logs.js.snapshot/cdk.out +1 -1
  56. package/test/integ.cftoais3-no-cloudfront-s3-access-logs.js.snapshot/cftoais3-no-cloudfront-s3-access-logs.assets.json +4 -4
  57. package/test/integ.cftoais3-no-cloudfront-s3-access-logs.js.snapshot/cftoais3-no-cloudfront-s3-access-logs.metadata.json +225 -0
  58. package/test/integ.cftoais3-no-cloudfront-s3-access-logs.js.snapshot/cftoais3-no-cloudfront-s3-access-logs.template.json +1 -1
  59. package/test/integ.cftoais3-no-cloudfront-s3-access-logs.js.snapshot/cftoais3nocloudfronts3accesslogsIntegDefaultTestDeployAssert6D810275.assets.json +1 -1
  60. package/test/integ.cftoais3-no-cloudfront-s3-access-logs.js.snapshot/cftoais3nocloudfronts3accesslogsIntegDefaultTestDeployAssert6D810275.metadata.json +14 -0
  61. package/test/integ.cftoais3-no-cloudfront-s3-access-logs.js.snapshot/integ.json +2 -2
  62. package/test/integ.cftoais3-no-cloudfront-s3-access-logs.js.snapshot/manifest.json +100 -268
  63. package/test/integ.cftoais3-no-cloudfront-s3-access-logs.js.snapshot/tree.json +1 -1
  64. package/test/integ.cftoais3-no-logging.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
  65. package/test/integ.cftoais3-no-logging.js.snapshot/cdk.out +1 -1
  66. package/test/integ.cftoais3-no-logging.js.snapshot/cftoais3-no-logging.assets.json +4 -4
  67. package/test/integ.cftoais3-no-logging.js.snapshot/cftoais3-no-logging.metadata.json +167 -0
  68. package/test/integ.cftoais3-no-logging.js.snapshot/cftoais3-no-logging.template.json +1 -1
  69. package/test/integ.cftoais3-no-logging.js.snapshot/cftoais3nologgingIntegDefaultTestDeployAssertCED06EE4.assets.json +1 -1
  70. package/test/integ.cftoais3-no-logging.js.snapshot/cftoais3nologgingIntegDefaultTestDeployAssertCED06EE4.metadata.json +14 -0
  71. package/test/integ.cftoais3-no-logging.js.snapshot/integ.json +2 -2
  72. package/test/integ.cftoais3-no-logging.js.snapshot/manifest.json +100 -222
  73. package/test/integ.cftoais3-no-logging.js.snapshot/tree.json +1 -1
@@ -1 +1 @@
1
- {"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"2.206.0"},"children":{"cftoais3-existing-bucket":{"id":"cftoais3-existing-bucket","path":"cftoais3-existing-bucket","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.206.0"},"children":{"scrapBucketLog":{"id":"scrapBucketLog","path":"cftoais3-existing-bucket/scrapBucketLog","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.206.0","metadata":[{"versioned":true,"removalPolicy":"destroy","autoDeleteObjects":true,"encryption":"S3_MANAGED","enforceSSL":true}]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/scrapBucketLog/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftoais3-existing-bucket/scrapBucketLog/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.206.0","metadata":[{"bucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/scrapBucketLog/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"scrapBucketLog7B53B25C"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["scrapBucketLog7B53B25C","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketLog7B53B25C","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["scrapBucketLog7B53B25C","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketLog7B53B25C","Arn"]},"/*"]]}]},{"Action":"s3:PutObject","Condition":{"ArnLike":{"aws:SourceArn":{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]}},"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}}},"Effect":"Allow","Principal":{"Service":"logging.s3.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketLog7B53B25C","Arn"]},"/*"]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"cftoais3-existing-bucket/scrapBucketLog/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.206.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"cftoais3-existing-bucket/scrapBucketLog/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}}}}}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"cftoais3-existing-bucket/Custom::S3AutoDeleteObjectsCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"2.206.0"},"children":{"Staging":{"id":"Staging","path":"cftoais3-existing-bucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.206.0"}},"Role":{"id":"Role","path":"cftoais3-existing-bucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}},"Handler":{"id":"Handler","path":"cftoais3-existing-bucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}}}},"scrapBucket":{"id":"scrapBucket","path":"cftoais3-existing-bucket/scrapBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.206.0","metadata":[{"versioned":true,"removalPolicy":"destroy","autoDeleteObjects":true,"encryption":"S3_MANAGED","enforceSSL":true,"serverAccessLogsBucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/scrapBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"loggingConfiguration":{"destinationBucketName":{"Ref":"scrapBucketLog7B53B25C"}},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftoais3-existing-bucket/scrapBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.206.0","metadata":[{"bucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/scrapBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"scrapBucketB11863B7"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},"/*"]]}]},{"Action":"s3:GetObject","Effect":"Allow","Principal":{"CanonicalUser":[{"Fn::GetAtt":["testcloudfrontoais3CloudFrontDistributionOrigin2S3Origin226F4E91","S3CanonicalUserId"]},{"Fn::GetAtt":["testcloudfrontoais3constructsGeneratedOaiA468F478","S3CanonicalUserId"]}]},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},"/*"]]}},{"Action":"s3:GetObject","Condition":{"StringEquals":{"AWS:SourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":cloudfront::",{"Ref":"AWS::AccountId"},":distribution/",{"Ref":"testcloudfrontoais3CloudFrontDistribution0E089CC5"}]]}}},"Effect":"Allow","Principal":{"Service":"cloudfront.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},"/*"]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"cftoais3-existing-bucket/scrapBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.206.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"cftoais3-existing-bucket/scrapBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}}}}}},"test-cloudfront-oai-s3":{"id":"test-cloudfront-oai-s3","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3","constructInfo":{"fqn":"@aws-solutions-constructs/aws-cloudfront-oai-s3.CloudFrontToOaiToS3","version":"2.86.0"},"children":{"SetHttpSecurityHeaders":{"id":"SetHttpSecurityHeaders","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/SetHttpSecurityHeaders","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.Function","version":"2.206.0","metadata":[{"functionName":"*","code":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/SetHttpSecurityHeaders/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnFunction","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::Function","aws:cdk:cloudformation:props":{"autoPublish":true,"functionCode":"function handler(event) { var response = event.response; var headers = response.headers; headers['strict-transport-security'] = { value: 'max-age=63072000; includeSubdomains; preload'}; headers['content-security-policy'] = { value: \"default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'\"}; headers['x-content-type-options'] = { value: 'nosniff'}; headers['x-frame-options'] = {value: 'DENY'}; headers['x-xss-protection'] = {value: '1; mode=block'}; return response; }","functionConfig":{"comment":"SetHttpSecurityHeadersc88f9647f3c3880b7dc1e2842431b60acc15da4a92","runtime":"cloudfront-js-1.0"},"name":"SetHttpSecurityHeadersc88f9647f3c3880b7dc1e2842431b60acc15da4a92"}}}}},"CloudfrontLoggingBucketAccessLog":{"id":"CloudfrontLoggingBucketAccessLog","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.206.0","metadata":[{"encryption":"S3_MANAGED","versioned":true,"blockPublicAccess":"*","removalPolicy":"destroy","enforceSSL":true,"autoDeleteObjects":true}]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.206.0"},"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},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.206.0","metadata":[{"bucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80","Arn"]},"/*"]]}]},{"Action":"s3:PutObject","Condition":{"ArnLike":{"aws:SourceArn":{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","Arn"]}},"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}}},"Effect":"Allow","Principal":{"Service":"logging.s3.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80","Arn"]},"/*"]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.206.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}}}}}},"CloudfrontLoggingBucket":{"id":"CloudfrontLoggingBucket","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.206.0","metadata":[{"encryption":"S3_MANAGED","versioned":true,"blockPublicAccess":"*","removalPolicy":"destroy","enforceSSL":true,"autoDeleteObjects":true,"objectOwnership":"ObjectWriter","serverAccessLogsBucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"loggingConfiguration":{"destinationBucketName":{"Ref":"testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80"}},"ownershipControls":{"rules":[{"objectOwnership":"ObjectWriter"}]},"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.206.0","metadata":[{"bucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"testcloudfrontoais3CloudfrontLoggingBucket55AA79FC"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","Arn"]},"/*"]]}]}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.206.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}}}}}},"constructsGeneratedOai":{"id":"constructsGeneratedOai","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/constructsGeneratedOai","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.OriginAccessIdentity","version":"2.206.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/constructsGeneratedOai/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnCloudFrontOriginAccessIdentity","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::CloudFrontOriginAccessIdentity","aws:cdk:cloudformation:props":{"cloudFrontOriginAccessIdentityConfig":{"comment":"Allows CloudFront to reach the bucket"}}}}}},"CloudFrontDistribution":{"id":"CloudFrontDistribution","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.Distribution","version":"2.206.0","metadata":[{"defaultBehavior":{"origin":"*","viewerProtocolPolicy":"redirect-to-https","functionAssociations":[{"eventType":"viewer-response","function":"*"}]},"enableLogging":true,"logBucket":"*","defaultRootObject":"*"},{"addBehavior":["*",{},{"cachePolicy":"*"}]}]},"children":{"Origin1":{"id":"Origin1","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution/Origin1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnDistribution","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::Distribution","aws:cdk:cloudformation:props":{"distributionConfig":{"enabled":true,"origins":[{"domainName":{"Fn::GetAtt":["scrapBucketB11863B7","RegionalDomainName"]},"id":"cftoais3existingbuckettestcloudfrontoais3CloudFrontDistributionOrigin151240FB9","s3OriginConfig":{"originAccessIdentity":{"Fn::Join":["",["origin-access-identity/cloudfront/",{"Ref":"testcloudfrontoais3constructsGeneratedOaiA468F478"}]]}}},{"domainName":{"Fn::GetAtt":["scrapBucketB11863B7","RegionalDomainName"]},"id":"cftoais3existingbuckettestcloudfrontoais3CloudFrontDistributionOrigin2153DAD64","s3OriginConfig":{"originAccessIdentity":{"Fn::Join":["",["origin-access-identity/cloudfront/",{"Ref":"testcloudfrontoais3CloudFrontDistributionOrigin2S3Origin226F4E91"}]]}}}],"defaultCacheBehavior":{"pathPattern":"*","targetOriginId":"cftoais3existingbuckettestcloudfrontoais3CloudFrontDistributionOrigin151240FB9","cachePolicyId":"658327ea-f89d-4fab-a63d-7e88639e58f6","compress":true,"viewerProtocolPolicy":"redirect-to-https","functionAssociations":[{"functionArn":{"Fn::GetAtt":["testcloudfrontoais3SetHttpSecurityHeaders4EB3C97B","FunctionARN"]},"eventType":"viewer-response"}]},"cacheBehaviors":[{"pathPattern":"/images/*.jpg","targetOriginId":"cftoais3existingbuckettestcloudfrontoais3CloudFrontDistributionOrigin2153DAD64","cachePolicyId":{"Ref":"myCachePolicy16CE2FCF"},"compress":true,"viewerProtocolPolicy":"allow-all"}],"defaultRootObject":"index.html","httpVersion":"http2","ipv6Enabled":true,"logging":{"bucket":{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","RegionalDomainName"]}}}}}},"Origin2":{"id":"Origin2","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution/Origin2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"},"children":{"S3Origin":{"id":"S3Origin","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution/Origin2/S3Origin","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.OriginAccessIdentity","version":"2.206.0","metadata":[{}]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution/Origin2/S3Origin/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnCloudFrontOriginAccessIdentity","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::CloudFrontOriginAccessIdentity","aws:cdk:cloudformation:props":{"cloudFrontOriginAccessIdentityConfig":{"comment":"Identity for cftoais3existingbuckettestcloudfrontoais3CloudFrontDistributionOrigin2153DAD64"}}}}}}}}}}}},"myCachePolicy":{"id":"myCachePolicy","path":"cftoais3-existing-bucket/myCachePolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CachePolicy","version":"2.206.0","metadata":[{"cachePolicyName":"*","defaultTtl":"*","minTtl":"*","maxTtl":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/myCachePolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnCachePolicy","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::CachePolicy","aws:cdk:cloudformation:props":{"cachePolicyConfig":{"name":"MyPolicy","minTtl":0,"maxTtl":0,"defaultTtl":0,"parametersInCacheKeyAndForwardedToOrigin":{"cookiesConfig":{"cookieBehavior":"none"},"headersConfig":{"headerBehavior":"none"},"enableAcceptEncodingGzip":false,"enableAcceptEncodingBrotli":false,"queryStringsConfig":{"queryStringBehavior":"none"}}}}}}}},"Integ":{"id":"Integ","path":"cftoais3-existing-bucket/Integ","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"2.206.0-alpha.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"cftoais3-existing-bucket/Integ/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"2.206.0-alpha.0"},"children":{"Default":{"id":"Default","path":"cftoais3-existing-bucket/Integ/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"cftoais3-existing-bucket/Integ/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.206.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"cftoais3-existing-bucket/Integ/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.206.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftoais3-existing-bucket/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.206.0"}}}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"cftoais3-existing-bucket/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.206.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftoais3-existing-bucket/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.206.0"}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}
1
+ {"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"2.246.0"},"children":{"cftoais3-existing-bucket":{"id":"cftoais3-existing-bucket","path":"cftoais3-existing-bucket","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.246.0"},"children":{"scrapBucketLog":{"id":"scrapBucketLog","path":"cftoais3-existing-bucket/scrapBucketLog","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/scrapBucketLog/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftoais3-existing-bucket/scrapBucketLog/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/scrapBucketLog/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"scrapBucketLog7B53B25C"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["scrapBucketLog7B53B25C","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketLog7B53B25C","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["scrapBucketLog7B53B25C","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketLog7B53B25C","Arn"]},"/*"]]}]},{"Action":"s3:PutObject","Condition":{"ArnLike":{"aws:SourceArn":{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]}},"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}}},"Effect":"Allow","Principal":{"Service":"logging.s3.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketLog7B53B25C","Arn"]},"/*"]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"cftoais3-existing-bucket/scrapBucketLog/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.246.0"},"children":{"Default":{"id":"Default","path":"cftoais3-existing-bucket/scrapBucketLog/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.246.0"}}}}}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"cftoais3-existing-bucket/Custom::S3AutoDeleteObjectsCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"2.246.0"},"children":{"Staging":{"id":"Staging","path":"cftoais3-existing-bucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.246.0"}},"Role":{"id":"Role","path":"cftoais3-existing-bucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.246.0"}},"Handler":{"id":"Handler","path":"cftoais3-existing-bucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.246.0"}}}},"scrapBucket":{"id":"scrapBucket","path":"cftoais3-existing-bucket/scrapBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/scrapBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"loggingConfiguration":{"destinationBucketName":{"Ref":"scrapBucketLog7B53B25C"}},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftoais3-existing-bucket/scrapBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/scrapBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"scrapBucketB11863B7"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},"/*"]]}]},{"Action":"s3:GetObject","Effect":"Allow","Principal":{"CanonicalUser":[{"Fn::GetAtt":["testcloudfrontoais3CloudFrontDistributionOrigin2S3Origin226F4E91","S3CanonicalUserId"]},{"Fn::GetAtt":["testcloudfrontoais3constructsGeneratedOaiA468F478","S3CanonicalUserId"]}]},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},"/*"]]}},{"Action":"s3:GetObject","Condition":{"StringEquals":{"AWS:SourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":cloudfront::",{"Ref":"AWS::AccountId"},":distribution/",{"Ref":"testcloudfrontoais3CloudFrontDistribution0E089CC5"}]]}}},"Effect":"Allow","Principal":{"Service":"cloudfront.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["scrapBucketB11863B7","Arn"]},"/*"]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"cftoais3-existing-bucket/scrapBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.246.0"},"children":{"Default":{"id":"Default","path":"cftoais3-existing-bucket/scrapBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.246.0"}}}}}},"test-cloudfront-oai-s3":{"id":"test-cloudfront-oai-s3","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3","constructInfo":{"fqn":"@aws-solutions-constructs/aws-cloudfront-oai-s3.CloudFrontToOaiToS3","version":"2.100.1"},"children":{"SetHttpSecurityHeaders":{"id":"SetHttpSecurityHeaders","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/SetHttpSecurityHeaders","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.Function","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/SetHttpSecurityHeaders/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnFunction","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::Function","aws:cdk:cloudformation:props":{"autoPublish":true,"functionCode":"function handler(event) { var response = event.response; var headers = response.headers; headers['strict-transport-security'] = { value: 'max-age=63072000; includeSubdomains; preload'}; headers['content-security-policy'] = { value: \"default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'\"}; headers['x-content-type-options'] = { value: 'nosniff'}; headers['x-frame-options'] = {value: 'DENY'}; headers['x-xss-protection'] = {value: '1; mode=block'}; return response; }","functionConfig":{"comment":"SetHttpSecurityHeadersc88f9647f3c3880b7dc1e2842431b60acc15da4a92","runtime":"cloudfront-js-2.0"},"name":"SetHttpSecurityHeadersc88f9647f3c3880b7dc1e2842431b60acc15da4a92"}}}}},"CloudfrontLoggingBucketAccessLog":{"id":"CloudfrontLoggingBucketAccessLog","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.246.0"},"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},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80","Arn"]},"/*"]]}]},{"Action":"s3:PutObject","Condition":{"ArnLike":{"aws:SourceArn":{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","Arn"]}},"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}}},"Effect":"Allow","Principal":{"Service":"logging.s3.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80","Arn"]},"/*"]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.246.0"},"children":{"Default":{"id":"Default","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.246.0"}}}}}},"CloudfrontLoggingBucket":{"id":"CloudfrontLoggingBucket","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"loggingConfiguration":{"destinationBucketName":{"Ref":"testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80"}},"ownershipControls":{"rules":[{"objectOwnership":"ObjectWriter"}]},"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"testcloudfrontoais3CloudfrontLoggingBucket55AA79FC"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","Arn"]},"/*"]]}]}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.246.0"},"children":{"Default":{"id":"Default","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.246.0"}}}}}},"constructsGeneratedOai":{"id":"constructsGeneratedOai","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/constructsGeneratedOai","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.OriginAccessIdentity","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/constructsGeneratedOai/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnCloudFrontOriginAccessIdentity","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::CloudFrontOriginAccessIdentity","aws:cdk:cloudformation:props":{"cloudFrontOriginAccessIdentityConfig":{"comment":"Allows CloudFront to reach the bucket"}}}}}},"CloudFrontDistribution":{"id":"CloudFrontDistribution","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.Distribution","version":"2.246.0"},"children":{"Origin1":{"id":"Origin1","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution/Origin1","constructInfo":{"fqn":"constructs.Construct","version":"10.5.1"}},"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnDistribution","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::Distribution","aws:cdk:cloudformation:props":{"distributionConfig":{"enabled":true,"origins":[{"domainName":{"Fn::GetAtt":["scrapBucketB11863B7","RegionalDomainName"]},"id":"cftoais3existingbuckettestcloudfrontoais3CloudFrontDistributionOrigin151240FB9","s3OriginConfig":{"originAccessIdentity":{"Fn::Join":["",["origin-access-identity/cloudfront/",{"Ref":"testcloudfrontoais3constructsGeneratedOaiA468F478"}]]}}},{"domainName":{"Fn::GetAtt":["scrapBucketB11863B7","RegionalDomainName"]},"id":"cftoais3existingbuckettestcloudfrontoais3CloudFrontDistributionOrigin2153DAD64","s3OriginConfig":{"originAccessIdentity":{"Fn::Join":["",["origin-access-identity/cloudfront/",{"Ref":"testcloudfrontoais3CloudFrontDistributionOrigin2S3Origin226F4E91"}]]}}}],"defaultCacheBehavior":{"pathPattern":"*","targetOriginId":"cftoais3existingbuckettestcloudfrontoais3CloudFrontDistributionOrigin151240FB9","cachePolicyId":"658327ea-f89d-4fab-a63d-7e88639e58f6","compress":true,"viewerProtocolPolicy":"redirect-to-https","functionAssociations":[{"functionArn":{"Fn::GetAtt":["testcloudfrontoais3SetHttpSecurityHeaders4EB3C97B","FunctionARN"]},"eventType":"viewer-response"}]},"cacheBehaviors":[{"pathPattern":"/images/*.jpg","targetOriginId":"cftoais3existingbuckettestcloudfrontoais3CloudFrontDistributionOrigin2153DAD64","cachePolicyId":{"Ref":"myCachePolicy16CE2FCF"},"compress":true,"viewerProtocolPolicy":"allow-all"}],"defaultRootObject":"index.html","httpVersion":"http2","ipv6Enabled":true,"logging":{"bucket":{"Fn::GetAtt":["testcloudfrontoais3CloudfrontLoggingBucket55AA79FC","RegionalDomainName"]}}}}}},"Origin2":{"id":"Origin2","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution/Origin2","constructInfo":{"fqn":"constructs.Construct","version":"10.5.1"},"children":{"S3Origin":{"id":"S3Origin","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution/Origin2/S3Origin","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.OriginAccessIdentity","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/test-cloudfront-oai-s3/CloudFrontDistribution/Origin2/S3Origin/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnCloudFrontOriginAccessIdentity","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::CloudFrontOriginAccessIdentity","aws:cdk:cloudformation:props":{"cloudFrontOriginAccessIdentityConfig":{"comment":"Identity for cftoais3existingbuckettestcloudfrontoais3CloudFrontDistributionOrigin2153DAD64"}}}}}}}}}}}},"myCachePolicy":{"id":"myCachePolicy","path":"cftoais3-existing-bucket/myCachePolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CachePolicy","version":"2.246.0"},"children":{"Resource":{"id":"Resource","path":"cftoais3-existing-bucket/myCachePolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnCachePolicy","version":"2.246.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::CachePolicy","aws:cdk:cloudformation:props":{"cachePolicyConfig":{"name":"MyPolicy","minTtl":0,"maxTtl":0,"defaultTtl":0,"parametersInCacheKeyAndForwardedToOrigin":{"cookiesConfig":{"cookieBehavior":"none"},"headersConfig":{"headerBehavior":"none"},"enableAcceptEncodingGzip":false,"enableAcceptEncodingBrotli":false,"queryStringsConfig":{"queryStringBehavior":"none"}}}}}}}},"Integ":{"id":"Integ","path":"cftoais3-existing-bucket/Integ","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"2.246.0-alpha.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"cftoais3-existing-bucket/Integ/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"2.246.0-alpha.0"},"children":{"Default":{"id":"Default","path":"cftoais3-existing-bucket/Integ/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.5.1"}},"DeployAssert":{"id":"DeployAssert","path":"cftoais3-existing-bucket/Integ/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.246.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"cftoais3-existing-bucket/Integ/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.246.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftoais3-existing-bucket/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.246.0"}}}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"cftoais3-existing-bucket/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.246.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftoais3-existing-bucket/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.246.0"}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.5.1"}}}}}
@@ -0,0 +1 @@
1
+ "use strict";var f=Object.create,i=Object.defineProperty,I=Object.getOwnPropertyDescriptor,C=Object.getOwnPropertyNames,w=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty,A=(t,e)=>{for(var o in e)i(t,o,{get:e[o],enumerable:!0})},d=(t,e,o,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of C(e))!P.call(t,s)&&s!==o&&i(t,s,{get:()=>e[s],enumerable:!(r=I(e,s))||r.enumerable});return t},l=(t,e,o)=>(o=t!=null?f(w(t)):{},d(e||!t||!t.__esModule?i(o,"default",{value:t,enumerable:!0}):o,t)),B=t=>d(i({},"__esModule",{value:!0}),t),q={};A(q,{autoDeleteHandler:()=>S,handler:()=>H}),module.exports=B(q);var h=require("@aws-sdk/client-s3"),y=l(require("https")),m=l(require("url")),a={sendHttpRequest:D,log:T,includeStackTraces:!0,userHandlerIndex:"./index"},p="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",L="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";function R(t){return async(e,o)=>{let r={...e,ResponseURL:"..."};if(a.log(JSON.stringify(r,void 0,2)),e.RequestType==="Delete"&&e.PhysicalResourceId===p){a.log("ignoring DELETE event caused by a failed CREATE event"),await u("SUCCESS",e);return}try{let s=await t(r,o),n=k(e,s);await u("SUCCESS",n)}catch(s){let n={...e,Reason:a.includeStackTraces?s.stack:s.message};n.PhysicalResourceId||(e.RequestType==="Create"?(a.log("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),n.PhysicalResourceId=p):a.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(e)}`)),await u("FAILED",n)}}}function k(t,e={}){let o=e.PhysicalResourceId??t.PhysicalResourceId??t.RequestId;if(t.RequestType==="Delete"&&o!==t.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${t.PhysicalResourceId}" to "${e.PhysicalResourceId}" during deletion`);return{...t,...e,PhysicalResourceId:o}}async function u(t,e){let o={Status:t,Reason:e.Reason??t,StackId:e.StackId,RequestId:e.RequestId,PhysicalResourceId:e.PhysicalResourceId||L,LogicalResourceId:e.LogicalResourceId,NoEcho:e.NoEcho,Data:e.Data},r=m.parse(e.ResponseURL),s=`${r.protocol}//${r.hostname}/${r.pathname}?***`;a.log("submit response to cloudformation",s,o);let n=JSON.stringify(o),E={hostname:r.hostname,path:r.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(n,"utf8")}};await O({attempts:5,sleep:1e3},a.sendHttpRequest)(E,n)}async function D(t,e){return new Promise((o,r)=>{try{let s=y.request(t,n=>{n.resume(),!n.statusCode||n.statusCode>=400?r(new Error(`Unsuccessful HTTP response: ${n.statusCode}`)):o()});s.on("error",r),s.write(e),s.end()}catch(s){r(s)}})}function T(t,...e){console.log(t,...e)}function O(t,e){return async(...o)=>{let r=t.attempts,s=t.sleep;for(;;)try{return await e(...o)}catch(n){if(r--<=0)throw n;await b(Math.floor(Math.random()*s)),s*=2}}}async function b(t){return new Promise(e=>setTimeout(e,t))}var g="aws-cdk:auto-delete-objects",x=JSON.stringify({Version:"2012-10-17",Statement:[]}),c=new h.S3({}),H=R(S);async function S(t){switch(t.RequestType){case"Create":return;case"Update":return{PhysicalResourceId:(await F(t)).PhysicalResourceId};case"Delete":return N(t.ResourceProperties?.BucketName)}}async function F(t){let e=t,o=e.OldResourceProperties?.BucketName;return{PhysicalResourceId:e.ResourceProperties?.BucketName??o}}async function _(t){try{let e=(await c.getBucketPolicy({Bucket:t}))?.Policy??x,o=JSON.parse(e);o.Statement.push({Principal:"*",Effect:"Deny",Action:["s3:PutObject"],Resource:[`arn:aws:s3:::${t}/*`]}),await c.putBucketPolicy({Bucket:t,Policy:JSON.stringify(o)})}catch(e){if(e.name==="NoSuchBucket")throw e;console.log(`Could not set new object deny policy on bucket '${t}' prior to deletion.`)}}async function U(t){let e;do{e=await c.listObjectVersions({Bucket:t});let o=[...e.Versions??[],...e.DeleteMarkers??[]];if(o.length===0)return;let r=o.map(s=>({Key:s.Key,VersionId:s.VersionId}));await c.deleteObjects({Bucket:t,Delete:{Objects:r}})}while(e?.IsTruncated)}async function N(t){if(!t)throw new Error("No BucketName was provided.");try{if(!await W(t)){console.log(`Bucket does not have '${g}' tag, skipping cleaning.`);return}await _(t),await U(t)}catch(e){if(e.name==="NoSuchBucket"){console.log(`Bucket '${t}' does not exist.`);return}throw e}}async function W(t){return(await c.getBucketTagging({Bucket:t})).TagSet?.some(o=>o.Key===g&&o.Value==="true")}
@@ -1 +1 @@
1
- {"version":"45.0.0"}
1
+ {"version":"53.0.0"}
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "45.0.0",
2
+ "version": "53.0.0",
3
3
  "files": {
4
4
  "faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6": {
5
5
  "displayName": "cftoais3-no-arguments/Custom::S3AutoDeleteObjectsCustomResourceProvider Code",
@@ -15,16 +15,16 @@
15
15
  }
16
16
  }
17
17
  },
18
- "efd3f83173941188cefd509c0f35d1b4103dd5ee146d78d045a9d901579b5f95": {
18
+ "b6785e7346ec9db69ae1ed78431c17d04a42348ce68a1ab8b462116fae61515c": {
19
19
  "displayName": "cftoais3-no-arguments Template",
20
20
  "source": {
21
21
  "path": "cftoais3-no-arguments.template.json",
22
22
  "packaging": "file"
23
23
  },
24
24
  "destinations": {
25
- "current_account-current_region-493c0e0a": {
25
+ "current_account-current_region-10416952": {
26
26
  "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
27
- "objectKey": "efd3f83173941188cefd509c0f35d1b4103dd5ee146d78d045a9d901579b5f95.json",
27
+ "objectKey": "b6785e7346ec9db69ae1ed78431c17d04a42348ce68a1ab8b462116fae61515c.json",
28
28
  "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
29
29
  }
30
30
  }
@@ -0,0 +1,341 @@
1
+ {
2
+ "/cftoais3-no-arguments/Custom::S3AutoDeleteObjectsCustomResourceProvider": [
3
+ {
4
+ "type": "aws:cdk:is-custom-resource-handler-customResourceProvider",
5
+ "data": true
6
+ }
7
+ ],
8
+ "/cftoais3-no-arguments/BootstrapVersion": [
9
+ {
10
+ "type": "aws:cdk:logicalId",
11
+ "data": "BootstrapVersion"
12
+ }
13
+ ],
14
+ "/cftoais3-no-arguments/CheckBootstrapVersion": [
15
+ {
16
+ "type": "aws:cdk:logicalId",
17
+ "data": "CheckBootstrapVersion"
18
+ }
19
+ ],
20
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3LoggingBucket": [
21
+ {
22
+ "type": "aws:cdk:analytics:construct",
23
+ "data": {
24
+ "encryption": "S3_MANAGED",
25
+ "versioned": true,
26
+ "blockPublicAccess": "*",
27
+ "removalPolicy": "destroy",
28
+ "enforceSSL": true,
29
+ "autoDeleteObjects": true
30
+ }
31
+ }
32
+ ],
33
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3Bucket": [
34
+ {
35
+ "type": "aws:cdk:analytics:construct",
36
+ "data": {
37
+ "encryption": "S3_MANAGED",
38
+ "versioned": true,
39
+ "blockPublicAccess": "*",
40
+ "removalPolicy": "destroy",
41
+ "enforceSSL": true,
42
+ "lifecycleRules": [
43
+ {
44
+ "noncurrentVersionTransitions": [
45
+ {
46
+ "storageClass": "*"
47
+ }
48
+ ]
49
+ }
50
+ ],
51
+ "serverAccessLogsBucket": "*",
52
+ "autoDeleteObjects": true
53
+ }
54
+ },
55
+ {
56
+ "type": "aws:cdk:analytics:method",
57
+ "data": {
58
+ "addLifecycleRule": [
59
+ {
60
+ "noncurrentVersionTransitions": [
61
+ {
62
+ "storageClass": "*"
63
+ }
64
+ ]
65
+ },
66
+ "*",
67
+ "*"
68
+ ]
69
+ }
70
+ }
71
+ ],
72
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/SetHttpSecurityHeaders": [
73
+ {
74
+ "type": "aws:cdk:analytics:construct",
75
+ "data": {
76
+ "functionName": "*",
77
+ "code": "*"
78
+ }
79
+ }
80
+ ],
81
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog": [
82
+ {
83
+ "type": "aws:cdk:analytics:construct",
84
+ "data": {
85
+ "encryption": "S3_MANAGED",
86
+ "versioned": true,
87
+ "blockPublicAccess": "*",
88
+ "removalPolicy": "destroy",
89
+ "enforceSSL": true,
90
+ "autoDeleteObjects": true
91
+ }
92
+ }
93
+ ],
94
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucket": [
95
+ {
96
+ "type": "aws:cdk:analytics:construct",
97
+ "data": {
98
+ "encryption": "S3_MANAGED",
99
+ "versioned": true,
100
+ "blockPublicAccess": "*",
101
+ "removalPolicy": "destroy",
102
+ "enforceSSL": true,
103
+ "autoDeleteObjects": true,
104
+ "objectOwnership": "ObjectWriter",
105
+ "serverAccessLogsBucket": "*"
106
+ }
107
+ }
108
+ ],
109
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/constructsGeneratedOai": [
110
+ {
111
+ "type": "aws:cdk:analytics:construct",
112
+ "data": "*"
113
+ }
114
+ ],
115
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudFrontDistribution": [
116
+ {
117
+ "type": "aws:cdk:analytics:construct",
118
+ "data": {
119
+ "defaultBehavior": {
120
+ "origin": "*",
121
+ "viewerProtocolPolicy": "redirect-to-https",
122
+ "functionAssociations": [
123
+ {
124
+ "eventType": "viewer-response",
125
+ "function": "*"
126
+ }
127
+ ]
128
+ },
129
+ "enableLogging": true,
130
+ "logBucket": "*",
131
+ "defaultRootObject": "*"
132
+ }
133
+ }
134
+ ],
135
+ "/cftoais3-no-arguments/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role": [
136
+ {
137
+ "type": "aws:cdk:logicalId",
138
+ "data": "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092"
139
+ }
140
+ ],
141
+ "/cftoais3-no-arguments/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler": [
142
+ {
143
+ "type": "aws:cdk:logicalId",
144
+ "data": "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F"
145
+ }
146
+ ],
147
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3LoggingBucket/Resource": [
148
+ {
149
+ "type": "aws:cdk:logicalId",
150
+ "data": "testcloudfrontoais3S3LoggingBucketC8A21DD9"
151
+ },
152
+ {
153
+ "type": "aws:cdk:analytics:mixin",
154
+ "data": {
155
+ "mixin": "aws-cdk-lib.aws_s3.mixins.BucketAutoDeleteObjects"
156
+ }
157
+ }
158
+ ],
159
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3LoggingBucket/Policy": [
160
+ {
161
+ "type": "aws:cdk:analytics:construct",
162
+ "data": {
163
+ "bucket": "*"
164
+ }
165
+ }
166
+ ],
167
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3LoggingBucket/AutoDeleteObjectsCustomResource": [
168
+ {
169
+ "type": "aws:cdk:analytics:construct",
170
+ "data": "*"
171
+ }
172
+ ],
173
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3Bucket/Resource": [
174
+ {
175
+ "type": "aws:cdk:logicalId",
176
+ "data": "testcloudfrontoais3S3Bucket578AB9F3"
177
+ },
178
+ {
179
+ "type": "aws:cdk:analytics:mixin",
180
+ "data": {
181
+ "mixin": "aws-cdk-lib.aws_s3.mixins.BucketAutoDeleteObjects"
182
+ }
183
+ }
184
+ ],
185
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3Bucket/Policy": [
186
+ {
187
+ "type": "aws:cdk:analytics:construct",
188
+ "data": {
189
+ "bucket": "*"
190
+ }
191
+ }
192
+ ],
193
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3Bucket/AutoDeleteObjectsCustomResource": [
194
+ {
195
+ "type": "aws:cdk:analytics:construct",
196
+ "data": "*"
197
+ }
198
+ ],
199
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/SetHttpSecurityHeaders/Resource": [
200
+ {
201
+ "type": "aws:cdk:logicalId",
202
+ "data": "testcloudfrontoais3SetHttpSecurityHeaders4EB3C97B"
203
+ }
204
+ ],
205
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/Resource": [
206
+ {
207
+ "type": "aws:cdk:logicalId",
208
+ "data": "testcloudfrontoais3CloudfrontLoggingBucketAccessLogBF5AAF80"
209
+ },
210
+ {
211
+ "type": "aws:cdk:analytics:mixin",
212
+ "data": {
213
+ "mixin": "aws-cdk-lib.aws_s3.mixins.BucketAutoDeleteObjects"
214
+ }
215
+ }
216
+ ],
217
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/Policy": [
218
+ {
219
+ "type": "aws:cdk:analytics:construct",
220
+ "data": {
221
+ "bucket": "*"
222
+ }
223
+ }
224
+ ],
225
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/AutoDeleteObjectsCustomResource": [
226
+ {
227
+ "type": "aws:cdk:analytics:construct",
228
+ "data": "*"
229
+ }
230
+ ],
231
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucket/Resource": [
232
+ {
233
+ "type": "aws:cdk:logicalId",
234
+ "data": "testcloudfrontoais3CloudfrontLoggingBucket55AA79FC"
235
+ },
236
+ {
237
+ "type": "aws:cdk:analytics:mixin",
238
+ "data": {
239
+ "mixin": "aws-cdk-lib.aws_s3.mixins.BucketAutoDeleteObjects"
240
+ }
241
+ }
242
+ ],
243
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucket/Policy": [
244
+ {
245
+ "type": "aws:cdk:analytics:construct",
246
+ "data": {
247
+ "bucket": "*"
248
+ }
249
+ }
250
+ ],
251
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource": [
252
+ {
253
+ "type": "aws:cdk:analytics:construct",
254
+ "data": "*"
255
+ }
256
+ ],
257
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/constructsGeneratedOai/Resource": [
258
+ {
259
+ "type": "aws:cdk:logicalId",
260
+ "data": "testcloudfrontoais3constructsGeneratedOaiA468F478"
261
+ }
262
+ ],
263
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudFrontDistribution/Resource": [
264
+ {
265
+ "type": "aws:cdk:logicalId",
266
+ "data": "testcloudfrontoais3CloudFrontDistribution0E089CC5"
267
+ }
268
+ ],
269
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3LoggingBucket/Policy/Resource": [
270
+ {
271
+ "type": "aws:cdk:logicalId",
272
+ "data": "testcloudfrontoais3S3LoggingBucketPolicy792609D7"
273
+ },
274
+ {
275
+ "type": "aws:cdk:analytics:mixin",
276
+ "data": {
277
+ "mixin": "aws-cdk-lib.aws_s3.mixins.BucketPolicyStatements"
278
+ }
279
+ }
280
+ ],
281
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3LoggingBucket/AutoDeleteObjectsCustomResource/Default": [
282
+ {
283
+ "type": "aws:cdk:logicalId",
284
+ "data": "testcloudfrontoais3S3LoggingBucketAutoDeleteObjectsCustomResource24F8B1EE"
285
+ }
286
+ ],
287
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3Bucket/Policy/Resource": [
288
+ {
289
+ "type": "aws:cdk:logicalId",
290
+ "data": "testcloudfrontoais3S3BucketPolicyD2322CC3"
291
+ },
292
+ {
293
+ "type": "aws:cdk:analytics:mixin",
294
+ "data": {
295
+ "mixin": "aws-cdk-lib.aws_s3.mixins.BucketPolicyStatements"
296
+ }
297
+ }
298
+ ],
299
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/S3Bucket/AutoDeleteObjectsCustomResource/Default": [
300
+ {
301
+ "type": "aws:cdk:logicalId",
302
+ "data": "testcloudfrontoais3S3BucketAutoDeleteObjectsCustomResourceA2545EE1"
303
+ }
304
+ ],
305
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/Policy/Resource": [
306
+ {
307
+ "type": "aws:cdk:logicalId",
308
+ "data": "testcloudfrontoais3CloudfrontLoggingBucketAccessLogPolicy0C078528"
309
+ },
310
+ {
311
+ "type": "aws:cdk:analytics:mixin",
312
+ "data": {
313
+ "mixin": "aws-cdk-lib.aws_s3.mixins.BucketPolicyStatements"
314
+ }
315
+ }
316
+ ],
317
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucketAccessLog/AutoDeleteObjectsCustomResource/Default": [
318
+ {
319
+ "type": "aws:cdk:logicalId",
320
+ "data": "testcloudfrontoais3CloudfrontLoggingBucketAccessLogAutoDeleteObjectsCustomResource00DB3AC8"
321
+ }
322
+ ],
323
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucket/Policy/Resource": [
324
+ {
325
+ "type": "aws:cdk:logicalId",
326
+ "data": "testcloudfrontoais3CloudfrontLoggingBucketPolicy2130EE92"
327
+ },
328
+ {
329
+ "type": "aws:cdk:analytics:mixin",
330
+ "data": {
331
+ "mixin": "aws-cdk-lib.aws_s3.mixins.BucketPolicyStatements"
332
+ }
333
+ }
334
+ ],
335
+ "/cftoais3-no-arguments/test-cloudfront-oai-s3/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource/Default": [
336
+ {
337
+ "type": "aws:cdk:logicalId",
338
+ "data": "testcloudfrontoais3CloudfrontLoggingBucketAutoDeleteObjectsCustomResourceE88BD625"
339
+ }
340
+ ]
341
+ }
@@ -434,7 +434,7 @@
434
434
  "FunctionCode": "function handler(event) { var response = event.response; var headers = response.headers; headers['strict-transport-security'] = { value: 'max-age=63072000; includeSubdomains; preload'}; headers['content-security-policy'] = { value: \"default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'\"}; headers['x-content-type-options'] = { value: 'nosniff'}; headers['x-frame-options'] = {value: 'DENY'}; headers['x-xss-protection'] = {value: '1; mode=block'}; return response; }",
435
435
  "FunctionConfig": {
436
436
  "Comment": "SetHttpSecurityHeadersc81d27c49db98f9fe8414478bf1a95de9d2bd2f3fa",
437
- "Runtime": "cloudfront-js-1.0"
437
+ "Runtime": "cloudfront-js-2.0"
438
438
  },
439
439
  "Name": "SetHttpSecurityHeadersc81d27c49db98f9fe8414478bf1a95de9d2bd2f3fa"
440
440
  }
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "45.0.0",
2
+ "version": "53.0.0",
3
3
  "files": {
4
4
  "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": {
5
5
  "displayName": "cftoais3noargumentsIntegDefaultTestDeployAssert5CF03E3D Template",
@@ -0,0 +1,14 @@
1
+ {
2
+ "/cftoais3-no-arguments/Integ/DefaultTest/DeployAssert/BootstrapVersion": [
3
+ {
4
+ "type": "aws:cdk:logicalId",
5
+ "data": "BootstrapVersion"
6
+ }
7
+ ],
8
+ "/cftoais3-no-arguments/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion": [
9
+ {
10
+ "type": "aws:cdk:logicalId",
11
+ "data": "CheckBootstrapVersion"
12
+ }
13
+ ]
14
+ }
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "45.0.0",
2
+ "version": "53.0.0",
3
3
  "testCases": {
4
4
  "cftoais3-no-arguments/Integ/DefaultTest": {
5
5
  "stacks": [
@@ -9,5 +9,5 @@
9
9
  "assertionStackName": "cftoais3noargumentsIntegDefaultTestDeployAssert5CF03E3D"
10
10
  }
11
11
  },
12
- "minimumCliVersion": "2.1020.2"
12
+ "minimumCliVersion": "2.1117.0"
13
13
  }