@aws-solutions-constructs/aws-cloudfront-apigateway-lambda 2.79.1 → 2.81.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 (44) hide show
  1. package/.jsii +76 -58
  2. package/lib/index.d.ts +7 -0
  3. package/lib/index.js +4 -3
  4. package/package.json +8 -8
  5. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/asset.3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f/index.js +23 -0
  6. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/cdk.out +1 -1
  7. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/cftaplam-customCloudfrontLoggingBucket.assets.json +6 -6
  8. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/cftaplam-customCloudfrontLoggingBucket.template.json +30 -41
  9. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/cftaplamcustomCloudfrontLoggingBucketIntegDefaultTestDeployAssert35A683E0.assets.json +1 -1
  10. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/integ.json +1 -1
  11. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/manifest.json +429 -6
  12. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/tree.json +1 -1713
  13. package/test/integ.cftaplam-no-arguments.js.snapshot/asset.3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f/index.js +23 -0
  14. package/test/integ.cftaplam-no-arguments.js.snapshot/cdk.out +1 -1
  15. package/test/integ.cftaplam-no-arguments.js.snapshot/cftaplam-no-arguments.assets.json +6 -6
  16. package/test/integ.cftaplam-no-arguments.js.snapshot/cftaplam-no-arguments.template.json +30 -41
  17. package/test/integ.cftaplam-no-arguments.js.snapshot/cftaplamnoargumentsIntegDefaultTestDeployAssertACC32F59.assets.json +1 -1
  18. package/test/integ.cftaplam-no-arguments.js.snapshot/integ.json +1 -1
  19. package/test/integ.cftaplam-no-arguments.js.snapshot/manifest.json +429 -6
  20. package/test/integ.cftaplam-no-arguments.js.snapshot/tree.json +1 -1713
  21. package/test/integ.cftaplam-no-usage-plan.d.ts +13 -0
  22. package/test/integ.cftaplam-no-usage-plan.js +50 -0
  23. package/test/integ.cftaplam-no-usage-plan.js.snapshot/asset.3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f/index.js +23 -0
  24. package/test/integ.cftaplam-no-usage-plan.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
  25. package/test/integ.cftaplam-no-usage-plan.js.snapshot/cdk.out +1 -0
  26. package/test/integ.cftaplam-no-usage-plan.js.snapshot/cftaplam-no-usage-plan.assets.json +45 -0
  27. package/test/integ.cftaplam-no-usage-plan.js.snapshot/cftaplam-no-usage-plan.template.json +1403 -0
  28. package/test/integ.cftaplam-no-usage-plan.js.snapshot/cftaplamnousageplanIntegDefaultTestDeployAssertABA4F4C5.assets.json +19 -0
  29. package/test/integ.cftaplam-no-usage-plan.js.snapshot/cftaplamnousageplanIntegDefaultTestDeployAssertABA4F4C5.template.json +36 -0
  30. package/test/integ.cftaplam-no-usage-plan.js.snapshot/integ.json +12 -0
  31. package/test/integ.cftaplam-no-usage-plan.js.snapshot/manifest.json +704 -0
  32. package/test/integ.cftaplam-no-usage-plan.js.snapshot/tree.json +1 -0
  33. package/test/integ.cftaplam-override-behavior.js.snapshot/asset.3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f/index.js +23 -0
  34. package/test/integ.cftaplam-override-behavior.js.snapshot/cdk.out +1 -1
  35. package/test/integ.cftaplam-override-behavior.js.snapshot/cftaplam-override-behavior.assets.json +6 -6
  36. package/test/integ.cftaplam-override-behavior.js.snapshot/cftaplam-override-behavior.template.json +30 -41
  37. package/test/integ.cftaplam-override-behavior.js.snapshot/cftaplamoverridebehaviorIntegDefaultTestDeployAssert3DC30427.assets.json +1 -1
  38. package/test/integ.cftaplam-override-behavior.js.snapshot/integ.json +1 -1
  39. package/test/integ.cftaplam-override-behavior.js.snapshot/manifest.json +468 -6
  40. package/test/integ.cftaplam-override-behavior.js.snapshot/tree.json +1 -1797
  41. package/test/test.cloudfront-apigateway-lambda.test.js +42 -1
  42. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/asset.42a35bbf0dec9ef0ac5b0dde87e71a1b8929e8d2d178dd09ccfb2c928ec0198c/index.js +0 -10
  43. package/test/integ.cftaplam-no-arguments.js.snapshot/asset.42a35bbf0dec9ef0ac5b0dde87e71a1b8929e8d2d178dd09ccfb2c928ec0198c/index.js +0 -10
  44. package/test/integ.cftaplam-override-behavior.js.snapshot/asset.42a35bbf0dec9ef0ac5b0dde87e71a1b8929e8d2d178dd09ccfb2c928ec0198c/index.js +0 -10
@@ -1,1797 +1 @@
1
- {
2
- "version": "tree-0.1",
3
- "tree": {
4
- "id": "App",
5
- "path": "",
6
- "children": {
7
- "cftaplam-override-behavior": {
8
- "id": "cftaplam-override-behavior",
9
- "path": "cftaplam-override-behavior",
10
- "children": {
11
- "SomeCachePolicy": {
12
- "id": "SomeCachePolicy",
13
- "path": "cftaplam-override-behavior/SomeCachePolicy",
14
- "children": {
15
- "Resource": {
16
- "id": "Resource",
17
- "path": "cftaplam-override-behavior/SomeCachePolicy/Resource",
18
- "attributes": {
19
- "aws:cdk:cloudformation:type": "AWS::CloudFront::CachePolicy",
20
- "aws:cdk:cloudformation:props": {
21
- "cachePolicyConfig": {
22
- "name": "SomeCachePolicy",
23
- "minTtl": 18000,
24
- "maxTtl": 36000,
25
- "defaultTtl": 28800,
26
- "parametersInCacheKeyAndForwardedToOrigin": {
27
- "cookiesConfig": {
28
- "cookieBehavior": "none"
29
- },
30
- "headersConfig": {
31
- "headerBehavior": "none"
32
- },
33
- "enableAcceptEncodingGzip": false,
34
- "enableAcceptEncodingBrotli": false,
35
- "queryStringsConfig": {
36
- "queryStringBehavior": "none"
37
- }
38
- }
39
- }
40
- }
41
- },
42
- "constructInfo": {
43
- "fqn": "aws-cdk-lib.aws_cloudfront.CfnCachePolicy",
44
- "version": "2.150.0"
45
- }
46
- }
47
- },
48
- "constructInfo": {
49
- "fqn": "aws-cdk-lib.aws_cloudfront.CachePolicy",
50
- "version": "2.150.0"
51
- }
52
- },
53
- "NoCachePolicy": {
54
- "id": "NoCachePolicy",
55
- "path": "cftaplam-override-behavior/NoCachePolicy",
56
- "children": {
57
- "Resource": {
58
- "id": "Resource",
59
- "path": "cftaplam-override-behavior/NoCachePolicy/Resource",
60
- "attributes": {
61
- "aws:cdk:cloudformation:type": "AWS::CloudFront::CachePolicy",
62
- "aws:cdk:cloudformation:props": {
63
- "cachePolicyConfig": {
64
- "name": "NoCachePolicy",
65
- "minTtl": 0,
66
- "maxTtl": 0,
67
- "defaultTtl": 0,
68
- "parametersInCacheKeyAndForwardedToOrigin": {
69
- "cookiesConfig": {
70
- "cookieBehavior": "none"
71
- },
72
- "headersConfig": {
73
- "headerBehavior": "none"
74
- },
75
- "enableAcceptEncodingGzip": false,
76
- "enableAcceptEncodingBrotli": false,
77
- "queryStringsConfig": {
78
- "queryStringBehavior": "none"
79
- }
80
- }
81
- }
82
- }
83
- },
84
- "constructInfo": {
85
- "fqn": "aws-cdk-lib.aws_cloudfront.CfnCachePolicy",
86
- "version": "2.150.0"
87
- }
88
- }
89
- },
90
- "constructInfo": {
91
- "fqn": "aws-cdk-lib.aws_cloudfront.CachePolicy",
92
- "version": "2.150.0"
93
- }
94
- },
95
- "cftaplam-override-behavior-authorizerAuthFunction": {
96
- "id": "cftaplam-override-behavior-authorizerAuthFunction",
97
- "path": "cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction",
98
- "children": {
99
- "ServiceRole": {
100
- "id": "ServiceRole",
101
- "path": "cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/ServiceRole",
102
- "children": {
103
- "ImportServiceRole": {
104
- "id": "ImportServiceRole",
105
- "path": "cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/ServiceRole/ImportServiceRole",
106
- "constructInfo": {
107
- "fqn": "aws-cdk-lib.Resource",
108
- "version": "2.150.0"
109
- }
110
- },
111
- "Resource": {
112
- "id": "Resource",
113
- "path": "cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/ServiceRole/Resource",
114
- "attributes": {
115
- "aws:cdk:cloudformation:type": "AWS::IAM::Role",
116
- "aws:cdk:cloudformation:props": {
117
- "assumeRolePolicyDocument": {
118
- "Statement": [
119
- {
120
- "Action": "sts:AssumeRole",
121
- "Effect": "Allow",
122
- "Principal": {
123
- "Service": "lambda.amazonaws.com"
124
- }
125
- }
126
- ],
127
- "Version": "2012-10-17"
128
- },
129
- "managedPolicyArns": [
130
- {
131
- "Fn::Join": [
132
- "",
133
- [
134
- "arn:",
135
- {
136
- "Ref": "AWS::Partition"
137
- },
138
- ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
139
- ]
140
- ]
141
- }
142
- ]
143
- }
144
- },
145
- "constructInfo": {
146
- "fqn": "aws-cdk-lib.aws_iam.CfnRole",
147
- "version": "2.150.0"
148
- }
149
- }
150
- },
151
- "constructInfo": {
152
- "fqn": "aws-cdk-lib.aws_iam.Role",
153
- "version": "2.150.0"
154
- }
155
- },
156
- "Code": {
157
- "id": "Code",
158
- "path": "cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/Code",
159
- "children": {
160
- "Stage": {
161
- "id": "Stage",
162
- "path": "cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/Code/Stage",
163
- "constructInfo": {
164
- "fqn": "aws-cdk-lib.AssetStaging",
165
- "version": "2.150.0"
166
- }
167
- },
168
- "AssetBucket": {
169
- "id": "AssetBucket",
170
- "path": "cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/Code/AssetBucket",
171
- "constructInfo": {
172
- "fqn": "aws-cdk-lib.aws_s3.BucketBase",
173
- "version": "2.150.0"
174
- }
175
- }
176
- },
177
- "constructInfo": {
178
- "fqn": "aws-cdk-lib.aws_s3_assets.Asset",
179
- "version": "2.150.0"
180
- }
181
- },
182
- "Resource": {
183
- "id": "Resource",
184
- "path": "cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/Resource",
185
- "attributes": {
186
- "aws:cdk:cloudformation:type": "AWS::Lambda::Function",
187
- "aws:cdk:cloudformation:props": {
188
- "code": {
189
- "s3Bucket": {
190
- "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
191
- },
192
- "s3Key": "42a35bbf0dec9ef0ac5b0dde87e71a1b8929e8d2d178dd09ccfb2c928ec0198c.zip"
193
- },
194
- "handler": ".handler",
195
- "role": {
196
- "Fn::GetAtt": [
197
- "cftaplamoverridebehaviorauthorizerAuthFunctionServiceRoleA606974F",
198
- "Arn"
199
- ]
200
- },
201
- "runtime": "nodejs20.x"
202
- }
203
- },
204
- "constructInfo": {
205
- "fqn": "aws-cdk-lib.aws_lambda.CfnFunction",
206
- "version": "2.150.0"
207
- }
208
- },
209
- "cftaplamoverridebehaviorcftaplamoverridebehaviorauthorizer3042C32C:Permissions": {
210
- "id": "cftaplamoverridebehaviorcftaplamoverridebehaviorauthorizer3042C32C:Permissions",
211
- "path": "cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/cftaplamoverridebehaviorcftaplamoverridebehaviorauthorizer3042C32C:Permissions",
212
- "attributes": {
213
- "aws:cdk:cloudformation:type": "AWS::Lambda::Permission",
214
- "aws:cdk:cloudformation:props": {
215
- "action": "lambda:InvokeFunction",
216
- "functionName": {
217
- "Fn::GetAtt": [
218
- "cftaplamoverridebehaviorauthorizerAuthFunction9DD827D6",
219
- "Arn"
220
- ]
221
- },
222
- "principal": "apigateway.amazonaws.com",
223
- "sourceArn": {
224
- "Fn::Join": [
225
- "",
226
- [
227
- "arn:",
228
- {
229
- "Ref": "AWS::Partition"
230
- },
231
- ":execute-api:",
232
- {
233
- "Ref": "AWS::Region"
234
- },
235
- ":",
236
- {
237
- "Ref": "AWS::AccountId"
238
- },
239
- ":",
240
- {
241
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
242
- },
243
- "/authorizers/",
244
- {
245
- "Ref": "cftaplamoverridebehaviorauthorizer74D77225"
246
- }
247
- ]
248
- ]
249
- }
250
- }
251
- },
252
- "constructInfo": {
253
- "fqn": "aws-cdk-lib.aws_lambda.CfnPermission",
254
- "version": "2.150.0"
255
- }
256
- }
257
- },
258
- "constructInfo": {
259
- "fqn": "aws-cdk-lib.aws_lambda.Function",
260
- "version": "2.150.0"
261
- }
262
- },
263
- "cftaplam-override-behavior-authorizer": {
264
- "id": "cftaplam-override-behavior-authorizer",
265
- "path": "cftaplam-override-behavior/cftaplam-override-behavior-authorizer",
266
- "children": {
267
- "Resource": {
268
- "id": "Resource",
269
- "path": "cftaplam-override-behavior/cftaplam-override-behavior-authorizer/Resource",
270
- "attributes": {
271
- "aws:cdk:cloudformation:type": "AWS::ApiGateway::Authorizer",
272
- "aws:cdk:cloudformation:props": {
273
- "authorizerResultTtlInSeconds": 300,
274
- "authorizerUri": {
275
- "Fn::Join": [
276
- "",
277
- [
278
- "arn:",
279
- {
280
- "Fn::Select": [
281
- 1,
282
- {
283
- "Fn::Split": [
284
- ":",
285
- {
286
- "Fn::GetAtt": [
287
- "cftaplamoverridebehaviorauthorizerAuthFunction9DD827D6",
288
- "Arn"
289
- ]
290
- }
291
- ]
292
- }
293
- ]
294
- },
295
- ":apigateway:",
296
- {
297
- "Fn::Select": [
298
- 3,
299
- {
300
- "Fn::Split": [
301
- ":",
302
- {
303
- "Fn::GetAtt": [
304
- "cftaplamoverridebehaviorauthorizerAuthFunction9DD827D6",
305
- "Arn"
306
- ]
307
- }
308
- ]
309
- }
310
- ]
311
- },
312
- ":lambda:path/2015-03-31/functions/",
313
- {
314
- "Fn::GetAtt": [
315
- "cftaplamoverridebehaviorauthorizerAuthFunction9DD827D6",
316
- "Arn"
317
- ]
318
- },
319
- "/invocations"
320
- ]
321
- ]
322
- },
323
- "identitySource": "method.request.header.Authorization",
324
- "name": "cftaplamoverridebehaviorcftaplamoverridebehaviorauthorizer3042C32C",
325
- "restApiId": {
326
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
327
- },
328
- "type": "REQUEST"
329
- }
330
- },
331
- "constructInfo": {
332
- "fqn": "aws-cdk-lib.aws_apigateway.CfnAuthorizer",
333
- "version": "2.150.0"
334
- }
335
- }
336
- },
337
- "constructInfo": {
338
- "fqn": "aws-cdk-lib.aws_apigateway.RequestAuthorizer",
339
- "version": "2.150.0"
340
- }
341
- },
342
- "cf-api-lambda-override": {
343
- "id": "cf-api-lambda-override",
344
- "path": "cftaplam-override-behavior/cf-api-lambda-override",
345
- "children": {
346
- "LambdaFunctionServiceRole": {
347
- "id": "LambdaFunctionServiceRole",
348
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaFunctionServiceRole",
349
- "children": {
350
- "ImportLambdaFunctionServiceRole": {
351
- "id": "ImportLambdaFunctionServiceRole",
352
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaFunctionServiceRole/ImportLambdaFunctionServiceRole",
353
- "constructInfo": {
354
- "fqn": "aws-cdk-lib.Resource",
355
- "version": "2.150.0"
356
- }
357
- },
358
- "Resource": {
359
- "id": "Resource",
360
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaFunctionServiceRole/Resource",
361
- "attributes": {
362
- "aws:cdk:cloudformation:type": "AWS::IAM::Role",
363
- "aws:cdk:cloudformation:props": {
364
- "assumeRolePolicyDocument": {
365
- "Statement": [
366
- {
367
- "Action": "sts:AssumeRole",
368
- "Effect": "Allow",
369
- "Principal": {
370
- "Service": "lambda.amazonaws.com"
371
- }
372
- }
373
- ],
374
- "Version": "2012-10-17"
375
- },
376
- "policies": [
377
- {
378
- "policyName": "LambdaFunctionServiceRolePolicy",
379
- "policyDocument": {
380
- "Statement": [
381
- {
382
- "Action": [
383
- "logs:CreateLogGroup",
384
- "logs:CreateLogStream",
385
- "logs:PutLogEvents"
386
- ],
387
- "Effect": "Allow",
388
- "Resource": {
389
- "Fn::Join": [
390
- "",
391
- [
392
- "arn:",
393
- {
394
- "Ref": "AWS::Partition"
395
- },
396
- ":logs:",
397
- {
398
- "Ref": "AWS::Region"
399
- },
400
- ":",
401
- {
402
- "Ref": "AWS::AccountId"
403
- },
404
- ":log-group:/aws/lambda/*"
405
- ]
406
- ]
407
- }
408
- }
409
- ],
410
- "Version": "2012-10-17"
411
- }
412
- }
413
- ]
414
- }
415
- },
416
- "constructInfo": {
417
- "fqn": "aws-cdk-lib.aws_iam.CfnRole",
418
- "version": "2.150.0"
419
- }
420
- },
421
- "DefaultPolicy": {
422
- "id": "DefaultPolicy",
423
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaFunctionServiceRole/DefaultPolicy",
424
- "children": {
425
- "Resource": {
426
- "id": "Resource",
427
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaFunctionServiceRole/DefaultPolicy/Resource",
428
- "attributes": {
429
- "aws:cdk:cloudformation:type": "AWS::IAM::Policy",
430
- "aws:cdk:cloudformation:props": {
431
- "policyDocument": {
432
- "Statement": [
433
- {
434
- "Action": [
435
- "xray:PutTelemetryRecords",
436
- "xray:PutTraceSegments"
437
- ],
438
- "Effect": "Allow",
439
- "Resource": "*"
440
- }
441
- ],
442
- "Version": "2012-10-17"
443
- },
444
- "policyName": "cfapilambdaoverrideLambdaFunctionServiceRoleDefaultPolicy1A3D9202",
445
- "roles": [
446
- {
447
- "Ref": "cfapilambdaoverrideLambdaFunctionServiceRole4B1A4043"
448
- }
449
- ]
450
- }
451
- },
452
- "constructInfo": {
453
- "fqn": "aws-cdk-lib.aws_iam.CfnPolicy",
454
- "version": "2.150.0"
455
- }
456
- }
457
- },
458
- "constructInfo": {
459
- "fqn": "aws-cdk-lib.aws_iam.Policy",
460
- "version": "2.150.0"
461
- }
462
- }
463
- },
464
- "constructInfo": {
465
- "fqn": "aws-cdk-lib.aws_iam.Role",
466
- "version": "2.150.0"
467
- }
468
- },
469
- "LambdaFunction": {
470
- "id": "LambdaFunction",
471
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction",
472
- "children": {
473
- "Code": {
474
- "id": "Code",
475
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction/Code",
476
- "children": {
477
- "Stage": {
478
- "id": "Stage",
479
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction/Code/Stage",
480
- "constructInfo": {
481
- "fqn": "aws-cdk-lib.AssetStaging",
482
- "version": "2.150.0"
483
- }
484
- },
485
- "AssetBucket": {
486
- "id": "AssetBucket",
487
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction/Code/AssetBucket",
488
- "constructInfo": {
489
- "fqn": "aws-cdk-lib.aws_s3.BucketBase",
490
- "version": "2.150.0"
491
- }
492
- }
493
- },
494
- "constructInfo": {
495
- "fqn": "aws-cdk-lib.aws_s3_assets.Asset",
496
- "version": "2.150.0"
497
- }
498
- },
499
- "Resource": {
500
- "id": "Resource",
501
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction/Resource",
502
- "attributes": {
503
- "aws:cdk:cloudformation:type": "AWS::Lambda::Function",
504
- "aws:cdk:cloudformation:props": {
505
- "code": {
506
- "s3Bucket": {
507
- "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
508
- },
509
- "s3Key": "42a35bbf0dec9ef0ac5b0dde87e71a1b8929e8d2d178dd09ccfb2c928ec0198c.zip"
510
- },
511
- "environment": {
512
- "variables": {
513
- "AWS_NODEJS_CONNECTION_REUSE_ENABLED": "1"
514
- }
515
- },
516
- "handler": "index.handler",
517
- "role": {
518
- "Fn::GetAtt": [
519
- "cfapilambdaoverrideLambdaFunctionServiceRole4B1A4043",
520
- "Arn"
521
- ]
522
- },
523
- "runtime": "nodejs20.x",
524
- "tracingConfig": {
525
- "mode": "Active"
526
- }
527
- }
528
- },
529
- "constructInfo": {
530
- "fqn": "aws-cdk-lib.aws_lambda.CfnFunction",
531
- "version": "2.150.0"
532
- }
533
- }
534
- },
535
- "constructInfo": {
536
- "fqn": "aws-cdk-lib.aws_lambda.Function",
537
- "version": "2.150.0"
538
- }
539
- },
540
- "ApiAccessLogGroup": {
541
- "id": "ApiAccessLogGroup",
542
- "path": "cftaplam-override-behavior/cf-api-lambda-override/ApiAccessLogGroup",
543
- "children": {
544
- "Resource": {
545
- "id": "Resource",
546
- "path": "cftaplam-override-behavior/cf-api-lambda-override/ApiAccessLogGroup/Resource",
547
- "attributes": {
548
- "aws:cdk:cloudformation:type": "AWS::Logs::LogGroup",
549
- "aws:cdk:cloudformation:props": {}
550
- },
551
- "constructInfo": {
552
- "fqn": "aws-cdk-lib.aws_logs.CfnLogGroup",
553
- "version": "2.150.0"
554
- }
555
- }
556
- },
557
- "constructInfo": {
558
- "fqn": "aws-cdk-lib.aws_logs.LogGroup",
559
- "version": "2.150.0"
560
- }
561
- },
562
- "LambdaRestApi": {
563
- "id": "LambdaRestApi",
564
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi",
565
- "children": {
566
- "Resource": {
567
- "id": "Resource",
568
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Resource",
569
- "attributes": {
570
- "aws:cdk:cloudformation:type": "AWS::ApiGateway::RestApi",
571
- "aws:cdk:cloudformation:props": {
572
- "endpointConfiguration": {
573
- "types": [
574
- "REGIONAL"
575
- ]
576
- },
577
- "name": "LambdaRestApi"
578
- }
579
- },
580
- "constructInfo": {
581
- "fqn": "aws-cdk-lib.aws_apigateway.CfnRestApi",
582
- "version": "2.150.0"
583
- }
584
- },
585
- "Deployment": {
586
- "id": "Deployment",
587
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Deployment",
588
- "children": {
589
- "Resource": {
590
- "id": "Resource",
591
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Deployment/Resource",
592
- "attributes": {
593
- "aws:cdk:cloudformation:type": "AWS::ApiGateway::Deployment",
594
- "aws:cdk:cloudformation:props": {
595
- "description": "Automatically created by the RestApi construct",
596
- "restApiId": {
597
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
598
- }
599
- }
600
- },
601
- "constructInfo": {
602
- "fqn": "aws-cdk-lib.aws_apigateway.CfnDeployment",
603
- "version": "2.150.0"
604
- }
605
- }
606
- },
607
- "constructInfo": {
608
- "fqn": "aws-cdk-lib.aws_apigateway.Deployment",
609
- "version": "2.150.0"
610
- }
611
- },
612
- "DeploymentStage.prod": {
613
- "id": "DeploymentStage.prod",
614
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/DeploymentStage.prod",
615
- "children": {
616
- "Resource": {
617
- "id": "Resource",
618
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/DeploymentStage.prod/Resource",
619
- "attributes": {
620
- "aws:cdk:cloudformation:type": "AWS::ApiGateway::Stage",
621
- "aws:cdk:cloudformation:props": {
622
- "accessLogSetting": {
623
- "destinationArn": {
624
- "Fn::GetAtt": [
625
- "cfapilambdaoverrideApiAccessLogGroup2665068D",
626
- "Arn"
627
- ]
628
- },
629
- "format": "{\"requestId\":\"$context.requestId\",\"ip\":\"$context.identity.sourceIp\",\"user\":\"$context.identity.user\",\"caller\":\"$context.identity.caller\",\"requestTime\":\"$context.requestTime\",\"httpMethod\":\"$context.httpMethod\",\"resourcePath\":\"$context.resourcePath\",\"status\":\"$context.status\",\"protocol\":\"$context.protocol\",\"responseLength\":\"$context.responseLength\"}"
630
- },
631
- "deploymentId": {
632
- "Ref": "cfapilambdaoverrideLambdaRestApiDeployment82ACBB00eff3607850f915efb43bbead11999a10"
633
- },
634
- "methodSettings": [
635
- {
636
- "httpMethod": "*",
637
- "resourcePath": "/*",
638
- "dataTraceEnabled": false,
639
- "loggingLevel": "INFO"
640
- }
641
- ],
642
- "restApiId": {
643
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
644
- },
645
- "stageName": "prod",
646
- "tracingEnabled": true
647
- }
648
- },
649
- "constructInfo": {
650
- "fqn": "aws-cdk-lib.aws_apigateway.CfnStage",
651
- "version": "2.150.0"
652
- }
653
- }
654
- },
655
- "constructInfo": {
656
- "fqn": "aws-cdk-lib.aws_apigateway.Stage",
657
- "version": "2.150.0"
658
- }
659
- },
660
- "Endpoint": {
661
- "id": "Endpoint",
662
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Endpoint",
663
- "constructInfo": {
664
- "fqn": "aws-cdk-lib.CfnOutput",
665
- "version": "2.150.0"
666
- }
667
- },
668
- "Default": {
669
- "id": "Default",
670
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default",
671
- "children": {
672
- "static": {
673
- "id": "static",
674
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/static",
675
- "children": {
676
- "Resource": {
677
- "id": "Resource",
678
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/static/Resource",
679
- "attributes": {
680
- "aws:cdk:cloudformation:type": "AWS::ApiGateway::Resource",
681
- "aws:cdk:cloudformation:props": {
682
- "parentId": {
683
- "Fn::GetAtt": [
684
- "cfapilambdaoverrideLambdaRestApi6E7952FC",
685
- "RootResourceId"
686
- ]
687
- },
688
- "pathPart": "static",
689
- "restApiId": {
690
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
691
- }
692
- }
693
- },
694
- "constructInfo": {
695
- "fqn": "aws-cdk-lib.aws_apigateway.CfnResource",
696
- "version": "2.150.0"
697
- }
698
- },
699
- "GET": {
700
- "id": "GET",
701
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/static/GET",
702
- "children": {
703
- "Resource": {
704
- "id": "Resource",
705
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/static/GET/Resource",
706
- "attributes": {
707
- "aws:cdk:cloudformation:type": "AWS::ApiGateway::Method",
708
- "aws:cdk:cloudformation:props": {
709
- "authorizationType": "CUSTOM",
710
- "authorizerId": {
711
- "Ref": "cftaplamoverridebehaviorauthorizer74D77225"
712
- },
713
- "httpMethod": "GET",
714
- "integration": {
715
- "type": "HTTP_PROXY",
716
- "uri": "http://amazon.com",
717
- "integrationHttpMethod": "GET"
718
- },
719
- "resourceId": {
720
- "Ref": "cfapilambdaoverrideLambdaRestApistaticC2ECB649"
721
- },
722
- "restApiId": {
723
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
724
- }
725
- }
726
- },
727
- "constructInfo": {
728
- "fqn": "aws-cdk-lib.aws_apigateway.CfnMethod",
729
- "version": "2.150.0"
730
- }
731
- }
732
- },
733
- "constructInfo": {
734
- "fqn": "aws-cdk-lib.aws_apigateway.Method",
735
- "version": "2.150.0"
736
- }
737
- }
738
- },
739
- "constructInfo": {
740
- "fqn": "aws-cdk-lib.aws_apigateway.Resource",
741
- "version": "2.150.0"
742
- }
743
- },
744
- "dynamic": {
745
- "id": "dynamic",
746
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic",
747
- "children": {
748
- "Resource": {
749
- "id": "Resource",
750
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic/Resource",
751
- "attributes": {
752
- "aws:cdk:cloudformation:type": "AWS::ApiGateway::Resource",
753
- "aws:cdk:cloudformation:props": {
754
- "parentId": {
755
- "Fn::GetAtt": [
756
- "cfapilambdaoverrideLambdaRestApi6E7952FC",
757
- "RootResourceId"
758
- ]
759
- },
760
- "pathPart": "dynamic",
761
- "restApiId": {
762
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
763
- }
764
- }
765
- },
766
- "constructInfo": {
767
- "fqn": "aws-cdk-lib.aws_apigateway.CfnResource",
768
- "version": "2.150.0"
769
- }
770
- },
771
- "GET": {
772
- "id": "GET",
773
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic/GET",
774
- "children": {
775
- "ApiPermission.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic": {
776
- "id": "ApiPermission.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic",
777
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic/GET/ApiPermission.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic",
778
- "attributes": {
779
- "aws:cdk:cloudformation:type": "AWS::Lambda::Permission",
780
- "aws:cdk:cloudformation:props": {
781
- "action": "lambda:InvokeFunction",
782
- "functionName": {
783
- "Fn::GetAtt": [
784
- "cfapilambdaoverrideLambdaFunction74CE466F",
785
- "Arn"
786
- ]
787
- },
788
- "principal": "apigateway.amazonaws.com",
789
- "sourceArn": {
790
- "Fn::Join": [
791
- "",
792
- [
793
- "arn:",
794
- {
795
- "Ref": "AWS::Partition"
796
- },
797
- ":execute-api:",
798
- {
799
- "Ref": "AWS::Region"
800
- },
801
- ":",
802
- {
803
- "Ref": "AWS::AccountId"
804
- },
805
- ":",
806
- {
807
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
808
- },
809
- "/",
810
- {
811
- "Ref": "cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"
812
- },
813
- "/GET/dynamic"
814
- ]
815
- ]
816
- }
817
- }
818
- },
819
- "constructInfo": {
820
- "fqn": "aws-cdk-lib.aws_lambda.CfnPermission",
821
- "version": "2.150.0"
822
- }
823
- },
824
- "ApiPermission.Test.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic": {
825
- "id": "ApiPermission.Test.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic",
826
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic/GET/ApiPermission.Test.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic",
827
- "attributes": {
828
- "aws:cdk:cloudformation:type": "AWS::Lambda::Permission",
829
- "aws:cdk:cloudformation:props": {
830
- "action": "lambda:InvokeFunction",
831
- "functionName": {
832
- "Fn::GetAtt": [
833
- "cfapilambdaoverrideLambdaFunction74CE466F",
834
- "Arn"
835
- ]
836
- },
837
- "principal": "apigateway.amazonaws.com",
838
- "sourceArn": {
839
- "Fn::Join": [
840
- "",
841
- [
842
- "arn:",
843
- {
844
- "Ref": "AWS::Partition"
845
- },
846
- ":execute-api:",
847
- {
848
- "Ref": "AWS::Region"
849
- },
850
- ":",
851
- {
852
- "Ref": "AWS::AccountId"
853
- },
854
- ":",
855
- {
856
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
857
- },
858
- "/test-invoke-stage/GET/dynamic"
859
- ]
860
- ]
861
- }
862
- }
863
- },
864
- "constructInfo": {
865
- "fqn": "aws-cdk-lib.aws_lambda.CfnPermission",
866
- "version": "2.150.0"
867
- }
868
- },
869
- "Resource": {
870
- "id": "Resource",
871
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic/GET/Resource",
872
- "attributes": {
873
- "aws:cdk:cloudformation:type": "AWS::ApiGateway::Method",
874
- "aws:cdk:cloudformation:props": {
875
- "authorizationType": "CUSTOM",
876
- "authorizerId": {
877
- "Ref": "cftaplamoverridebehaviorauthorizer74D77225"
878
- },
879
- "httpMethod": "GET",
880
- "integration": {
881
- "type": "AWS_PROXY",
882
- "uri": {
883
- "Fn::Join": [
884
- "",
885
- [
886
- "arn:",
887
- {
888
- "Ref": "AWS::Partition"
889
- },
890
- ":apigateway:",
891
- {
892
- "Ref": "AWS::Region"
893
- },
894
- ":lambda:path/2015-03-31/functions/",
895
- {
896
- "Fn::GetAtt": [
897
- "cfapilambdaoverrideLambdaFunction74CE466F",
898
- "Arn"
899
- ]
900
- },
901
- "/invocations"
902
- ]
903
- ]
904
- },
905
- "integrationHttpMethod": "POST"
906
- },
907
- "resourceId": {
908
- "Ref": "cfapilambdaoverrideLambdaRestApidynamic88206171"
909
- },
910
- "restApiId": {
911
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
912
- }
913
- }
914
- },
915
- "constructInfo": {
916
- "fqn": "aws-cdk-lib.aws_apigateway.CfnMethod",
917
- "version": "2.150.0"
918
- }
919
- }
920
- },
921
- "constructInfo": {
922
- "fqn": "aws-cdk-lib.aws_apigateway.Method",
923
- "version": "2.150.0"
924
- }
925
- }
926
- },
927
- "constructInfo": {
928
- "fqn": "aws-cdk-lib.aws_apigateway.Resource",
929
- "version": "2.150.0"
930
- }
931
- }
932
- },
933
- "constructInfo": {
934
- "fqn": "aws-cdk-lib.aws_apigateway.ResourceBase",
935
- "version": "2.150.0"
936
- }
937
- },
938
- "UsagePlan": {
939
- "id": "UsagePlan",
940
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/UsagePlan",
941
- "children": {
942
- "Resource": {
943
- "id": "Resource",
944
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/UsagePlan/Resource",
945
- "attributes": {
946
- "aws:cdk:cloudformation:type": "AWS::ApiGateway::UsagePlan",
947
- "aws:cdk:cloudformation:props": {
948
- "apiStages": [
949
- {
950
- "apiId": {
951
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
952
- },
953
- "stage": {
954
- "Ref": "cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"
955
- },
956
- "throttle": {}
957
- }
958
- ]
959
- }
960
- },
961
- "constructInfo": {
962
- "fqn": "aws-cdk-lib.aws_apigateway.CfnUsagePlan",
963
- "version": "2.150.0"
964
- }
965
- }
966
- },
967
- "constructInfo": {
968
- "fqn": "aws-cdk-lib.aws_apigateway.UsagePlan",
969
- "version": "2.150.0"
970
- }
971
- }
972
- },
973
- "constructInfo": {
974
- "fqn": "aws-cdk-lib.aws_apigateway.LambdaRestApi",
975
- "version": "2.150.0"
976
- }
977
- },
978
- "LambdaRestApiCloudWatchRole": {
979
- "id": "LambdaRestApiCloudWatchRole",
980
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApiCloudWatchRole",
981
- "children": {
982
- "ImportLambdaRestApiCloudWatchRole": {
983
- "id": "ImportLambdaRestApiCloudWatchRole",
984
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApiCloudWatchRole/ImportLambdaRestApiCloudWatchRole",
985
- "constructInfo": {
986
- "fqn": "aws-cdk-lib.Resource",
987
- "version": "2.150.0"
988
- }
989
- },
990
- "Resource": {
991
- "id": "Resource",
992
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApiCloudWatchRole/Resource",
993
- "attributes": {
994
- "aws:cdk:cloudformation:type": "AWS::IAM::Role",
995
- "aws:cdk:cloudformation:props": {
996
- "assumeRolePolicyDocument": {
997
- "Statement": [
998
- {
999
- "Action": "sts:AssumeRole",
1000
- "Effect": "Allow",
1001
- "Principal": {
1002
- "Service": "apigateway.amazonaws.com"
1003
- }
1004
- }
1005
- ],
1006
- "Version": "2012-10-17"
1007
- },
1008
- "policies": [
1009
- {
1010
- "policyName": "LambdaRestApiCloudWatchRolePolicy",
1011
- "policyDocument": {
1012
- "Statement": [
1013
- {
1014
- "Action": [
1015
- "logs:CreateLogGroup",
1016
- "logs:CreateLogStream",
1017
- "logs:DescribeLogGroups",
1018
- "logs:DescribeLogStreams",
1019
- "logs:FilterLogEvents",
1020
- "logs:GetLogEvents",
1021
- "logs:PutLogEvents"
1022
- ],
1023
- "Effect": "Allow",
1024
- "Resource": {
1025
- "Fn::Join": [
1026
- "",
1027
- [
1028
- "arn:",
1029
- {
1030
- "Ref": "AWS::Partition"
1031
- },
1032
- ":logs:",
1033
- {
1034
- "Ref": "AWS::Region"
1035
- },
1036
- ":",
1037
- {
1038
- "Ref": "AWS::AccountId"
1039
- },
1040
- ":*"
1041
- ]
1042
- ]
1043
- }
1044
- }
1045
- ],
1046
- "Version": "2012-10-17"
1047
- }
1048
- }
1049
- ]
1050
- }
1051
- },
1052
- "constructInfo": {
1053
- "fqn": "aws-cdk-lib.aws_iam.CfnRole",
1054
- "version": "2.150.0"
1055
- }
1056
- }
1057
- },
1058
- "constructInfo": {
1059
- "fqn": "aws-cdk-lib.aws_iam.Role",
1060
- "version": "2.150.0"
1061
- }
1062
- },
1063
- "LambdaRestApiAccount": {
1064
- "id": "LambdaRestApiAccount",
1065
- "path": "cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApiAccount",
1066
- "attributes": {
1067
- "aws:cdk:cloudformation:type": "AWS::ApiGateway::Account",
1068
- "aws:cdk:cloudformation:props": {
1069
- "cloudWatchRoleArn": {
1070
- "Fn::GetAtt": [
1071
- "cfapilambdaoverrideLambdaRestApiCloudWatchRole0F1F3559",
1072
- "Arn"
1073
- ]
1074
- }
1075
- }
1076
- },
1077
- "constructInfo": {
1078
- "fqn": "aws-cdk-lib.aws_apigateway.CfnAccount",
1079
- "version": "2.150.0"
1080
- }
1081
- },
1082
- "CloudFrontToApiGateway": {
1083
- "id": "CloudFrontToApiGateway",
1084
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway",
1085
- "children": {
1086
- "SetHttpSecurityHeaders": {
1087
- "id": "SetHttpSecurityHeaders",
1088
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/SetHttpSecurityHeaders",
1089
- "children": {
1090
- "Resource": {
1091
- "id": "Resource",
1092
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/SetHttpSecurityHeaders/Resource",
1093
- "attributes": {
1094
- "aws:cdk:cloudformation:type": "AWS::CloudFront::Function",
1095
- "aws:cdk:cloudformation:props": {
1096
- "autoPublish": true,
1097
- "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; }",
1098
- "functionConfig": {
1099
- "comment": "SetHttpSecurityHeadersc826c2a6a3ffe209aed33765f37752084820de0d3b",
1100
- "runtime": "cloudfront-js-1.0"
1101
- },
1102
- "name": "SetHttpSecurityHeadersc826c2a6a3ffe209aed33765f37752084820de0d3b"
1103
- }
1104
- },
1105
- "constructInfo": {
1106
- "fqn": "aws-cdk-lib.aws_cloudfront.CfnFunction",
1107
- "version": "2.150.0"
1108
- }
1109
- }
1110
- },
1111
- "constructInfo": {
1112
- "fqn": "aws-cdk-lib.aws_cloudfront.Function",
1113
- "version": "2.150.0"
1114
- }
1115
- },
1116
- "CloudfrontLoggingBucketAccessLog": {
1117
- "id": "CloudfrontLoggingBucketAccessLog",
1118
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog",
1119
- "children": {
1120
- "Resource": {
1121
- "id": "Resource",
1122
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Resource",
1123
- "attributes": {
1124
- "aws:cdk:cloudformation:type": "AWS::S3::Bucket",
1125
- "aws:cdk:cloudformation:props": {
1126
- "bucketEncryption": {
1127
- "serverSideEncryptionConfiguration": [
1128
- {
1129
- "serverSideEncryptionByDefault": {
1130
- "sseAlgorithm": "AES256"
1131
- }
1132
- }
1133
- ]
1134
- },
1135
- "publicAccessBlockConfiguration": {
1136
- "blockPublicAcls": true,
1137
- "blockPublicPolicy": true,
1138
- "ignorePublicAcls": true,
1139
- "restrictPublicBuckets": true
1140
- },
1141
- "versioningConfiguration": {
1142
- "status": "Enabled"
1143
- }
1144
- }
1145
- },
1146
- "constructInfo": {
1147
- "fqn": "aws-cdk-lib.aws_s3.CfnBucket",
1148
- "version": "2.150.0"
1149
- }
1150
- },
1151
- "Policy": {
1152
- "id": "Policy",
1153
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Policy",
1154
- "children": {
1155
- "Resource": {
1156
- "id": "Resource",
1157
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Policy/Resource",
1158
- "attributes": {
1159
- "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy",
1160
- "aws:cdk:cloudformation:props": {
1161
- "bucket": {
1162
- "Ref": "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog9CEB5CD9"
1163
- },
1164
- "policyDocument": {
1165
- "Statement": [
1166
- {
1167
- "Action": "s3:*",
1168
- "Condition": {
1169
- "Bool": {
1170
- "aws:SecureTransport": "false"
1171
- }
1172
- },
1173
- "Effect": "Deny",
1174
- "Principal": {
1175
- "AWS": "*"
1176
- },
1177
- "Resource": [
1178
- {
1179
- "Fn::GetAtt": [
1180
- "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog9CEB5CD9",
1181
- "Arn"
1182
- ]
1183
- },
1184
- {
1185
- "Fn::Join": [
1186
- "",
1187
- [
1188
- {
1189
- "Fn::GetAtt": [
1190
- "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog9CEB5CD9",
1191
- "Arn"
1192
- ]
1193
- },
1194
- "/*"
1195
- ]
1196
- ]
1197
- }
1198
- ]
1199
- },
1200
- {
1201
- "Action": "s3:PutObject",
1202
- "Condition": {
1203
- "ArnLike": {
1204
- "aws:SourceArn": {
1205
- "Fn::GetAtt": [
1206
- "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0",
1207
- "Arn"
1208
- ]
1209
- }
1210
- },
1211
- "StringEquals": {
1212
- "aws:SourceAccount": {
1213
- "Ref": "AWS::AccountId"
1214
- }
1215
- }
1216
- },
1217
- "Effect": "Allow",
1218
- "Principal": {
1219
- "Service": "logging.s3.amazonaws.com"
1220
- },
1221
- "Resource": {
1222
- "Fn::Join": [
1223
- "",
1224
- [
1225
- {
1226
- "Fn::GetAtt": [
1227
- "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog9CEB5CD9",
1228
- "Arn"
1229
- ]
1230
- },
1231
- "/*"
1232
- ]
1233
- ]
1234
- }
1235
- }
1236
- ],
1237
- "Version": "2012-10-17"
1238
- }
1239
- }
1240
- },
1241
- "constructInfo": {
1242
- "fqn": "aws-cdk-lib.aws_s3.CfnBucketPolicy",
1243
- "version": "2.150.0"
1244
- }
1245
- }
1246
- },
1247
- "constructInfo": {
1248
- "fqn": "aws-cdk-lib.aws_s3.BucketPolicy",
1249
- "version": "2.150.0"
1250
- }
1251
- }
1252
- },
1253
- "constructInfo": {
1254
- "fqn": "aws-cdk-lib.aws_s3.Bucket",
1255
- "version": "2.150.0"
1256
- }
1257
- },
1258
- "CloudfrontLoggingBucket": {
1259
- "id": "CloudfrontLoggingBucket",
1260
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket",
1261
- "children": {
1262
- "Resource": {
1263
- "id": "Resource",
1264
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket/Resource",
1265
- "attributes": {
1266
- "aws:cdk:cloudformation:type": "AWS::S3::Bucket",
1267
- "aws:cdk:cloudformation:props": {
1268
- "bucketEncryption": {
1269
- "serverSideEncryptionConfiguration": [
1270
- {
1271
- "serverSideEncryptionByDefault": {
1272
- "sseAlgorithm": "AES256"
1273
- }
1274
- }
1275
- ]
1276
- },
1277
- "loggingConfiguration": {
1278
- "destinationBucketName": {
1279
- "Ref": "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog9CEB5CD9"
1280
- }
1281
- },
1282
- "ownershipControls": {
1283
- "rules": [
1284
- {
1285
- "objectOwnership": "ObjectWriter"
1286
- }
1287
- ]
1288
- },
1289
- "publicAccessBlockConfiguration": {
1290
- "blockPublicAcls": true,
1291
- "blockPublicPolicy": true,
1292
- "ignorePublicAcls": true,
1293
- "restrictPublicBuckets": true
1294
- },
1295
- "tags": [
1296
- {
1297
- "key": "aws-cdk:auto-delete-objects",
1298
- "value": "true"
1299
- }
1300
- ],
1301
- "versioningConfiguration": {
1302
- "status": "Enabled"
1303
- }
1304
- }
1305
- },
1306
- "constructInfo": {
1307
- "fqn": "aws-cdk-lib.aws_s3.CfnBucket",
1308
- "version": "2.150.0"
1309
- }
1310
- },
1311
- "Policy": {
1312
- "id": "Policy",
1313
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket/Policy",
1314
- "children": {
1315
- "Resource": {
1316
- "id": "Resource",
1317
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket/Policy/Resource",
1318
- "attributes": {
1319
- "aws:cdk:cloudformation:type": "AWS::S3::BucketPolicy",
1320
- "aws:cdk:cloudformation:props": {
1321
- "bucket": {
1322
- "Ref": "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0"
1323
- },
1324
- "policyDocument": {
1325
- "Statement": [
1326
- {
1327
- "Action": "s3:*",
1328
- "Condition": {
1329
- "Bool": {
1330
- "aws:SecureTransport": "false"
1331
- }
1332
- },
1333
- "Effect": "Deny",
1334
- "Principal": {
1335
- "AWS": "*"
1336
- },
1337
- "Resource": [
1338
- {
1339
- "Fn::GetAtt": [
1340
- "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0",
1341
- "Arn"
1342
- ]
1343
- },
1344
- {
1345
- "Fn::Join": [
1346
- "",
1347
- [
1348
- {
1349
- "Fn::GetAtt": [
1350
- "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0",
1351
- "Arn"
1352
- ]
1353
- },
1354
- "/*"
1355
- ]
1356
- ]
1357
- }
1358
- ]
1359
- },
1360
- {
1361
- "Action": [
1362
- "s3:DeleteObject*",
1363
- "s3:GetBucket*",
1364
- "s3:List*",
1365
- "s3:PutBucketPolicy"
1366
- ],
1367
- "Effect": "Allow",
1368
- "Principal": {
1369
- "AWS": {
1370
- "Fn::GetAtt": [
1371
- "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092",
1372
- "Arn"
1373
- ]
1374
- }
1375
- },
1376
- "Resource": [
1377
- {
1378
- "Fn::GetAtt": [
1379
- "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0",
1380
- "Arn"
1381
- ]
1382
- },
1383
- {
1384
- "Fn::Join": [
1385
- "",
1386
- [
1387
- {
1388
- "Fn::GetAtt": [
1389
- "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0",
1390
- "Arn"
1391
- ]
1392
- },
1393
- "/*"
1394
- ]
1395
- ]
1396
- }
1397
- ]
1398
- }
1399
- ],
1400
- "Version": "2012-10-17"
1401
- }
1402
- }
1403
- },
1404
- "constructInfo": {
1405
- "fqn": "aws-cdk-lib.aws_s3.CfnBucketPolicy",
1406
- "version": "2.150.0"
1407
- }
1408
- }
1409
- },
1410
- "constructInfo": {
1411
- "fqn": "aws-cdk-lib.aws_s3.BucketPolicy",
1412
- "version": "2.150.0"
1413
- }
1414
- },
1415
- "AutoDeleteObjectsCustomResource": {
1416
- "id": "AutoDeleteObjectsCustomResource",
1417
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource",
1418
- "children": {
1419
- "Default": {
1420
- "id": "Default",
1421
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource/Default",
1422
- "constructInfo": {
1423
- "fqn": "aws-cdk-lib.CfnResource",
1424
- "version": "2.150.0"
1425
- }
1426
- }
1427
- },
1428
- "constructInfo": {
1429
- "fqn": "aws-cdk-lib.CustomResource",
1430
- "version": "2.150.0"
1431
- }
1432
- }
1433
- },
1434
- "constructInfo": {
1435
- "fqn": "aws-cdk-lib.aws_s3.Bucket",
1436
- "version": "2.150.0"
1437
- }
1438
- },
1439
- "CloudFrontDistribution": {
1440
- "id": "CloudFrontDistribution",
1441
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudFrontDistribution",
1442
- "children": {
1443
- "Origin1": {
1444
- "id": "Origin1",
1445
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudFrontDistribution/Origin1",
1446
- "constructInfo": {
1447
- "fqn": "constructs.Construct",
1448
- "version": "10.3.0"
1449
- }
1450
- },
1451
- "Resource": {
1452
- "id": "Resource",
1453
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudFrontDistribution/Resource",
1454
- "attributes": {
1455
- "aws:cdk:cloudformation:type": "AWS::CloudFront::Distribution",
1456
- "aws:cdk:cloudformation:props": {
1457
- "distributionConfig": {
1458
- "enabled": true,
1459
- "origins": [
1460
- {
1461
- "domainName": {
1462
- "Fn::Select": [
1463
- 0,
1464
- {
1465
- "Fn::Split": [
1466
- "/",
1467
- {
1468
- "Fn::Select": [
1469
- 1,
1470
- {
1471
- "Fn::Split": [
1472
- "://",
1473
- {
1474
- "Fn::Join": [
1475
- "",
1476
- [
1477
- "https://",
1478
- {
1479
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
1480
- },
1481
- ".execute-api.",
1482
- {
1483
- "Ref": "AWS::Region"
1484
- },
1485
- ".",
1486
- {
1487
- "Ref": "AWS::URLSuffix"
1488
- },
1489
- "/",
1490
- {
1491
- "Ref": "cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"
1492
- },
1493
- "/"
1494
- ]
1495
- ]
1496
- }
1497
- ]
1498
- }
1499
- ]
1500
- }
1501
- ]
1502
- }
1503
- ]
1504
- },
1505
- "id": "cftaplamoverridebehaviorcfapilambdaoverrideCloudFrontToApiGatewayCloudFrontDistributionOrigin14C42522D",
1506
- "originPath": {
1507
- "Fn::Join": [
1508
- "",
1509
- [
1510
- "/",
1511
- {
1512
- "Ref": "cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"
1513
- }
1514
- ]
1515
- ]
1516
- },
1517
- "customOriginConfig": {
1518
- "originSslProtocols": [
1519
- "TLSv1.2"
1520
- ],
1521
- "originProtocolPolicy": "https-only"
1522
- }
1523
- },
1524
- {
1525
- "domainName": {
1526
- "Fn::Select": [
1527
- 0,
1528
- {
1529
- "Fn::Split": [
1530
- "/",
1531
- {
1532
- "Fn::Select": [
1533
- 1,
1534
- {
1535
- "Fn::Split": [
1536
- "://",
1537
- {
1538
- "Fn::Join": [
1539
- "",
1540
- [
1541
- "https://",
1542
- {
1543
- "Ref": "cfapilambdaoverrideLambdaRestApi6E7952FC"
1544
- },
1545
- ".execute-api.",
1546
- {
1547
- "Ref": "AWS::Region"
1548
- },
1549
- ".",
1550
- {
1551
- "Ref": "AWS::URLSuffix"
1552
- },
1553
- "/",
1554
- {
1555
- "Ref": "cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"
1556
- },
1557
- "/"
1558
- ]
1559
- ]
1560
- }
1561
- ]
1562
- }
1563
- ]
1564
- }
1565
- ]
1566
- }
1567
- ]
1568
- },
1569
- "id": "cftaplamoverridebehaviorcfapilambdaoverrideCloudFrontToApiGatewayCloudFrontDistributionOrigin2D0C9421C",
1570
- "originPath": {
1571
- "Fn::Join": [
1572
- "",
1573
- [
1574
- "/",
1575
- {
1576
- "Ref": "cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"
1577
- },
1578
- "/dynamic"
1579
- ]
1580
- ]
1581
- },
1582
- "customOriginConfig": {
1583
- "originSslProtocols": [
1584
- "TLSv1.2"
1585
- ],
1586
- "originProtocolPolicy": "https-only"
1587
- }
1588
- }
1589
- ],
1590
- "defaultCacheBehavior": {
1591
- "pathPattern": "*",
1592
- "targetOriginId": "cftaplamoverridebehaviorcfapilambdaoverrideCloudFrontToApiGatewayCloudFrontDistributionOrigin14C42522D",
1593
- "cachePolicyId": {
1594
- "Ref": "SomeCachePolicy40B9E4D4"
1595
- },
1596
- "compress": true,
1597
- "viewerProtocolPolicy": "redirect-to-https",
1598
- "functionAssociations": [
1599
- {
1600
- "functionArn": {
1601
- "Fn::GetAtt": [
1602
- "cfapilambdaoverrideCloudFrontToApiGatewaySetHttpSecurityHeaders67E61E6E",
1603
- "FunctionARN"
1604
- ]
1605
- },
1606
- "eventType": "viewer-response"
1607
- }
1608
- ]
1609
- },
1610
- "cacheBehaviors": [
1611
- {
1612
- "pathPattern": "/dynamic",
1613
- "targetOriginId": "cftaplamoverridebehaviorcfapilambdaoverrideCloudFrontToApiGatewayCloudFrontDistributionOrigin2D0C9421C",
1614
- "cachePolicyId": {
1615
- "Ref": "NoCachePolicy1F71EC46"
1616
- },
1617
- "compress": true,
1618
- "viewerProtocolPolicy": "allow-all"
1619
- }
1620
- ],
1621
- "httpVersion": "http2",
1622
- "ipv6Enabled": true,
1623
- "logging": {
1624
- "bucket": {
1625
- "Fn::GetAtt": [
1626
- "cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0",
1627
- "RegionalDomainName"
1628
- ]
1629
- }
1630
- }
1631
- }
1632
- }
1633
- },
1634
- "constructInfo": {
1635
- "fqn": "aws-cdk-lib.aws_cloudfront.CfnDistribution",
1636
- "version": "2.150.0"
1637
- }
1638
- },
1639
- "Origin2": {
1640
- "id": "Origin2",
1641
- "path": "cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudFrontDistribution/Origin2",
1642
- "constructInfo": {
1643
- "fqn": "constructs.Construct",
1644
- "version": "10.3.0"
1645
- }
1646
- }
1647
- },
1648
- "constructInfo": {
1649
- "fqn": "aws-cdk-lib.aws_cloudfront.Distribution",
1650
- "version": "2.150.0"
1651
- }
1652
- }
1653
- },
1654
- "constructInfo": {
1655
- "fqn": "@aws-solutions-constructs/aws-cloudfront-apigateway.CloudFrontToApiGateway",
1656
- "version": "2.63.0"
1657
- }
1658
- }
1659
- },
1660
- "constructInfo": {
1661
- "fqn": "@aws-solutions-constructs/aws-cloudfront-apigateway-lambda.CloudFrontToApiGatewayToLambda",
1662
- "version": "2.63.0"
1663
- }
1664
- },
1665
- "LatestNodeRuntimeMap": {
1666
- "id": "LatestNodeRuntimeMap",
1667
- "path": "cftaplam-override-behavior/LatestNodeRuntimeMap",
1668
- "constructInfo": {
1669
- "fqn": "aws-cdk-lib.CfnMapping",
1670
- "version": "2.150.0"
1671
- }
1672
- },
1673
- "Custom::S3AutoDeleteObjectsCustomResourceProvider": {
1674
- "id": "Custom::S3AutoDeleteObjectsCustomResourceProvider",
1675
- "path": "cftaplam-override-behavior/Custom::S3AutoDeleteObjectsCustomResourceProvider",
1676
- "children": {
1677
- "Staging": {
1678
- "id": "Staging",
1679
- "path": "cftaplam-override-behavior/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging",
1680
- "constructInfo": {
1681
- "fqn": "aws-cdk-lib.AssetStaging",
1682
- "version": "2.150.0"
1683
- }
1684
- },
1685
- "Role": {
1686
- "id": "Role",
1687
- "path": "cftaplam-override-behavior/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role",
1688
- "constructInfo": {
1689
- "fqn": "aws-cdk-lib.CfnResource",
1690
- "version": "2.150.0"
1691
- }
1692
- },
1693
- "Handler": {
1694
- "id": "Handler",
1695
- "path": "cftaplam-override-behavior/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler",
1696
- "constructInfo": {
1697
- "fqn": "aws-cdk-lib.CfnResource",
1698
- "version": "2.150.0"
1699
- }
1700
- }
1701
- },
1702
- "constructInfo": {
1703
- "fqn": "aws-cdk-lib.CustomResourceProviderBase",
1704
- "version": "2.150.0"
1705
- }
1706
- },
1707
- "Integ": {
1708
- "id": "Integ",
1709
- "path": "cftaplam-override-behavior/Integ",
1710
- "children": {
1711
- "DefaultTest": {
1712
- "id": "DefaultTest",
1713
- "path": "cftaplam-override-behavior/Integ/DefaultTest",
1714
- "children": {
1715
- "Default": {
1716
- "id": "Default",
1717
- "path": "cftaplam-override-behavior/Integ/DefaultTest/Default",
1718
- "constructInfo": {
1719
- "fqn": "constructs.Construct",
1720
- "version": "10.3.0"
1721
- }
1722
- },
1723
- "DeployAssert": {
1724
- "id": "DeployAssert",
1725
- "path": "cftaplam-override-behavior/Integ/DefaultTest/DeployAssert",
1726
- "children": {
1727
- "BootstrapVersion": {
1728
- "id": "BootstrapVersion",
1729
- "path": "cftaplam-override-behavior/Integ/DefaultTest/DeployAssert/BootstrapVersion",
1730
- "constructInfo": {
1731
- "fqn": "aws-cdk-lib.CfnParameter",
1732
- "version": "2.150.0"
1733
- }
1734
- },
1735
- "CheckBootstrapVersion": {
1736
- "id": "CheckBootstrapVersion",
1737
- "path": "cftaplam-override-behavior/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion",
1738
- "constructInfo": {
1739
- "fqn": "aws-cdk-lib.CfnRule",
1740
- "version": "2.150.0"
1741
- }
1742
- }
1743
- },
1744
- "constructInfo": {
1745
- "fqn": "aws-cdk-lib.Stack",
1746
- "version": "2.150.0"
1747
- }
1748
- }
1749
- },
1750
- "constructInfo": {
1751
- "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase",
1752
- "version": "2.150.0-alpha.0"
1753
- }
1754
- }
1755
- },
1756
- "constructInfo": {
1757
- "fqn": "@aws-cdk/integ-tests-alpha.IntegTest",
1758
- "version": "2.150.0-alpha.0"
1759
- }
1760
- },
1761
- "BootstrapVersion": {
1762
- "id": "BootstrapVersion",
1763
- "path": "cftaplam-override-behavior/BootstrapVersion",
1764
- "constructInfo": {
1765
- "fqn": "aws-cdk-lib.CfnParameter",
1766
- "version": "2.150.0"
1767
- }
1768
- },
1769
- "CheckBootstrapVersion": {
1770
- "id": "CheckBootstrapVersion",
1771
- "path": "cftaplam-override-behavior/CheckBootstrapVersion",
1772
- "constructInfo": {
1773
- "fqn": "aws-cdk-lib.CfnRule",
1774
- "version": "2.150.0"
1775
- }
1776
- }
1777
- },
1778
- "constructInfo": {
1779
- "fqn": "aws-cdk-lib.Stack",
1780
- "version": "2.150.0"
1781
- }
1782
- },
1783
- "Tree": {
1784
- "id": "Tree",
1785
- "path": "Tree",
1786
- "constructInfo": {
1787
- "fqn": "constructs.Construct",
1788
- "version": "10.3.0"
1789
- }
1790
- }
1791
- },
1792
- "constructInfo": {
1793
- "fqn": "aws-cdk-lib.App",
1794
- "version": "2.150.0"
1795
- }
1796
- }
1797
- }
1
+ {"version":"tree-0.1","tree":{"id":"App","path":"","children":{"cftaplam-override-behavior":{"id":"cftaplam-override-behavior","path":"cftaplam-override-behavior","children":{"SomeCachePolicy":{"id":"SomeCachePolicy","path":"cftaplam-override-behavior/SomeCachePolicy","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/SomeCachePolicy/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::CachePolicy","aws:cdk:cloudformation:props":{"cachePolicyConfig":{"name":"SomeCachePolicy","minTtl":18000,"maxTtl":36000,"defaultTtl":28800,"parametersInCacheKeyAndForwardedToOrigin":{"cookiesConfig":{"cookieBehavior":"none"},"headersConfig":{"headerBehavior":"none"},"enableAcceptEncodingGzip":false,"enableAcceptEncodingBrotli":false,"queryStringsConfig":{"queryStringBehavior":"none"}}}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnCachePolicy","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CachePolicy","version":"2.186.0","metadata":[{"cachePolicyName":"*","defaultTtl":"*","minTtl":"*","maxTtl":"*"}]}},"NoCachePolicy":{"id":"NoCachePolicy","path":"cftaplam-override-behavior/NoCachePolicy","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/NoCachePolicy/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::CachePolicy","aws:cdk:cloudformation:props":{"cachePolicyConfig":{"name":"NoCachePolicy","minTtl":0,"maxTtl":0,"defaultTtl":0,"parametersInCacheKeyAndForwardedToOrigin":{"cookiesConfig":{"cookieBehavior":"none"},"headersConfig":{"headerBehavior":"none"},"enableAcceptEncodingGzip":false,"enableAcceptEncodingBrotli":false,"queryStringsConfig":{"queryStringBehavior":"none"}}}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnCachePolicy","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CachePolicy","version":"2.186.0","metadata":[{"cachePolicyName":"*","defaultTtl":"*","minTtl":"*","maxTtl":"*"}]}},"cftaplam-override-behavior-authorizerAuthFunction":{"id":"cftaplam-override-behavior-authorizerAuthFunction","path":"cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction","children":{"ServiceRole":{"id":"ServiceRole","path":"cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/ServiceRole","children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.186.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/ServiceRole/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}},"constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.186.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]}]}},"Code":{"id":"Code","path":"cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/Code","children":{"Stage":{"id":"Stage","path":"cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.186.0"}},"AssetBucket":{"id":"AssetBucket","path":"cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"2.186.0","metadata":[]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"2.186.0"}},"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f.zip"},"handler":".handler","role":{"Fn::GetAtt":["cftaplamoverridebehaviorauthorizerAuthFunctionServiceRoleA606974F","Arn"]},"runtime":"nodejs20.x"}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"2.186.0"}},"cftaplamoverridebehaviorcftaplamoverridebehaviorauthorizer3042C32C:Permissions":{"id":"cftaplamoverridebehaviorcftaplamoverridebehaviorauthorizer3042C32C:Permissions","path":"cftaplam-override-behavior/cftaplam-override-behavior-authorizerAuthFunction/cftaplamoverridebehaviorcftaplamoverridebehaviorauthorizer3042C32C:Permissions","attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cftaplamoverridebehaviorauthorizerAuthFunction9DD827D6","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"},"/authorizers/",{"Ref":"cftaplamoverridebehaviorauthorizer74D77225"}]]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"2.186.0","metadata":[{"code":"*","runtime":"*","handler":"*"}]}},"cftaplam-override-behavior-authorizer":{"id":"cftaplam-override-behavior-authorizer","path":"cftaplam-override-behavior/cftaplam-override-behavior-authorizer","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cftaplam-override-behavior-authorizer/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Authorizer","aws:cdk:cloudformation:props":{"authorizerResultTtlInSeconds":300,"authorizerUri":{"Fn::Join":["",["arn:",{"Fn::Select":[1,{"Fn::Split":[":",{"Fn::GetAtt":["cftaplamoverridebehaviorauthorizerAuthFunction9DD827D6","Arn"]}]}]},":apigateway:",{"Fn::Select":[3,{"Fn::Split":[":",{"Fn::GetAtt":["cftaplamoverridebehaviorauthorizerAuthFunction9DD827D6","Arn"]}]}]},":lambda:path/2015-03-31/functions/",{"Fn::GetAtt":["cftaplamoverridebehaviorauthorizerAuthFunction9DD827D6","Arn"]},"/invocations"]]},"identitySource":"method.request.header.Authorization","name":"cftaplamoverridebehaviorcftaplamoverridebehaviorauthorizer3042C32C","restApiId":{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"},"type":"REQUEST"}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnAuthorizer","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.RequestAuthorizer","version":"2.186.0","metadata":["*"]}},"cf-api-lambda-override":{"id":"cf-api-lambda-override","path":"cftaplam-override-behavior/cf-api-lambda-override","children":{"LambdaFunctionServiceRole":{"id":"LambdaFunctionServiceRole","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaFunctionServiceRole","children":{"ImportLambdaFunctionServiceRole":{"id":"ImportLambdaFunctionServiceRole","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaFunctionServiceRole/ImportLambdaFunctionServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.186.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaFunctionServiceRole/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"policies":[{"policyName":"LambdaFunctionServiceRolePolicy","policyDocument":{"Statement":[{"Action":["logs:CreateLogGroup","logs:CreateLogStream","logs:PutLogEvents"],"Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":logs:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":log-group:/aws/lambda/*"]]}}],"Version":"2012-10-17"}}]}},"constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.186.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"inlinePolicies":"*"},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]}]}},"LambdaFunction":{"id":"LambdaFunction","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction","children":{"Code":{"id":"Code","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction/Code","children":{"Stage":{"id":"Stage","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.186.0"}},"AssetBucket":{"id":"AssetBucket","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"2.186.0","metadata":[]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"2.186.0"}},"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f.zip"},"environment":{"variables":{"AWS_NODEJS_CONNECTION_REUSE_ENABLED":"1"}},"handler":"index.handler","role":{"Fn::GetAtt":["cfapilambdaoverrideLambdaFunctionServiceRole4B1A4043","Arn"]},"runtime":"nodejs20.x","tracingConfig":{"mode":"Active"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"2.186.0"}},"inlinePolicyAddedToExecutionRole-0":{"id":"inlinePolicyAddedToExecutionRole-0","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction/inlinePolicyAddedToExecutionRole-0","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaFunction/inlinePolicyAddedToExecutionRole-0/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":["xray:PutTelemetryRecords","xray:PutTraceSegments"],"Effect":"Allow","Resource":"*"}],"Version":"2012-10-17"},"policyName":"cfapilambdaoverrideLambdaFunctioninlinePolicyAddedToExecutionRole0248615B6","roles":[{"Ref":"cfapilambdaoverrideLambdaFunctionServiceRole4B1A4043"}]}},"constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"2.186.0","metadata":[{"statements":"*"},{"addStatements":[{}]},{"attachToRole":["*"]},{"attachToRole":["*"]}]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"2.186.0","metadata":[{"role":"*","tracing":"Active","code":"*","runtime":"*","handler":"*"},{"addEnvironment":["*","*",{"removeInEdge":true}]}]}},"ApiAccessLogGroup":{"id":"ApiAccessLogGroup","path":"cftaplam-override-behavior/cf-api-lambda-override/ApiAccessLogGroup","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/ApiAccessLogGroup/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{}},"constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"2.186.0","metadata":[{"retention":9999}]}},"LambdaRestApi":{"id":"LambdaRestApi","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::RestApi","aws:cdk:cloudformation:props":{"endpointConfiguration":{"types":["REGIONAL"]},"name":"LambdaRestApi"}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnRestApi","version":"2.186.0"}},"Deployment":{"id":"Deployment","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Deployment","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Deployment/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Deployment","aws:cdk:cloudformation:props":{"description":"Automatically created by the RestApi construct","restApiId":{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnDeployment","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Deployment","version":"2.186.0","metadata":[{"description":"*","api":"*","retainDeployments":"*"},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]}]}},"DeploymentStage.prod":{"id":"DeploymentStage.prod","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/DeploymentStage.prod","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/DeploymentStage.prod/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Stage","aws:cdk:cloudformation:props":{"accessLogSetting":{"destinationArn":{"Fn::GetAtt":["cfapilambdaoverrideApiAccessLogGroup2665068D","Arn"]},"format":"{\"requestId\":\"$context.requestId\",\"ip\":\"$context.identity.sourceIp\",\"user\":\"$context.identity.user\",\"caller\":\"$context.identity.caller\",\"requestTime\":\"$context.requestTime\",\"httpMethod\":\"$context.httpMethod\",\"resourcePath\":\"$context.resourcePath\",\"status\":\"$context.status\",\"protocol\":\"$context.protocol\",\"responseLength\":\"$context.responseLength\"}"},"deploymentId":{"Ref":"cfapilambdaoverrideLambdaRestApiDeployment82ACBB00eff3607850f915efb43bbead11999a10"},"methodSettings":[{"httpMethod":"*","resourcePath":"/*","dataTraceEnabled":false,"loggingLevel":"INFO"}],"restApiId":{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"},"stageName":"prod","tracingEnabled":true}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnStage","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Stage","version":"2.186.0","metadata":[{"deployment":"*","accessLogDestination":"*","accessLogFormat":"*","loggingLevel":"INFO","dataTraceEnabled":false,"tracingEnabled":true}]}},"Endpoint":{"id":"Endpoint","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Endpoint","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"2.186.0"}},"Default":{"id":"Default","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default","children":{"static":{"id":"static","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/static","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/static/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Resource","aws:cdk:cloudformation:props":{"parentId":{"Fn::GetAtt":["cfapilambdaoverrideLambdaRestApi6E7952FC","RootResourceId"]},"pathPart":"static","restApiId":{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnResource","version":"2.186.0"}},"GET":{"id":"GET","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/static/GET","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/static/GET/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Method","aws:cdk:cloudformation:props":{"authorizationType":"CUSTOM","authorizerId":{"Ref":"cftaplamoverridebehaviorauthorizer74D77225"},"httpMethod":"GET","integration":{"type":"HTTP_PROXY","uri":"http://amazon.com","integrationHttpMethod":"GET"},"resourceId":{"Ref":"cfapilambdaoverrideLambdaRestApistaticC2ECB649"},"restApiId":{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnMethod","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Method","version":"2.186.0","metadata":[{"resource":"*","httpMethod":"*","integration":"*","options":"*"}]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Resource","version":"2.186.0","metadata":[{"pathPart":"*"}]}},"dynamic":{"id":"dynamic","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Resource","aws:cdk:cloudformation:props":{"parentId":{"Fn::GetAtt":["cfapilambdaoverrideLambdaRestApi6E7952FC","RootResourceId"]},"pathPart":"dynamic","restApiId":{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnResource","version":"2.186.0"}},"GET":{"id":"GET","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic/GET","children":{"ApiPermission.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic":{"id":"ApiPermission.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic/GET/ApiPermission.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic","attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cfapilambdaoverrideLambdaFunction74CE466F","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"},"/",{"Ref":"cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"},"/GET/dynamic"]]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.186.0"}},"ApiPermission.Test.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic":{"id":"ApiPermission.Test.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic/GET/ApiPermission.Test.cftaplamoverridebehaviorcfapilambdaoverrideLambdaRestApiE3676062.GET..dynamic","attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cfapilambdaoverrideLambdaFunction74CE466F","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"},"/test-invoke-stage/GET/dynamic"]]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.186.0"}},"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/Default/dynamic/GET/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Method","aws:cdk:cloudformation:props":{"authorizationType":"CUSTOM","authorizerId":{"Ref":"cftaplamoverridebehaviorauthorizer74D77225"},"httpMethod":"GET","integration":{"type":"AWS_PROXY","uri":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":apigateway:",{"Ref":"AWS::Region"},":lambda:path/2015-03-31/functions/",{"Fn::GetAtt":["cfapilambdaoverrideLambdaFunction74CE466F","Arn"]},"/invocations"]]},"integrationHttpMethod":"POST"},"resourceId":{"Ref":"cfapilambdaoverrideLambdaRestApidynamic88206171"},"restApiId":{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnMethod","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Method","version":"2.186.0","metadata":[{"resource":"*","httpMethod":"*","integration":"*","options":"*"}]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Resource","version":"2.186.0","metadata":[{"pathPart":"*"}]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.ResourceBase","version":"2.186.0","metadata":["*"]}},"UsagePlan":{"id":"UsagePlan","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/UsagePlan","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApi/UsagePlan/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::UsagePlan","aws:cdk:cloudformation:props":{"apiStages":[{"apiId":{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"},"stage":{"Ref":"cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"},"throttle":{}}]}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnUsagePlan","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.UsagePlan","version":"2.186.0","metadata":[{"apiStages":[{"api":"*"}]}]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.LambdaRestApi","version":"2.186.0","metadata":[{"defaultIntegration":"*","endpointConfiguration":{"types":["REGIONAL"]},"cloudWatchRole":false,"deployOptions":{"accessLogDestination":"*","accessLogFormat":"*","loggingLevel":"INFO","dataTraceEnabled":false,"tracingEnabled":true},"defaultMethodOptions":{"authorizationType":"*","authorizer":"*"},"handler":"*","proxy":false},{"endpointConfiguration":{"types":["REGIONAL"]},"cloudWatchRole":false,"deployOptions":{"accessLogDestination":"*","accessLogFormat":"*","loggingLevel":"INFO","dataTraceEnabled":false,"tracingEnabled":true},"defaultMethodOptions":{"authorizationType":"*","authorizer":"*"},"handler":"*","proxy":false}]}},"LambdaRestApiCloudWatchRole":{"id":"LambdaRestApiCloudWatchRole","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApiCloudWatchRole","children":{"ImportLambdaRestApiCloudWatchRole":{"id":"ImportLambdaRestApiCloudWatchRole","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApiCloudWatchRole/ImportLambdaRestApiCloudWatchRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.186.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApiCloudWatchRole/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"apigateway.amazonaws.com"}}],"Version":"2012-10-17"},"policies":[{"policyName":"LambdaRestApiCloudWatchRolePolicy","policyDocument":{"Statement":[{"Action":["logs:CreateLogGroup","logs:CreateLogStream","logs:DescribeLogGroups","logs:DescribeLogStreams","logs:FilterLogEvents","logs:GetLogEvents","logs:PutLogEvents"],"Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":logs:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":*"]]}}],"Version":"2012-10-17"}}]}},"constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.186.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"inlinePolicies":"*"}]}},"LambdaRestApiAccount":{"id":"LambdaRestApiAccount","path":"cftaplam-override-behavior/cf-api-lambda-override/LambdaRestApiAccount","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Account","aws:cdk:cloudformation:props":{"cloudWatchRoleArn":{"Fn::GetAtt":["cfapilambdaoverrideLambdaRestApiCloudWatchRole0F1F3559","Arn"]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnAccount","version":"2.186.0"}},"CloudFrontToApiGateway":{"id":"CloudFrontToApiGateway","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway","children":{"SetHttpSecurityHeaders":{"id":"SetHttpSecurityHeaders","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/SetHttpSecurityHeaders","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/SetHttpSecurityHeaders/Resource","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":"SetHttpSecurityHeadersc826c2a6a3ffe209aed33765f37752084820de0d3b","runtime":"cloudfront-js-1.0"},"name":"SetHttpSecurityHeadersc826c2a6a3ffe209aed33765f37752084820de0d3b"}},"constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnFunction","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.Function","version":"2.186.0","metadata":[{"functionName":"*","code":"*"}]}},"CloudfrontLoggingBucketAccessLog":{"id":"CloudfrontLoggingBucketAccessLog","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"versioningConfiguration":{"status":"Enabled"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.186.0"}},"Policy":{"id":"Policy","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Policy","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Policy/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog9CEB5CD9"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog9CEB5CD9","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog9CEB5CD9","Arn"]},"/*"]]}]},{"Action":"s3:PutObject","Condition":{"ArnLike":{"aws:SourceArn":{"Fn::GetAtt":["cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0","Arn"]}},"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}}},"Effect":"Allow","Principal":{"Service":"logging.s3.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog9CEB5CD9","Arn"]},"/*"]]}}],"Version":"2012-10-17"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.186.0","metadata":[{"bucket":"*"}]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.186.0","metadata":[{"encryption":"S3_MANAGED","versioned":true,"blockPublicAccess":"*","removalPolicy":"retain","enforceSSL":true}]}},"CloudfrontLoggingBucket":{"id":"CloudfrontLoggingBucket","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"loggingConfiguration":{"destinationBucketName":{"Ref":"cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog9CEB5CD9"}},"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"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.186.0"}},"Policy":{"id":"Policy","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket/Policy","children":{"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket/Policy/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0","Arn"]},"/*"]]}]}],"Version":"2012-10-17"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.186.0","metadata":[{"bucket":"*"}]}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource","children":{"Default":{"id":"Default","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.186.0","metadata":["*"]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.186.0","metadata":[{"encryption":"S3_MANAGED","versioned":true,"blockPublicAccess":"*","removalPolicy":"destroy","enforceSSL":true,"autoDeleteObjects":true,"objectOwnership":"ObjectWriter","serverAccessLogsBucket":"*"}]}},"CloudFrontDistribution":{"id":"CloudFrontDistribution","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudFrontDistribution","children":{"Origin1":{"id":"Origin1","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudFrontDistribution/Origin1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Resource":{"id":"Resource","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudFrontDistribution/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::Distribution","aws:cdk:cloudformation:props":{"distributionConfig":{"enabled":true,"origins":[{"domainName":{"Fn::Select":[0,{"Fn::Split":["/",{"Fn::Select":[1,{"Fn::Split":["://",{"Fn::Join":["",["https://",{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"},".execute-api.",{"Ref":"AWS::Region"},".",{"Ref":"AWS::URLSuffix"},"/",{"Ref":"cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"},"/"]]}]}]}]}]},"id":"cftaplamoverridebehaviorcfapilambdaoverrideCloudFrontToApiGatewayCloudFrontDistributionOrigin14C42522D","originPath":{"Fn::Join":["",["/",{"Ref":"cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"}]]},"customOriginConfig":{"originSslProtocols":["TLSv1.2"],"originProtocolPolicy":"https-only"}},{"domainName":{"Fn::Select":[0,{"Fn::Split":["/",{"Fn::Select":[1,{"Fn::Split":["://",{"Fn::Join":["",["https://",{"Ref":"cfapilambdaoverrideLambdaRestApi6E7952FC"},".execute-api.",{"Ref":"AWS::Region"},".",{"Ref":"AWS::URLSuffix"},"/",{"Ref":"cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"},"/"]]}]}]}]}]},"id":"cftaplamoverridebehaviorcfapilambdaoverrideCloudFrontToApiGatewayCloudFrontDistributionOrigin2D0C9421C","originPath":{"Fn::Join":["",["/",{"Ref":"cfapilambdaoverrideLambdaRestApiDeploymentStageprodC4F6FBB5"},"/dynamic"]]},"customOriginConfig":{"originSslProtocols":["TLSv1.2"],"originProtocolPolicy":"https-only"}}],"defaultCacheBehavior":{"pathPattern":"*","targetOriginId":"cftaplamoverridebehaviorcfapilambdaoverrideCloudFrontToApiGatewayCloudFrontDistributionOrigin14C42522D","cachePolicyId":{"Ref":"SomeCachePolicy40B9E4D4"},"compress":true,"viewerProtocolPolicy":"redirect-to-https","functionAssociations":[{"functionArn":{"Fn::GetAtt":["cfapilambdaoverrideCloudFrontToApiGatewaySetHttpSecurityHeaders67E61E6E","FunctionARN"]},"eventType":"viewer-response"}]},"cacheBehaviors":[{"pathPattern":"/dynamic","targetOriginId":"cftaplamoverridebehaviorcfapilambdaoverrideCloudFrontToApiGatewayCloudFrontDistributionOrigin2D0C9421C","cachePolicyId":{"Ref":"NoCachePolicy1F71EC46"},"compress":true,"viewerProtocolPolicy":"allow-all"}],"httpVersion":"http2","ipv6Enabled":true,"logging":{"bucket":{"Fn::GetAtt":["cfapilambdaoverrideCloudFrontToApiGatewayCloudfrontLoggingBucket3A71B9E0","RegionalDomainName"]}}}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnDistribution","version":"2.186.0"}},"Origin2":{"id":"Origin2","path":"cftaplam-override-behavior/cf-api-lambda-override/CloudFrontToApiGateway/CloudFrontDistribution/Origin2","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.Distribution","version":"2.186.0","metadata":[{"defaultBehavior":{"origin":"*","functionAssociations":[{"eventType":"viewer-response","function":"*"}],"viewerProtocolPolicy":"redirect-to-https","cachePolicy":"*"},"enableLogging":true,"logBucket":"*"},{"addBehavior":["*",{},{"cachePolicy":"*"}]}]}}},"constructInfo":{"fqn":"@aws-solutions-constructs/aws-cloudfront-apigateway.CloudFrontToApiGateway","version":"2.80.0"}}},"constructInfo":{"fqn":"@aws-solutions-constructs/aws-cloudfront-apigateway-lambda.CloudFrontToApiGatewayToLambda","version":"2.80.0"}},"LatestNodeRuntimeMap":{"id":"LatestNodeRuntimeMap","path":"cftaplam-override-behavior/LatestNodeRuntimeMap","constructInfo":{"fqn":"aws-cdk-lib.CfnMapping","version":"2.186.0"}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"cftaplam-override-behavior/Custom::S3AutoDeleteObjectsCustomResourceProvider","children":{"Staging":{"id":"Staging","path":"cftaplam-override-behavior/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.186.0"}},"Role":{"id":"Role","path":"cftaplam-override-behavior/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.186.0"}},"Handler":{"id":"Handler","path":"cftaplam-override-behavior/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"2.186.0"}},"Integ":{"id":"Integ","path":"cftaplam-override-behavior/Integ","children":{"DefaultTest":{"id":"DefaultTest","path":"cftaplam-override-behavior/Integ/DefaultTest","children":{"Default":{"id":"Default","path":"cftaplam-override-behavior/Integ/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"cftaplam-override-behavior/Integ/DefaultTest/DeployAssert","children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"cftaplam-override-behavior/Integ/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.186.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftaplam-override-behavior/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.186.0"}}},"constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"2.186.0-alpha.0"}}},"constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"2.186.0-alpha.0"}},"BootstrapVersion":{"id":"BootstrapVersion","path":"cftaplam-override-behavior/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.186.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftaplam-override-behavior/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.186.0"}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}},"constructInfo":{"fqn":"aws-cdk-lib.App","version":"2.186.0"}}}