@aws-solutions-constructs/aws-cloudfront-s3 2.51.0 → 2.52.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 (127) hide show
  1. package/.eslintignore +2 -0
  2. package/.jsii +50 -5
  3. package/integ.config.json +7 -0
  4. package/lib/index.js +1 -1
  5. package/package.json +11 -10
  6. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js +6 -3
  7. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/asset.4a4b024f310aca2784b69bcb790e9ccaef785e9ad5d1b73624144f88c4465b4f/index.d.ts +30 -0
  8. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/asset.4a4b024f310aca2784b69bcb790e9ccaef785e9ad5d1b73624144f88c4465b4f/index.js +127 -0
  9. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/asset.7382a0addb9f34974a1ea6c6c9b063882af874828f366f5c93b2b7b64db15c94/cfn-response.js +1 -0
  10. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/asset.7382a0addb9f34974a1ea6c6c9b063882af874828f366f5c93b2b7b64db15c94/consts.js +1 -0
  11. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/asset.7382a0addb9f34974a1ea6c6c9b063882af874828f366f5c93b2b7b64db15c94/framework.js +3 -0
  12. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/asset.7382a0addb9f34974a1ea6c6c9b063882af874828f366f5c93b2b7b64db15c94/outbound.js +1 -0
  13. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/asset.7382a0addb9f34974a1ea6c6c9b063882af874828f366f5c93b2b7b64db15c94/util.js +1 -0
  14. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/cdk.out +1 -0
  15. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.assets.json +45 -0
  16. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.template.json +960 -0
  17. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/cfts3bucketencryptedwithcmkprovidedasexistingbucketIntegDefaultTestDeployAssertF6031114.assets.json +19 -0
  18. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/cfts3bucketencryptedwithcmkprovidedasexistingbucketIntegDefaultTestDeployAssertF6031114.template.json +36 -0
  19. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/integ.json +12 -0
  20. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/manifest.json +221 -0
  21. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.js.snapshot/tree.json +1326 -0
  22. package/test/integ.cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.js +6 -3
  23. package/test/integ.cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.js.snapshot/cdk.out +1 -0
  24. package/test/integ.cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.js.snapshot/cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.assets.json +19 -0
  25. package/test/integ.cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.js.snapshot/cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.template.json +594 -0
  26. package/test/integ.cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.js.snapshot/cfts3bucketencryptedwithmanagedkeyprovidedasexistingbucketIntegDefaultTestDeployAssert03A82C16.assets.json +19 -0
  27. package/test/integ.cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.js.snapshot/cfts3bucketencryptedwithmanagedkeyprovidedasexistingbucketIntegDefaultTestDeployAssert03A82C16.template.json +36 -0
  28. package/test/integ.cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.js.snapshot/integ.json +12 -0
  29. package/test/integ.cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.js.snapshot/manifest.json +167 -0
  30. package/test/integ.cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.js.snapshot/tree.json +790 -0
  31. package/test/integ.cfts3-bucket-with-http-origin.js +6 -3
  32. package/test/integ.cfts3-bucket-with-http-origin.js.snapshot/cdk.out +1 -0
  33. package/test/integ.cfts3-bucket-with-http-origin.js.snapshot/cfts3-bucket-with-http-origin.assets.json +19 -0
  34. package/test/integ.cfts3-bucket-with-http-origin.js.snapshot/cfts3-bucket-with-http-origin.template.json +559 -0
  35. package/test/integ.cfts3-bucket-with-http-origin.js.snapshot/cfts3bucketwithhttporiginIntegDefaultTestDeployAssert75EB76AB.assets.json +19 -0
  36. package/test/integ.cfts3-bucket-with-http-origin.js.snapshot/cfts3bucketwithhttporiginIntegDefaultTestDeployAssert75EB76AB.template.json +36 -0
  37. package/test/integ.cfts3-bucket-with-http-origin.js.snapshot/integ.json +12 -0
  38. package/test/integ.cfts3-bucket-with-http-origin.js.snapshot/manifest.json +161 -0
  39. package/test/integ.cfts3-bucket-with-http-origin.js.snapshot/tree.json +753 -0
  40. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js +6 -3
  41. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/asset.4a4b024f310aca2784b69bcb790e9ccaef785e9ad5d1b73624144f88c4465b4f/index.d.ts +30 -0
  42. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/asset.4a4b024f310aca2784b69bcb790e9ccaef785e9ad5d1b73624144f88c4465b4f/index.js +127 -0
  43. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/asset.7382a0addb9f34974a1ea6c6c9b063882af874828f366f5c93b2b7b64db15c94/cfn-response.js +1 -0
  44. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/asset.7382a0addb9f34974a1ea6c6c9b063882af874828f366f5c93b2b7b64db15c94/consts.js +1 -0
  45. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/asset.7382a0addb9f34974a1ea6c6c9b063882af874828f366f5c93b2b7b64db15c94/framework.js +3 -0
  46. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/asset.7382a0addb9f34974a1ea6c6c9b063882af874828f366f5c93b2b7b64db15c94/outbound.js +1 -0
  47. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/asset.7382a0addb9f34974a1ea6c6c9b063882af874828f366f5c93b2b7b64db15c94/util.js +1 -0
  48. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/cdk.out +1 -0
  49. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/cfts3-cmk-provided-as-bucket-prop.assets.json +45 -0
  50. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/cfts3-cmk-provided-as-bucket-prop.template.json +960 -0
  51. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/cfts3cmkprovidedasbucketpropIntegDefaultTestDeployAssert38E63D55.assets.json +19 -0
  52. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/cfts3cmkprovidedasbucketpropIntegDefaultTestDeployAssert38E63D55.template.json +36 -0
  53. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/integ.json +12 -0
  54. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/manifest.json +221 -0
  55. package/test/integ.cfts3-cmk-provided-as-bucket-prop.js.snapshot/tree.json +1326 -0
  56. package/test/integ.cfts3-custom-headers.js +6 -3
  57. package/test/integ.cfts3-custom-headers.js.snapshot/asset.b7f33614a69548d6bafe224d751a7ef238cde19097415e553fe8b63a4c8fd8a6/index.js +1 -0
  58. package/test/integ.cfts3-custom-headers.js.snapshot/cdk.out +1 -0
  59. package/test/integ.cfts3-custom-headers.js.snapshot/cfts3-custom-headers.assets.json +32 -0
  60. package/test/integ.cfts3-custom-headers.js.snapshot/cfts3-custom-headers.template.json +981 -0
  61. package/test/integ.cfts3-custom-headers.js.snapshot/cfts3customheadersIntegDefaultTestDeployAssert6EEC9973.assets.json +19 -0
  62. package/test/integ.cfts3-custom-headers.js.snapshot/cfts3customheadersIntegDefaultTestDeployAssert6EEC9973.template.json +36 -0
  63. package/test/integ.cfts3-custom-headers.js.snapshot/integ.json +12 -0
  64. package/test/integ.cfts3-custom-headers.js.snapshot/manifest.json +215 -0
  65. package/test/integ.cfts3-custom-headers.js.snapshot/tree.json +1167 -0
  66. package/test/integ.cfts3-custom-originPath.js +6 -3
  67. package/test/integ.cfts3-custom-originPath.js.snapshot/asset.b7f33614a69548d6bafe224d751a7ef238cde19097415e553fe8b63a4c8fd8a6/index.js +1 -0
  68. package/test/integ.cfts3-custom-originPath.js.snapshot/cdk.out +1 -0
  69. package/test/integ.cfts3-custom-originPath.js.snapshot/cfts3-custom-originPath.assets.json +32 -0
  70. package/test/integ.cfts3-custom-originPath.js.snapshot/cfts3-custom-originPath.template.json +950 -0
  71. package/test/integ.cfts3-custom-originPath.js.snapshot/cfts3customoriginPathIntegDefaultTestDeployAssert61F499B2.assets.json +19 -0
  72. package/test/integ.cfts3-custom-originPath.js.snapshot/cfts3customoriginPathIntegDefaultTestDeployAssert61F499B2.template.json +36 -0
  73. package/test/integ.cfts3-custom-originPath.js.snapshot/integ.json +12 -0
  74. package/test/integ.cfts3-custom-originPath.js.snapshot/manifest.json +209 -0
  75. package/test/integ.cfts3-custom-originPath.js.snapshot/tree.json +1117 -0
  76. package/test/integ.cfts3-customLoggingBuckets.js +6 -3
  77. package/test/integ.cfts3-customLoggingBuckets.js.snapshot/asset.b7f33614a69548d6bafe224d751a7ef238cde19097415e553fe8b63a4c8fd8a6/index.js +1 -0
  78. package/test/integ.cfts3-customLoggingBuckets.js.snapshot/cdk.out +1 -0
  79. package/test/integ.cfts3-customLoggingBuckets.js.snapshot/cfts3-customLoggingBuckets.assets.json +32 -0
  80. package/test/integ.cfts3-customLoggingBuckets.js.snapshot/cfts3-customLoggingBuckets.template.json +987 -0
  81. package/test/integ.cfts3-customLoggingBuckets.js.snapshot/cfts3customLoggingBucketsIntegDefaultTestDeployAssert4D171F9F.assets.json +19 -0
  82. package/test/integ.cfts3-customLoggingBuckets.js.snapshot/cfts3customLoggingBucketsIntegDefaultTestDeployAssert4D171F9F.template.json +36 -0
  83. package/test/integ.cfts3-customLoggingBuckets.js.snapshot/integ.json +12 -0
  84. package/test/integ.cfts3-customLoggingBuckets.js.snapshot/manifest.json +209 -0
  85. package/test/integ.cfts3-customLoggingBuckets.js.snapshot/tree.json +1156 -0
  86. package/test/integ.cfts3-existing-bucket.js +6 -3
  87. package/test/integ.cfts3-existing-bucket.js.snapshot/asset.b7f33614a69548d6bafe224d751a7ef238cde19097415e553fe8b63a4c8fd8a6/index.js +1 -0
  88. package/test/integ.cfts3-existing-bucket.js.snapshot/cdk.out +1 -0
  89. package/test/integ.cfts3-existing-bucket.js.snapshot/cfts3-existing-bucket.assets.json +32 -0
  90. package/test/integ.cfts3-existing-bucket.js.snapshot/cfts3-existing-bucket.template.json +1014 -0
  91. package/test/integ.cfts3-existing-bucket.js.snapshot/cfts3existingbucketIntegDefaultTestDeployAssertA6D4EB49.assets.json +19 -0
  92. package/test/integ.cfts3-existing-bucket.js.snapshot/cfts3existingbucketIntegDefaultTestDeployAssertA6D4EB49.template.json +36 -0
  93. package/test/integ.cfts3-existing-bucket.js.snapshot/integ.json +12 -0
  94. package/test/integ.cfts3-existing-bucket.js.snapshot/manifest.json +221 -0
  95. package/test/integ.cfts3-existing-bucket.js.snapshot/tree.json +1229 -0
  96. package/test/integ.cfts3-no-arguments.js +6 -3
  97. package/test/integ.cfts3-no-arguments.js.snapshot/asset.b7f33614a69548d6bafe224d751a7ef238cde19097415e553fe8b63a4c8fd8a6/index.js +1 -0
  98. package/test/integ.cfts3-no-arguments.js.snapshot/cdk.out +1 -0
  99. package/test/integ.cfts3-no-arguments.js.snapshot/cfts3-no-arguments.assets.json +32 -0
  100. package/test/integ.cfts3-no-arguments.js.snapshot/cfts3-no-arguments.template.json +959 -0
  101. package/test/integ.cfts3-no-arguments.js.snapshot/cfts3noargumentsIntegDefaultTestDeployAssertBA5AFA25.assets.json +19 -0
  102. package/test/integ.cfts3-no-arguments.js.snapshot/cfts3noargumentsIntegDefaultTestDeployAssertBA5AFA25.template.json +36 -0
  103. package/test/integ.cfts3-no-arguments.js.snapshot/integ.json +12 -0
  104. package/test/integ.cfts3-no-arguments.js.snapshot/manifest.json +209 -0
  105. package/test/integ.cfts3-no-arguments.js.snapshot/tree.json +1117 -0
  106. package/test/integ.cfts3-no-security-headers.js +6 -3
  107. package/test/integ.cfts3-no-security-headers.js.snapshot/asset.b7f33614a69548d6bafe224d751a7ef238cde19097415e553fe8b63a4c8fd8a6/index.js +1 -0
  108. package/test/integ.cfts3-no-security-headers.js.snapshot/cdk.out +1 -0
  109. package/test/integ.cfts3-no-security-headers.js.snapshot/cfts3-no-security-headers.assets.json +32 -0
  110. package/test/integ.cfts3-no-security-headers.js.snapshot/cfts3-no-security-headers.template.json +926 -0
  111. package/test/integ.cfts3-no-security-headers.js.snapshot/cfts3nosecurityheadersIntegDefaultTestDeployAssert38FE05BE.assets.json +19 -0
  112. package/test/integ.cfts3-no-security-headers.js.snapshot/cfts3nosecurityheadersIntegDefaultTestDeployAssert38FE05BE.template.json +36 -0
  113. package/test/integ.cfts3-no-security-headers.js.snapshot/integ.json +12 -0
  114. package/test/integ.cfts3-no-security-headers.js.snapshot/manifest.json +203 -0
  115. package/test/integ.cfts3-no-security-headers.js.snapshot/tree.json +1076 -0
  116. package/test/integ.cfts3-bucket-encrypted-with-cmk-provided-as-existingbucket.expected.json +0 -960
  117. package/test/integ.cfts3-bucket-encrypted-with-managed-key-provided-as-existingbucket.expected.json +0 -594
  118. package/test/integ.cfts3-bucket-with-http-origin.expected.json +0 -559
  119. package/test/integ.cfts3-cmk-encryption.expected.json +0 -527
  120. package/test/integ.cfts3-cmk-provided-as-bucket-prop.expected.json +0 -960
  121. package/test/integ.cfts3-custom-headers.expected.json +0 -981
  122. package/test/integ.cfts3-custom-originPath.expected.json +0 -950
  123. package/test/integ.cfts3-customCloudFrontLoggingBucket.expected.json +0 -700
  124. package/test/integ.cfts3-customLoggingBuckets.expected.json +0 -987
  125. package/test/integ.cfts3-existing-bucket.expected.json +0 -1014
  126. package/test/integ.cfts3-no-arguments.expected.json +0 -959
  127. package/test/integ.cfts3-no-security-headers.expected.json +0 -926
@@ -0,0 +1,753 @@
1
+ {
2
+ "version": "tree-0.1",
3
+ "tree": {
4
+ "id": "App",
5
+ "path": "",
6
+ "children": {
7
+ "cfts3-bucket-with-http-origin": {
8
+ "id": "cfts3-bucket-with-http-origin",
9
+ "path": "cfts3-bucket-with-http-origin",
10
+ "children": {
11
+ "test-cloudfront-s3-legacy-http-origin": {
12
+ "id": "test-cloudfront-s3-legacy-http-origin",
13
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin",
14
+ "children": {
15
+ "S3LoggingBucket": {
16
+ "id": "S3LoggingBucket",
17
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3LoggingBucket",
18
+ "children": {
19
+ "Resource": {
20
+ "id": "Resource",
21
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3LoggingBucket/Resource",
22
+ "attributes": {
23
+ "aws:cdk:cloudformation:type": "AWS::S3::Bucket",
24
+ "aws:cdk:cloudformation:props": {
25
+ "bucketEncryption": {
26
+ "serverSideEncryptionConfiguration": [
27
+ {
28
+ "serverSideEncryptionByDefault": {
29
+ "sseAlgorithm": "AES256"
30
+ }
31
+ }
32
+ ]
33
+ },
34
+ "publicAccessBlockConfiguration": {
35
+ "blockPublicAcls": true,
36
+ "blockPublicPolicy": true,
37
+ "ignorePublicAcls": true,
38
+ "restrictPublicBuckets": true
39
+ },
40
+ "versioningConfiguration": {
41
+ "status": "Enabled"
42
+ }
43
+ }
44
+ },
45
+ "constructInfo": {
46
+ "fqn": "aws-cdk-lib.aws_s3.CfnBucket",
47
+ "version": "2.118.0"
48
+ }
49
+ },
50
+ "Policy": {
51
+ "id": "Policy",
52
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3LoggingBucket/Policy",
53
+ "children": {
54
+ "Resource": {
55
+ "id": "Resource",
56
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3LoggingBucket/Policy/Resource",
57
+ "attributes": {
58
+ "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy",
59
+ "aws:cdk:cloudformation:props": {
60
+ "bucket": {
61
+ "Ref": "testcloudfronts3legacyhttporiginS3LoggingBucketA3DB7D64"
62
+ },
63
+ "policyDocument": {
64
+ "Statement": [
65
+ {
66
+ "Action": "s3:*",
67
+ "Condition": {
68
+ "Bool": {
69
+ "aws:SecureTransport": "false"
70
+ }
71
+ },
72
+ "Effect": "Deny",
73
+ "Principal": {
74
+ "AWS": "*"
75
+ },
76
+ "Resource": [
77
+ {
78
+ "Fn::GetAtt": [
79
+ "testcloudfronts3legacyhttporiginS3LoggingBucketA3DB7D64",
80
+ "Arn"
81
+ ]
82
+ },
83
+ {
84
+ "Fn::Join": [
85
+ "",
86
+ [
87
+ {
88
+ "Fn::GetAtt": [
89
+ "testcloudfronts3legacyhttporiginS3LoggingBucketA3DB7D64",
90
+ "Arn"
91
+ ]
92
+ },
93
+ "/*"
94
+ ]
95
+ ]
96
+ }
97
+ ]
98
+ },
99
+ {
100
+ "Action": "s3:PutObject",
101
+ "Condition": {
102
+ "ArnLike": {
103
+ "aws:SourceArn": {
104
+ "Fn::GetAtt": [
105
+ "testcloudfronts3legacyhttporiginS3Bucket9C7276CA",
106
+ "Arn"
107
+ ]
108
+ }
109
+ },
110
+ "StringEquals": {
111
+ "aws:SourceAccount": {
112
+ "Ref": "AWS::AccountId"
113
+ }
114
+ }
115
+ },
116
+ "Effect": "Allow",
117
+ "Principal": {
118
+ "Service": "logging.s3.amazonaws.com"
119
+ },
120
+ "Resource": {
121
+ "Fn::Join": [
122
+ "",
123
+ [
124
+ {
125
+ "Fn::GetAtt": [
126
+ "testcloudfronts3legacyhttporiginS3LoggingBucketA3DB7D64",
127
+ "Arn"
128
+ ]
129
+ },
130
+ "/*"
131
+ ]
132
+ ]
133
+ }
134
+ }
135
+ ],
136
+ "Version": "2012-10-17"
137
+ }
138
+ }
139
+ },
140
+ "constructInfo": {
141
+ "fqn": "aws-cdk-lib.aws_s3.CfnBucketPolicy",
142
+ "version": "2.118.0"
143
+ }
144
+ }
145
+ },
146
+ "constructInfo": {
147
+ "fqn": "aws-cdk-lib.aws_s3.BucketPolicy",
148
+ "version": "2.118.0"
149
+ }
150
+ }
151
+ },
152
+ "constructInfo": {
153
+ "fqn": "aws-cdk-lib.aws_s3.Bucket",
154
+ "version": "2.118.0"
155
+ }
156
+ },
157
+ "S3Bucket": {
158
+ "id": "S3Bucket",
159
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3Bucket",
160
+ "children": {
161
+ "Resource": {
162
+ "id": "Resource",
163
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3Bucket/Resource",
164
+ "attributes": {
165
+ "aws:cdk:cloudformation:type": "AWS::S3::Bucket",
166
+ "aws:cdk:cloudformation:props": {
167
+ "bucketEncryption": {
168
+ "serverSideEncryptionConfiguration": [
169
+ {
170
+ "serverSideEncryptionByDefault": {
171
+ "sseAlgorithm": "AES256"
172
+ }
173
+ }
174
+ ]
175
+ },
176
+ "lifecycleConfiguration": {
177
+ "rules": [
178
+ {
179
+ "noncurrentVersionTransitions": [
180
+ {
181
+ "storageClass": "GLACIER",
182
+ "transitionInDays": 90
183
+ }
184
+ ],
185
+ "status": "Enabled"
186
+ }
187
+ ]
188
+ },
189
+ "loggingConfiguration": {
190
+ "destinationBucketName": {
191
+ "Ref": "testcloudfronts3legacyhttporiginS3LoggingBucketA3DB7D64"
192
+ }
193
+ },
194
+ "publicAccessBlockConfiguration": {
195
+ "blockPublicAcls": false,
196
+ "restrictPublicBuckets": false,
197
+ "blockPublicPolicy": false,
198
+ "ignorePublicAcls": false
199
+ },
200
+ "versioningConfiguration": {
201
+ "status": "Enabled"
202
+ },
203
+ "websiteConfiguration": {
204
+ "indexDocument": "index.html"
205
+ }
206
+ }
207
+ },
208
+ "constructInfo": {
209
+ "fqn": "aws-cdk-lib.aws_s3.CfnBucket",
210
+ "version": "2.118.0"
211
+ }
212
+ },
213
+ "Policy": {
214
+ "id": "Policy",
215
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3Bucket/Policy",
216
+ "children": {
217
+ "Resource": {
218
+ "id": "Resource",
219
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/S3Bucket/Policy/Resource",
220
+ "attributes": {
221
+ "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy",
222
+ "aws:cdk:cloudformation:props": {
223
+ "bucket": {
224
+ "Ref": "testcloudfronts3legacyhttporiginS3Bucket9C7276CA"
225
+ },
226
+ "policyDocument": {
227
+ "Statement": [
228
+ {
229
+ "Action": "s3:GetObject",
230
+ "Effect": "Allow",
231
+ "Principal": {
232
+ "AWS": "*"
233
+ },
234
+ "Resource": {
235
+ "Fn::Join": [
236
+ "",
237
+ [
238
+ {
239
+ "Fn::GetAtt": [
240
+ "testcloudfronts3legacyhttporiginS3Bucket9C7276CA",
241
+ "Arn"
242
+ ]
243
+ },
244
+ "/*"
245
+ ]
246
+ ]
247
+ }
248
+ },
249
+ {
250
+ "Action": "s3:GetObject",
251
+ "Condition": {
252
+ "StringEquals": {
253
+ "AWS:SourceArn": {
254
+ "Fn::Join": [
255
+ "",
256
+ [
257
+ "arn:aws:cloudfront::",
258
+ {
259
+ "Ref": "AWS::AccountId"
260
+ },
261
+ ":distribution/",
262
+ {
263
+ "Ref": "testcloudfronts3legacyhttporiginCloudFrontDistributionAF04EDAB"
264
+ }
265
+ ]
266
+ ]
267
+ }
268
+ }
269
+ },
270
+ "Effect": "Allow",
271
+ "Principal": {
272
+ "Service": "cloudfront.amazonaws.com"
273
+ },
274
+ "Resource": {
275
+ "Fn::Join": [
276
+ "",
277
+ [
278
+ {
279
+ "Fn::GetAtt": [
280
+ "testcloudfronts3legacyhttporiginS3Bucket9C7276CA",
281
+ "Arn"
282
+ ]
283
+ },
284
+ "/*"
285
+ ]
286
+ ]
287
+ }
288
+ }
289
+ ],
290
+ "Version": "2012-10-17"
291
+ }
292
+ }
293
+ },
294
+ "constructInfo": {
295
+ "fqn": "aws-cdk-lib.aws_s3.CfnBucketPolicy",
296
+ "version": "2.118.0"
297
+ }
298
+ }
299
+ },
300
+ "constructInfo": {
301
+ "fqn": "aws-cdk-lib.aws_s3.BucketPolicy",
302
+ "version": "2.118.0"
303
+ }
304
+ }
305
+ },
306
+ "constructInfo": {
307
+ "fqn": "aws-cdk-lib.aws_s3.Bucket",
308
+ "version": "2.118.0"
309
+ }
310
+ },
311
+ "CloudfrontLoggingBucketAccessLog": {
312
+ "id": "CloudfrontLoggingBucketAccessLog",
313
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucketAccessLog",
314
+ "children": {
315
+ "Resource": {
316
+ "id": "Resource",
317
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucketAccessLog/Resource",
318
+ "attributes": {
319
+ "aws:cdk:cloudformation:type": "AWS::S3::Bucket",
320
+ "aws:cdk:cloudformation:props": {
321
+ "bucketEncryption": {
322
+ "serverSideEncryptionConfiguration": [
323
+ {
324
+ "serverSideEncryptionByDefault": {
325
+ "sseAlgorithm": "AES256"
326
+ }
327
+ }
328
+ ]
329
+ },
330
+ "ownershipControls": {
331
+ "rules": [
332
+ {
333
+ "objectOwnership": "ObjectWriter"
334
+ }
335
+ ]
336
+ },
337
+ "publicAccessBlockConfiguration": {
338
+ "blockPublicAcls": true,
339
+ "blockPublicPolicy": true,
340
+ "ignorePublicAcls": true,
341
+ "restrictPublicBuckets": true
342
+ },
343
+ "versioningConfiguration": {
344
+ "status": "Enabled"
345
+ }
346
+ }
347
+ },
348
+ "constructInfo": {
349
+ "fqn": "aws-cdk-lib.aws_s3.CfnBucket",
350
+ "version": "2.118.0"
351
+ }
352
+ },
353
+ "Policy": {
354
+ "id": "Policy",
355
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucketAccessLog/Policy",
356
+ "children": {
357
+ "Resource": {
358
+ "id": "Resource",
359
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucketAccessLog/Policy/Resource",
360
+ "attributes": {
361
+ "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy",
362
+ "aws:cdk:cloudformation:props": {
363
+ "bucket": {
364
+ "Ref": "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketAccessLog3AE680E5"
365
+ },
366
+ "policyDocument": {
367
+ "Statement": [
368
+ {
369
+ "Action": "s3:*",
370
+ "Condition": {
371
+ "Bool": {
372
+ "aws:SecureTransport": "false"
373
+ }
374
+ },
375
+ "Effect": "Deny",
376
+ "Principal": {
377
+ "AWS": "*"
378
+ },
379
+ "Resource": [
380
+ {
381
+ "Fn::GetAtt": [
382
+ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketAccessLog3AE680E5",
383
+ "Arn"
384
+ ]
385
+ },
386
+ {
387
+ "Fn::Join": [
388
+ "",
389
+ [
390
+ {
391
+ "Fn::GetAtt": [
392
+ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketAccessLog3AE680E5",
393
+ "Arn"
394
+ ]
395
+ },
396
+ "/*"
397
+ ]
398
+ ]
399
+ }
400
+ ]
401
+ },
402
+ {
403
+ "Action": "s3:PutObject",
404
+ "Condition": {
405
+ "ArnLike": {
406
+ "aws:SourceArn": {
407
+ "Fn::GetAtt": [
408
+ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketC643C2EE",
409
+ "Arn"
410
+ ]
411
+ }
412
+ },
413
+ "StringEquals": {
414
+ "aws:SourceAccount": {
415
+ "Ref": "AWS::AccountId"
416
+ }
417
+ }
418
+ },
419
+ "Effect": "Allow",
420
+ "Principal": {
421
+ "Service": "logging.s3.amazonaws.com"
422
+ },
423
+ "Resource": {
424
+ "Fn::Join": [
425
+ "",
426
+ [
427
+ {
428
+ "Fn::GetAtt": [
429
+ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketAccessLog3AE680E5",
430
+ "Arn"
431
+ ]
432
+ },
433
+ "/*"
434
+ ]
435
+ ]
436
+ }
437
+ }
438
+ ],
439
+ "Version": "2012-10-17"
440
+ }
441
+ }
442
+ },
443
+ "constructInfo": {
444
+ "fqn": "aws-cdk-lib.aws_s3.CfnBucketPolicy",
445
+ "version": "2.118.0"
446
+ }
447
+ }
448
+ },
449
+ "constructInfo": {
450
+ "fqn": "aws-cdk-lib.aws_s3.BucketPolicy",
451
+ "version": "2.118.0"
452
+ }
453
+ }
454
+ },
455
+ "constructInfo": {
456
+ "fqn": "aws-cdk-lib.aws_s3.Bucket",
457
+ "version": "2.118.0"
458
+ }
459
+ },
460
+ "CloudfrontLoggingBucket": {
461
+ "id": "CloudfrontLoggingBucket",
462
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucket",
463
+ "children": {
464
+ "Resource": {
465
+ "id": "Resource",
466
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucket/Resource",
467
+ "attributes": {
468
+ "aws:cdk:cloudformation:type": "AWS::S3::Bucket",
469
+ "aws:cdk:cloudformation:props": {
470
+ "bucketEncryption": {
471
+ "serverSideEncryptionConfiguration": [
472
+ {
473
+ "serverSideEncryptionByDefault": {
474
+ "sseAlgorithm": "AES256"
475
+ }
476
+ }
477
+ ]
478
+ },
479
+ "loggingConfiguration": {
480
+ "destinationBucketName": {
481
+ "Ref": "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketAccessLog3AE680E5"
482
+ }
483
+ },
484
+ "ownershipControls": {
485
+ "rules": [
486
+ {
487
+ "objectOwnership": "ObjectWriter"
488
+ }
489
+ ]
490
+ },
491
+ "publicAccessBlockConfiguration": {
492
+ "blockPublicAcls": true,
493
+ "blockPublicPolicy": true,
494
+ "ignorePublicAcls": true,
495
+ "restrictPublicBuckets": true
496
+ },
497
+ "versioningConfiguration": {
498
+ "status": "Enabled"
499
+ }
500
+ }
501
+ },
502
+ "constructInfo": {
503
+ "fqn": "aws-cdk-lib.aws_s3.CfnBucket",
504
+ "version": "2.118.0"
505
+ }
506
+ },
507
+ "Policy": {
508
+ "id": "Policy",
509
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucket/Policy",
510
+ "children": {
511
+ "Resource": {
512
+ "id": "Resource",
513
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudfrontLoggingBucket/Policy/Resource",
514
+ "attributes": {
515
+ "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy",
516
+ "aws:cdk:cloudformation:props": {
517
+ "bucket": {
518
+ "Ref": "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketC643C2EE"
519
+ },
520
+ "policyDocument": {
521
+ "Statement": [
522
+ {
523
+ "Action": "s3:*",
524
+ "Condition": {
525
+ "Bool": {
526
+ "aws:SecureTransport": "false"
527
+ }
528
+ },
529
+ "Effect": "Deny",
530
+ "Principal": {
531
+ "AWS": "*"
532
+ },
533
+ "Resource": [
534
+ {
535
+ "Fn::GetAtt": [
536
+ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketC643C2EE",
537
+ "Arn"
538
+ ]
539
+ },
540
+ {
541
+ "Fn::Join": [
542
+ "",
543
+ [
544
+ {
545
+ "Fn::GetAtt": [
546
+ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketC643C2EE",
547
+ "Arn"
548
+ ]
549
+ },
550
+ "/*"
551
+ ]
552
+ ]
553
+ }
554
+ ]
555
+ }
556
+ ],
557
+ "Version": "2012-10-17"
558
+ }
559
+ }
560
+ },
561
+ "constructInfo": {
562
+ "fqn": "aws-cdk-lib.aws_s3.CfnBucketPolicy",
563
+ "version": "2.118.0"
564
+ }
565
+ }
566
+ },
567
+ "constructInfo": {
568
+ "fqn": "aws-cdk-lib.aws_s3.BucketPolicy",
569
+ "version": "2.118.0"
570
+ }
571
+ }
572
+ },
573
+ "constructInfo": {
574
+ "fqn": "aws-cdk-lib.aws_s3.Bucket",
575
+ "version": "2.118.0"
576
+ }
577
+ },
578
+ "CloudFrontDistribution": {
579
+ "id": "CloudFrontDistribution",
580
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudFrontDistribution",
581
+ "children": {
582
+ "Origin1": {
583
+ "id": "Origin1",
584
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudFrontDistribution/Origin1",
585
+ "constructInfo": {
586
+ "fqn": "constructs.Construct",
587
+ "version": "10.0.0"
588
+ }
589
+ },
590
+ "Resource": {
591
+ "id": "Resource",
592
+ "path": "cfts3-bucket-with-http-origin/test-cloudfront-s3-legacy-http-origin/CloudFrontDistribution/Resource",
593
+ "attributes": {
594
+ "aws:cdk:cloudformation:type": "AWS::CloudFront::Distribution",
595
+ "aws:cdk:cloudformation:props": {
596
+ "distributionConfig": {
597
+ "enabled": true,
598
+ "origins": [
599
+ {
600
+ "domainName": {
601
+ "Fn::Select": [
602
+ 2,
603
+ {
604
+ "Fn::Split": [
605
+ "/",
606
+ {
607
+ "Fn::GetAtt": [
608
+ "testcloudfronts3legacyhttporiginS3Bucket9C7276CA",
609
+ "WebsiteURL"
610
+ ]
611
+ }
612
+ ]
613
+ }
614
+ ]
615
+ },
616
+ "id": "cfts3bucketwithhttporigintestcloudfronts3legacyhttporiginCloudFrontDistributionOrigin15A81BB36",
617
+ "customOriginConfig": {
618
+ "originSslProtocols": [
619
+ "TLSv1.2"
620
+ ],
621
+ "originProtocolPolicy": "http-only"
622
+ }
623
+ }
624
+ ],
625
+ "defaultCacheBehavior": {
626
+ "pathPattern": "*",
627
+ "targetOriginId": "cfts3bucketwithhttporigintestcloudfronts3legacyhttporiginCloudFrontDistributionOrigin15A81BB36",
628
+ "cachePolicyId": "658327ea-f89d-4fab-a63d-7e88639e58f6",
629
+ "compress": true,
630
+ "viewerProtocolPolicy": "redirect-to-https"
631
+ },
632
+ "defaultRootObject": "index.html",
633
+ "httpVersion": "http2",
634
+ "ipv6Enabled": true,
635
+ "logging": {
636
+ "bucket": {
637
+ "Fn::GetAtt": [
638
+ "testcloudfronts3legacyhttporiginCloudfrontLoggingBucketC643C2EE",
639
+ "RegionalDomainName"
640
+ ]
641
+ }
642
+ }
643
+ }
644
+ }
645
+ },
646
+ "constructInfo": {
647
+ "fqn": "aws-cdk-lib.aws_cloudfront.CfnDistribution",
648
+ "version": "2.118.0"
649
+ }
650
+ }
651
+ },
652
+ "constructInfo": {
653
+ "fqn": "aws-cdk-lib.aws_cloudfront.Distribution",
654
+ "version": "2.118.0"
655
+ }
656
+ }
657
+ },
658
+ "constructInfo": {
659
+ "fqn": "@aws-solutions-constructs/aws-cloudfront-s3.CloudFrontToS3",
660
+ "version": "2.50.0"
661
+ }
662
+ },
663
+ "Integ": {
664
+ "id": "Integ",
665
+ "path": "cfts3-bucket-with-http-origin/Integ",
666
+ "children": {
667
+ "DefaultTest": {
668
+ "id": "DefaultTest",
669
+ "path": "cfts3-bucket-with-http-origin/Integ/DefaultTest",
670
+ "children": {
671
+ "Default": {
672
+ "id": "Default",
673
+ "path": "cfts3-bucket-with-http-origin/Integ/DefaultTest/Default",
674
+ "constructInfo": {
675
+ "fqn": "constructs.Construct",
676
+ "version": "10.0.0"
677
+ }
678
+ },
679
+ "DeployAssert": {
680
+ "id": "DeployAssert",
681
+ "path": "cfts3-bucket-with-http-origin/Integ/DefaultTest/DeployAssert",
682
+ "children": {
683
+ "BootstrapVersion": {
684
+ "id": "BootstrapVersion",
685
+ "path": "cfts3-bucket-with-http-origin/Integ/DefaultTest/DeployAssert/BootstrapVersion",
686
+ "constructInfo": {
687
+ "fqn": "aws-cdk-lib.CfnParameter",
688
+ "version": "2.118.0"
689
+ }
690
+ },
691
+ "CheckBootstrapVersion": {
692
+ "id": "CheckBootstrapVersion",
693
+ "path": "cfts3-bucket-with-http-origin/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion",
694
+ "constructInfo": {
695
+ "fqn": "aws-cdk-lib.CfnRule",
696
+ "version": "2.118.0"
697
+ }
698
+ }
699
+ },
700
+ "constructInfo": {
701
+ "fqn": "aws-cdk-lib.Stack",
702
+ "version": "2.118.0"
703
+ }
704
+ }
705
+ },
706
+ "constructInfo": {
707
+ "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase",
708
+ "version": "2.118.0-alpha.0"
709
+ }
710
+ }
711
+ },
712
+ "constructInfo": {
713
+ "fqn": "@aws-cdk/integ-tests-alpha.IntegTest",
714
+ "version": "2.118.0-alpha.0"
715
+ }
716
+ },
717
+ "BootstrapVersion": {
718
+ "id": "BootstrapVersion",
719
+ "path": "cfts3-bucket-with-http-origin/BootstrapVersion",
720
+ "constructInfo": {
721
+ "fqn": "aws-cdk-lib.CfnParameter",
722
+ "version": "2.118.0"
723
+ }
724
+ },
725
+ "CheckBootstrapVersion": {
726
+ "id": "CheckBootstrapVersion",
727
+ "path": "cfts3-bucket-with-http-origin/CheckBootstrapVersion",
728
+ "constructInfo": {
729
+ "fqn": "aws-cdk-lib.CfnRule",
730
+ "version": "2.118.0"
731
+ }
732
+ }
733
+ },
734
+ "constructInfo": {
735
+ "fqn": "aws-cdk-lib.Stack",
736
+ "version": "2.118.0"
737
+ }
738
+ },
739
+ "Tree": {
740
+ "id": "Tree",
741
+ "path": "Tree",
742
+ "constructInfo": {
743
+ "fqn": "constructs.Construct",
744
+ "version": "10.0.0"
745
+ }
746
+ }
747
+ },
748
+ "constructInfo": {
749
+ "fqn": "aws-cdk-lib.App",
750
+ "version": "2.118.0"
751
+ }
752
+ }
753
+ }