@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
@@ -0,0 +1 @@
1
+ {"version":"tree-0.1","tree":{"id":"App","path":"","children":{"cftaplam-no-usage-plan":{"id":"cftaplam-no-usage-plan","path":"cftaplam-no-usage-plan","children":{"cftaplam-no-usage-plan-authorizerAuthFunction":{"id":"cftaplam-no-usage-plan-authorizerAuthFunction","path":"cftaplam-no-usage-plan/cftaplam-no-usage-plan-authorizerAuthFunction","children":{"ServiceRole":{"id":"ServiceRole","path":"cftaplam-no-usage-plan/cftaplam-no-usage-plan-authorizerAuthFunction/ServiceRole","children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"cftaplam-no-usage-plan/cftaplam-no-usage-plan-authorizerAuthFunction/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.186.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/cftaplam-no-usage-plan-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-no-usage-plan/cftaplam-no-usage-plan-authorizerAuthFunction/Code","children":{"Stage":{"id":"Stage","path":"cftaplam-no-usage-plan/cftaplam-no-usage-plan-authorizerAuthFunction/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.186.0"}},"AssetBucket":{"id":"AssetBucket","path":"cftaplam-no-usage-plan/cftaplam-no-usage-plan-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-no-usage-plan/cftaplam-no-usage-plan-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":["cftaplamnousageplanauthorizerAuthFunctionServiceRoleD960FE23","Arn"]},"runtime":"nodejs20.x"}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"2.186.0"}},"cftaplamnousageplancftaplamnousageplanauthorizerB8C63521:Permissions":{"id":"cftaplamnousageplancftaplamnousageplanauthorizerB8C63521:Permissions","path":"cftaplam-no-usage-plan/cftaplam-no-usage-plan-authorizerAuthFunction/cftaplamnousageplancftaplamnousageplanauthorizerB8C63521:Permissions","attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cftaplamnousageplanauthorizerAuthFunctionC756EB1A","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"},"/authorizers/",{"Ref":"cftaplamnousageplanauthorizerB177A4F9"}]]}}},"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-no-usage-plan-authorizer":{"id":"cftaplam-no-usage-plan-authorizer","path":"cftaplam-no-usage-plan/cftaplam-no-usage-plan-authorizer","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/cftaplam-no-usage-plan-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":["cftaplamnousageplanauthorizerAuthFunctionC756EB1A","Arn"]}]}]},":apigateway:",{"Fn::Select":[3,{"Fn::Split":[":",{"Fn::GetAtt":["cftaplamnousageplanauthorizerAuthFunctionC756EB1A","Arn"]}]}]},":lambda:path/2015-03-31/functions/",{"Fn::GetAtt":["cftaplamnousageplanauthorizerAuthFunctionC756EB1A","Arn"]},"/invocations"]]},"identitySource":"method.request.header.Authorization","name":"cftaplamnousageplancftaplamnousageplanauthorizerB8C63521","restApiId":{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"},"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":["*"]}},"test-cloudfront-apigateway-lambda":{"id":"test-cloudfront-apigateway-lambda","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda","children":{"LambdaFunctionServiceRole":{"id":"LambdaFunctionServiceRole","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaFunctionServiceRole","children":{"ImportLambdaFunctionServiceRole":{"id":"ImportLambdaFunctionServiceRole","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaFunctionServiceRole/ImportLambdaFunctionServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.186.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/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-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaFunction","children":{"Code":{"id":"Code","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaFunction/Code","children":{"Stage":{"id":"Stage","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaFunction/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.186.0"}},"AssetBucket":{"id":"AssetBucket","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/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-no-usage-plan/test-cloudfront-apigateway-lambda/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":["testcloudfrontapigatewaylambdaLambdaFunctionServiceRoleCB74590F","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-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaFunction/inlinePolicyAddedToExecutionRole-0","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/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":"testcloudfrontapigatewaylambdaLambdaFunctioninlinePolicyAddedToExecutionRole010F5D55C","roles":[{"Ref":"testcloudfrontapigatewaylambdaLambdaFunctionServiceRoleCB74590F"}]}},"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-no-usage-plan/test-cloudfront-apigateway-lambda/ApiAccessLogGroup","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/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-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/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-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Deployment","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Deployment/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Deployment","aws:cdk:cloudformation:props":{"description":"Automatically created by the RestApi construct","restApiId":{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"}}},"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":[{}]}]}},"DeploymentStage.prod":{"id":"DeploymentStage.prod","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/DeploymentStage.prod","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/DeploymentStage.prod/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Stage","aws:cdk:cloudformation:props":{"accessLogSetting":{"destinationArn":{"Fn::GetAtt":["testcloudfrontapigatewaylambdaApiAccessLogGroup97EB2E40","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":"testcloudfrontapigatewaylambdaLambdaRestApiDeployment0C4661C0d9c4123459f0cf4d3f3c0bde215f7fe1"},"methodSettings":[{"httpMethod":"*","resourcePath":"/*","dataTraceEnabled":false,"loggingLevel":"INFO"}],"restApiId":{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"},"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-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Endpoint","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"2.186.0"}},"Default":{"id":"Default","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Default","children":{"{proxy+}":{"id":"{proxy+}","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Default/{proxy+}","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Default/{proxy+}/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Resource","aws:cdk:cloudformation:props":{"parentId":{"Fn::GetAtt":["testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44","RootResourceId"]},"pathPart":"{proxy+}","restApiId":{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnResource","version":"2.186.0"}},"ANY":{"id":"ANY","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Default/{proxy+}/ANY","children":{"ApiPermission.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..{proxy+}":{"id":"ApiPermission.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..{proxy+}","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Default/{proxy+}/ANY/ApiPermission.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..{proxy+}","attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["testcloudfrontapigatewaylambdaLambdaFunction17A55E65","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"},"/",{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApiDeploymentStageprod4617A7B7"},"/*/*"]]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.186.0"}},"ApiPermission.Test.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..{proxy+}":{"id":"ApiPermission.Test.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..{proxy+}","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Default/{proxy+}/ANY/ApiPermission.Test.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..{proxy+}","attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["testcloudfrontapigatewaylambdaLambdaFunction17A55E65","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"},"/test-invoke-stage/*/*"]]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.186.0"}},"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Default/{proxy+}/ANY/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Method","aws:cdk:cloudformation:props":{"authorizationType":"CUSTOM","authorizerId":{"Ref":"cftaplamnousageplanauthorizerB177A4F9"},"httpMethod":"ANY","integration":{"type":"AWS_PROXY","uri":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":apigateway:",{"Ref":"AWS::Region"},":lambda:path/2015-03-31/functions/",{"Fn::GetAtt":["testcloudfrontapigatewaylambdaLambdaFunction17A55E65","Arn"]},"/invocations"]]},"integrationHttpMethod":"POST"},"resourceId":{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApiproxyBC09D86F"},"restApiId":{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"}}},"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.ProxyResource","version":"2.186.0","metadata":[{"defaultIntegration":"*","defaultMethodOptions":"*"},{},{"addMethod":["*"]}]}},"ANY":{"id":"ANY","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Default/ANY","children":{"ApiPermission.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..":{"id":"ApiPermission.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Default/ANY/ApiPermission.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..","attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["testcloudfrontapigatewaylambdaLambdaFunction17A55E65","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"},"/",{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApiDeploymentStageprod4617A7B7"},"/*/"]]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.186.0"}},"ApiPermission.Test.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..":{"id":"ApiPermission.Test.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Default/ANY/ApiPermission.Test.cftaplamnousageplantestcloudfrontapigatewaylambdaLambdaRestApiB0E151E3.ANY..","attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["testcloudfrontapigatewaylambdaLambdaFunction17A55E65","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"},"/test-invoke-stage/*/"]]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.186.0"}},"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApi/Default/ANY/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Method","aws:cdk:cloudformation:props":{"authorizationType":"CUSTOM","authorizerId":{"Ref":"cftaplamnousageplanauthorizerB177A4F9"},"httpMethod":"ANY","integration":{"type":"AWS_PROXY","uri":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":apigateway:",{"Ref":"AWS::Region"},":lambda:path/2015-03-31/functions/",{"Fn::GetAtt":["testcloudfrontapigatewaylambdaLambdaFunction17A55E65","Arn"]},"/invocations"]]},"integrationHttpMethod":"POST"},"resourceId":{"Fn::GetAtt":["testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44","RootResourceId"]},"restApiId":{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"}}},"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.ResourceBase","version":"2.186.0","metadata":["*"]}}},"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":"*"},{"endpointConfiguration":{"types":["REGIONAL"]},"cloudWatchRole":false,"deployOptions":{"accessLogDestination":"*","accessLogFormat":"*","loggingLevel":"INFO","dataTraceEnabled":false,"tracingEnabled":true},"defaultMethodOptions":{"authorizationType":"*","authorizer":"*"},"handler":"*"}]}},"LambdaRestApiCloudWatchRole":{"id":"LambdaRestApiCloudWatchRole","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApiCloudWatchRole","children":{"ImportLambdaRestApiCloudWatchRole":{"id":"ImportLambdaRestApiCloudWatchRole","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApiCloudWatchRole/ImportLambdaRestApiCloudWatchRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.186.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/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-no-usage-plan/test-cloudfront-apigateway-lambda/LambdaRestApiAccount","attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Account","aws:cdk:cloudformation:props":{"cloudWatchRoleArn":{"Fn::GetAtt":["testcloudfrontapigatewaylambdaLambdaRestApiCloudWatchRole7A327F48","Arn"]}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnAccount","version":"2.186.0"}},"CloudFrontToApiGateway":{"id":"CloudFrontToApiGateway","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway","children":{"SetHttpSecurityHeaders":{"id":"SetHttpSecurityHeaders","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway/SetHttpSecurityHeaders","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/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":"SetHttpSecurityHeadersc86ff048e47765694444f7bb321137eed6f5db5665","runtime":"cloudfront-js-1.0"},"name":"SetHttpSecurityHeadersc86ff048e47765694444f7bb321137eed6f5db5665"}},"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-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/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-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Policy","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Policy/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog347EED57"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog347EED57","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog347EED57","Arn"]},"/*"]]}]},{"Action":"s3:PutObject","Condition":{"ArnLike":{"aws:SourceArn":{"Fn::GetAtt":["testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucket7F467421","Arn"]}},"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}}},"Effect":"Allow","Principal":{"Service":"logging.s3.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog347EED57","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-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"loggingConfiguration":{"destinationBucketName":{"Ref":"testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog347EED57"}},"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-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/Policy","children":{"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/Policy/Resource","attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucket7F467421"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucket7F467421","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucket7F467421","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucket7F467421","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucket7F467421","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-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource","children":{"Default":{"id":"Default","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/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-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway/CloudFrontDistribution","children":{"Origin1":{"id":"Origin1","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/CloudFrontToApiGateway/CloudFrontDistribution/Origin1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Resource":{"id":"Resource","path":"cftaplam-no-usage-plan/test-cloudfront-apigateway-lambda/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":"testcloudfrontapigatewaylambdaLambdaRestApi6A4CBD44"},".execute-api.",{"Ref":"AWS::Region"},".",{"Ref":"AWS::URLSuffix"},"/",{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApiDeploymentStageprod4617A7B7"},"/"]]}]}]}]}]},"id":"cftaplamnousageplantestcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudFrontDistributionOrigin1079FB863","originPath":{"Fn::Join":["",["/",{"Ref":"testcloudfrontapigatewaylambdaLambdaRestApiDeploymentStageprod4617A7B7"}]]},"customOriginConfig":{"originSslProtocols":["TLSv1.2"],"originProtocolPolicy":"https-only"}}],"defaultCacheBehavior":{"pathPattern":"*","targetOriginId":"cftaplamnousageplantestcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudFrontDistributionOrigin1079FB863","cachePolicyId":"658327ea-f89d-4fab-a63d-7e88639e58f6","compress":true,"viewerProtocolPolicy":"redirect-to-https","functionAssociations":[{"functionArn":{"Fn::GetAtt":["testcloudfrontapigatewaylambdaCloudFrontToApiGatewaySetHttpSecurityHeaders6945414A","FunctionARN"]},"eventType":"viewer-response"}]},"httpVersion":"http2","ipv6Enabled":true,"logging":{"bucket":{"Fn::GetAtt":["testcloudfrontapigatewaylambdaCloudFrontToApiGatewayCloudfrontLoggingBucket7F467421","RegionalDomainName"]}}}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnDistribution","version":"2.186.0"}}},"constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.Distribution","version":"2.186.0","metadata":[{"defaultBehavior":{"origin":"*","functionAssociations":[{"eventType":"viewer-response","function":"*"}],"viewerProtocolPolicy":"redirect-to-https"},"enableLogging":true,"logBucket":"*"}]}}},"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-no-usage-plan/LatestNodeRuntimeMap","constructInfo":{"fqn":"aws-cdk-lib.CfnMapping","version":"2.186.0"}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"cftaplam-no-usage-plan/Custom::S3AutoDeleteObjectsCustomResourceProvider","children":{"Staging":{"id":"Staging","path":"cftaplam-no-usage-plan/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.186.0"}},"Role":{"id":"Role","path":"cftaplam-no-usage-plan/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.186.0"}},"Handler":{"id":"Handler","path":"cftaplam-no-usage-plan/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-no-usage-plan/Integ","children":{"DefaultTest":{"id":"DefaultTest","path":"cftaplam-no-usage-plan/Integ/DefaultTest","children":{"Default":{"id":"Default","path":"cftaplam-no-usage-plan/Integ/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"cftaplam-no-usage-plan/Integ/DefaultTest/DeployAssert","children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"cftaplam-no-usage-plan/Integ/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.186.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftaplam-no-usage-plan/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-no-usage-plan/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.186.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftaplam-no-usage-plan/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"}}}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
5
+ * with the License. A copy of the License is located at
6
+ *
7
+ * http://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES
10
+ * OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions
11
+ * and limitations under the License.
12
+ */
13
+
14
+ console.log('Loading function');
15
+
16
+ exports.handler = async (event, context) => {
17
+ console.log('Received event:', JSON.stringify(event, null, 2));
18
+     return {
19
+       statusCode: 200,
20
+       headers: { 'Content-Type': 'text/plain' },
21
+       body: `Hello from Project Vesper! You've hit ${event.path}\n`
22
+     };
23
+ };
@@ -1 +1 @@
1
- {"version":"36.0.0"}
1
+ {"version":"40.0.0"}
@@ -1,15 +1,15 @@
1
1
  {
2
- "version": "36.0.0",
2
+ "version": "40.0.0",
3
3
  "files": {
4
- "42a35bbf0dec9ef0ac5b0dde87e71a1b8929e8d2d178dd09ccfb2c928ec0198c": {
4
+ "3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f": {
5
5
  "source": {
6
- "path": "asset.42a35bbf0dec9ef0ac5b0dde87e71a1b8929e8d2d178dd09ccfb2c928ec0198c",
6
+ "path": "asset.3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f",
7
7
  "packaging": "zip"
8
8
  },
9
9
  "destinations": {
10
10
  "current_account-current_region": {
11
11
  "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
12
- "objectKey": "42a35bbf0dec9ef0ac5b0dde87e71a1b8929e8d2d178dd09ccfb2c928ec0198c.zip",
12
+ "objectKey": "3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f.zip",
13
13
  "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
14
14
  }
15
15
  }
@@ -27,7 +27,7 @@
27
27
  }
28
28
  }
29
29
  },
30
- "87a36a8b090fc85cd9ace53402130e7b887b0625cfdf39f75d98e400159f4a5f": {
30
+ "8bb8062d1158e548d5038f9c21c0c869d2f537f51945be1e927061bd581f23bc": {
31
31
  "source": {
32
32
  "path": "cftaplam-override-behavior.template.json",
33
33
  "packaging": "file"
@@ -35,7 +35,7 @@
35
35
  "destinations": {
36
36
  "current_account-current_region": {
37
37
  "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
38
- "objectKey": "87a36a8b090fc85cd9ace53402130e7b887b0625cfdf39f75d98e400159f4a5f.json",
38
+ "objectKey": "8bb8062d1158e548d5038f9c21c0c869d2f537f51945be1e927061bd581f23bc.json",
39
39
  "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
40
40
  }
41
41
  }
@@ -87,7 +87,7 @@
87
87
  "S3Bucket": {
88
88
  "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
89
89
  },
90
- "S3Key": "42a35bbf0dec9ef0ac5b0dde87e71a1b8929e8d2d178dd09ccfb2c928ec0198c.zip"
90
+ "S3Key": "3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f.zip"
91
91
  },
92
92
  "Handler": ".handler",
93
93
  "Role": {
@@ -283,40 +283,6 @@
283
283
  }
284
284
  }
285
285
  },
286
- "cfapilambdaoverrideLambdaFunctionServiceRoleDefaultPolicy1A3D9202": {
287
- "Type": "AWS::IAM::Policy",
288
- "Properties": {
289
- "PolicyDocument": {
290
- "Statement": [
291
- {
292
- "Action": [
293
- "xray:PutTelemetryRecords",
294
- "xray:PutTraceSegments"
295
- ],
296
- "Effect": "Allow",
297
- "Resource": "*"
298
- }
299
- ],
300
- "Version": "2012-10-17"
301
- },
302
- "PolicyName": "cfapilambdaoverrideLambdaFunctionServiceRoleDefaultPolicy1A3D9202",
303
- "Roles": [
304
- {
305
- "Ref": "cfapilambdaoverrideLambdaFunctionServiceRole4B1A4043"
306
- }
307
- ]
308
- },
309
- "Metadata": {
310
- "cfn_nag": {
311
- "rules_to_suppress": [
312
- {
313
- "id": "W12",
314
- "reason": "Lambda needs the following minimum required permissions to send trace data to X-Ray and access ENIs in a VPC."
315
- }
316
- ]
317
- }
318
- }
319
- },
320
286
  "cfapilambdaoverrideLambdaFunction74CE466F": {
321
287
  "Type": "AWS::Lambda::Function",
322
288
  "Properties": {
@@ -324,7 +290,7 @@
324
290
  "S3Bucket": {
325
291
  "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
326
292
  },
327
- "S3Key": "42a35bbf0dec9ef0ac5b0dde87e71a1b8929e8d2d178dd09ccfb2c928ec0198c.zip"
293
+ "S3Key": "3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f.zip"
328
294
  },
329
295
  "Environment": {
330
296
  "Variables": {
@@ -344,7 +310,6 @@
344
310
  }
345
311
  },
346
312
  "DependsOn": [
347
- "cfapilambdaoverrideLambdaFunctionServiceRoleDefaultPolicy1A3D9202",
348
313
  "cfapilambdaoverrideLambdaFunctionServiceRole4B1A4043"
349
314
  ],
350
315
  "Metadata": {
@@ -366,6 +331,30 @@
366
331
  }
367
332
  }
368
333
  },
334
+ "cfapilambdaoverrideLambdaFunctioninlinePolicyAddedToExecutionRole0248615B6": {
335
+ "Type": "AWS::IAM::Policy",
336
+ "Properties": {
337
+ "PolicyDocument": {
338
+ "Statement": [
339
+ {
340
+ "Action": [
341
+ "xray:PutTelemetryRecords",
342
+ "xray:PutTraceSegments"
343
+ ],
344
+ "Effect": "Allow",
345
+ "Resource": "*"
346
+ }
347
+ ],
348
+ "Version": "2012-10-17"
349
+ },
350
+ "PolicyName": "cfapilambdaoverrideLambdaFunctioninlinePolicyAddedToExecutionRole0248615B6",
351
+ "Roles": [
352
+ {
353
+ "Ref": "cfapilambdaoverrideLambdaFunctionServiceRole4B1A4043"
354
+ }
355
+ ]
356
+ }
357
+ },
369
358
  "cfapilambdaoverrideApiAccessLogGroup2665068D": {
370
359
  "Type": "AWS::Logs::LogGroup",
371
360
  "UpdateReplacePolicy": "Retain",
@@ -1376,10 +1365,10 @@
1376
1365
  "value": "nodejs20.x"
1377
1366
  },
1378
1367
  "cn-north-1": {
1379
- "value": "nodejs18.x"
1368
+ "value": "nodejs20.x"
1380
1369
  },
1381
1370
  "cn-northwest-1": {
1382
- "value": "nodejs18.x"
1371
+ "value": "nodejs20.x"
1383
1372
  },
1384
1373
  "eu-central-1": {
1385
1374
  "value": "nodejs20.x"
@@ -1430,10 +1419,10 @@
1430
1419
  "value": "nodejs20.x"
1431
1420
  },
1432
1421
  "us-gov-east-1": {
1433
- "value": "nodejs18.x"
1422
+ "value": "nodejs20.x"
1434
1423
  },
1435
1424
  "us-gov-west-1": {
1436
- "value": "nodejs18.x"
1425
+ "value": "nodejs20.x"
1437
1426
  },
1438
1427
  "us-iso-east-1": {
1439
1428
  "value": "nodejs18.x"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "36.0.0",
2
+ "version": "40.0.0",
3
3
  "files": {
4
4
  "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": {
5
5
  "source": {
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "36.0.0",
2
+ "version": "40.0.0",
3
3
  "testCases": {
4
4
  "cftaplam-override-behavior/Integ/DefaultTest": {
5
5
  "stacks": [