@aws-solutions-constructs/aws-cloudfront-apigateway-lambda 2.95.0 → 2.96.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 (41) hide show
  1. package/.jsii +4 -4
  2. package/README.adoc +2 -2
  3. package/lib/index.js +1 -1
  4. package/package.json +5 -5
  5. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/asset.0772ffe05bd3b2e012dc5086ab3b6dd03c8a0268fc1c81326f5e72b0a4c6b51e/index.js +23 -0
  6. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
  7. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/cdk.out +1 -1
  8. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/cftaplam-customCloudfrontLoggingBucket.assets.json +8 -8
  9. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/cftaplam-customCloudfrontLoggingBucket.template.json +4 -4
  10. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/cftaplamcustomCloudfrontLoggingBucketIntegDefaultTestDeployAssert35A683E0.assets.json +1 -1
  11. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/integ.json +2 -2
  12. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/manifest.json +65 -41
  13. package/test/integ.cftaplam-customCloudfrontLoggingBucket.js.snapshot/tree.json +1 -1
  14. package/test/integ.cftaplam-no-arguments.js.snapshot/asset.0772ffe05bd3b2e012dc5086ab3b6dd03c8a0268fc1c81326f5e72b0a4c6b51e/index.js +23 -0
  15. package/test/integ.cftaplam-no-arguments.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
  16. package/test/integ.cftaplam-no-arguments.js.snapshot/cdk.out +1 -1
  17. package/test/integ.cftaplam-no-arguments.js.snapshot/cftaplam-no-arguments.assets.json +8 -8
  18. package/test/integ.cftaplam-no-arguments.js.snapshot/cftaplam-no-arguments.template.json +4 -4
  19. package/test/integ.cftaplam-no-arguments.js.snapshot/cftaplamnoargumentsIntegDefaultTestDeployAssertACC32F59.assets.json +1 -1
  20. package/test/integ.cftaplam-no-arguments.js.snapshot/integ.json +2 -2
  21. package/test/integ.cftaplam-no-arguments.js.snapshot/manifest.json +65 -41
  22. package/test/integ.cftaplam-no-arguments.js.snapshot/tree.json +1 -1
  23. package/test/integ.cftaplam-no-usage-plan.js.snapshot/asset.0772ffe05bd3b2e012dc5086ab3b6dd03c8a0268fc1c81326f5e72b0a4c6b51e/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 -1
  26. package/test/integ.cftaplam-no-usage-plan.js.snapshot/cftaplam-no-usage-plan.assets.json +8 -8
  27. package/test/integ.cftaplam-no-usage-plan.js.snapshot/cftaplam-no-usage-plan.template.json +4 -4
  28. package/test/integ.cftaplam-no-usage-plan.js.snapshot/cftaplamnousageplanIntegDefaultTestDeployAssertABA4F4C5.assets.json +1 -1
  29. package/test/integ.cftaplam-no-usage-plan.js.snapshot/integ.json +2 -2
  30. package/test/integ.cftaplam-no-usage-plan.js.snapshot/manifest.json +65 -41
  31. package/test/integ.cftaplam-no-usage-plan.js.snapshot/tree.json +1 -1
  32. package/test/integ.cftaplam-override-behavior.js.snapshot/asset.0772ffe05bd3b2e012dc5086ab3b6dd03c8a0268fc1c81326f5e72b0a4c6b51e/index.js +23 -0
  33. package/test/integ.cftaplam-override-behavior.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -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 +8 -8
  36. package/test/integ.cftaplam-override-behavior.js.snapshot/cftaplam-override-behavior.template.json +4 -4
  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 +2 -2
  39. package/test/integ.cftaplam-override-behavior.js.snapshot/manifest.json +65 -41
  40. package/test/integ.cftaplam-override-behavior.js.snapshot/tree.json +1 -1
  41. package/test/test.cloudfront-apigateway-lambda.test.js +2 -2
@@ -1 +1 @@
1
- {"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"2.206.0"},"children":{"cftaplam-customCloudfrontLoggingBucket":{"id":"cftaplam-customCloudfrontLoggingBucket","path":"cftaplam-customCloudfrontLoggingBucket","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.206.0"},"children":{"cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction":{"id":"cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"2.206.0","metadata":[{"code":"*","runtime":"*","handler":"*"}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.206.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.206.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"2.206.0"},"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"]]}]}}}}},"Code":{"id":"Code","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"2.206.0"},"children":{"Stage":{"id":"Stage","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.206.0"}},"AssetBucket":{"id":"AssetBucket","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"2.206.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"2.206.0"},"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":["cftaplamcustomCloudfrontLoggingBucketauthorizerAuthFunctionServiceRole00AAA44C","Arn"]},"runtime":"nodejs20.x"}}},"cftaplamcustomCloudfrontLoggingBucketcftaplamcustomCloudfrontLoggingBucketauthorizer02C97B0F:Permissions":{"id":"cftaplamcustomCloudfrontLoggingBucketcftaplamcustomCloudfrontLoggingBucketauthorizer02C97B0F:Permissions","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/cftaplamcustomCloudfrontLoggingBucketcftaplamcustomCloudfrontLoggingBucketauthorizer02C97B0F:Permissions","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cftaplamcustomCloudfrontLoggingBucketauthorizerAuthFunction86ECA8C3","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"/authorizers/",{"Ref":"cftaplamcustomCloudfrontLoggingBucketauthorizer4D180075"}]]}}}}}},"cftaplam-customCloudfrontLoggingBucket-authorizer":{"id":"cftaplam-customCloudfrontLoggingBucket-authorizer","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizer","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.RequestAuthorizer","version":"2.206.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizer/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnAuthorizer","version":"2.206.0"},"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":["cftaplamcustomCloudfrontLoggingBucketauthorizerAuthFunction86ECA8C3","Arn"]}]}]},":apigateway:",{"Fn::Select":[3,{"Fn::Split":[":",{"Fn::GetAtt":["cftaplamcustomCloudfrontLoggingBucketauthorizerAuthFunction86ECA8C3","Arn"]}]}]},":lambda:path/2015-03-31/functions/",{"Fn::GetAtt":["cftaplamcustomCloudfrontLoggingBucketauthorizerAuthFunction86ECA8C3","Arn"]},"/invocations"]]},"identitySource":"method.request.header.Authorization","name":"cftaplamcustomCloudfrontLoggingBucketcftaplamcustomCloudfrontLoggingBucketauthorizer02C97B0F","restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"type":"REQUEST"}}}}},"cf-apigw-lambda":{"id":"cf-apigw-lambda","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda","constructInfo":{"fqn":"@aws-solutions-constructs/aws-cloudfront-apigateway-lambda.CloudFrontToApiGatewayToLambda","version":"2.86.0"},"children":{"LambdaFunctionServiceRole":{"id":"LambdaFunctionServiceRole","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunctionServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.206.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"inlinePolicies":"*"},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]}]},"children":{"ImportLambdaFunctionServiceRole":{"id":"ImportLambdaFunctionServiceRole","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunctionServiceRole/ImportLambdaFunctionServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.206.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunctionServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"2.206.0"},"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"}}]}}}}},"LambdaFunction":{"id":"LambdaFunction","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"2.206.0","metadata":[{"role":"*","tracing":"Active","code":"*","runtime":"*","handler":"*"},{"addEnvironment":["*","*",{"removeInEdge":true}]}]},"children":{"Code":{"id":"Code","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"2.206.0"},"children":{"Stage":{"id":"Stage","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.206.0"}},"AssetBucket":{"id":"AssetBucket","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"2.206.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"2.206.0"},"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":["cfapigwlambdaLambdaFunctionServiceRole9B40D826","Arn"]},"runtime":"nodejs20.x","tracingConfig":{"mode":"Active"}}}},"inlinePolicyAddedToExecutionRole-0":{"id":"inlinePolicyAddedToExecutionRole-0","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/inlinePolicyAddedToExecutionRole-0","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"2.206.0","metadata":[{"statements":"*"},{"addStatements":[{}]},{"attachToRole":["*"]},{"attachToRole":["*"]}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/inlinePolicyAddedToExecutionRole-0/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"2.206.0"},"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":"cfapigwlambdaLambdaFunctioninlinePolicyAddedToExecutionRole00FBB4ADD","roles":[{"Ref":"cfapigwlambdaLambdaFunctionServiceRole9B40D826"}]}}}}}}},"ApiAccessLogGroup":{"id":"ApiAccessLogGroup","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/ApiAccessLogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"2.206.0","metadata":[{"retention":9999}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/ApiAccessLogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{}}}}},"LambdaRestApi":{"id":"LambdaRestApi","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.LambdaRestApi","version":"2.206.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":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnRestApi","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::RestApi","aws:cdk:cloudformation:props":{"endpointConfiguration":{"types":["REGIONAL"]},"name":"LambdaRestApi"}}},"Deployment":{"id":"Deployment","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Deployment","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Deployment","version":"2.206.0","metadata":[{"description":"*","api":"*","retainDeployments":"*"},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Deployment/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnDeployment","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Deployment","aws:cdk:cloudformation:props":{"description":"Automatically created by the RestApi construct","restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"}}}}}},"DeploymentStage.prod":{"id":"DeploymentStage.prod","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/DeploymentStage.prod","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Stage","version":"2.206.0","metadata":[{"deployment":"*","accessLogDestination":"*","accessLogFormat":"*","loggingLevel":"INFO","dataTraceEnabled":false,"tracingEnabled":true}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/DeploymentStage.prod/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnStage","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Stage","aws:cdk:cloudformation:props":{"accessLogSetting":{"destinationArn":{"Fn::GetAtt":["cfapigwlambdaApiAccessLogGroup16C73450","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":"cfapigwlambdaLambdaRestApiDeployment33C24C7D969bc994bbb2c876761cc93e485b8c67"},"methodSettings":[{"httpMethod":"*","resourcePath":"/*","dataTraceEnabled":false,"loggingLevel":"INFO"}],"restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"stageName":"prod","tracingEnabled":true}}}}},"Endpoint":{"id":"Endpoint","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Endpoint","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"2.206.0"}},"Default":{"id":"Default","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.ResourceBase","version":"2.206.0","metadata":["*"]},"children":{"{proxy+}":{"id":"{proxy+}","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.ProxyResource","version":"2.206.0","metadata":[{"parent":"*","defaultIntegration":"*","defaultMethodOptions":"*"},{"parent":"*"},{"addMethod":["*"]}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnResource","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Resource","aws:cdk:cloudformation:props":{"parentId":{"Fn::GetAtt":["cfapigwlambdaLambdaRestApi775C255B","RootResourceId"]},"pathPart":"{proxy+}","restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"}}}},"ANY":{"id":"ANY","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}/ANY","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Method","version":"2.206.0","metadata":[{"resource":"*","httpMethod":"*","integration":"*","options":"*"}]},"children":{"ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}":{"id":"ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}/ANY/ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"/",{"Ref":"cfapigwlambdaLambdaRestApiDeploymentStageprod83104011"},"/*/*"]]}}}},"ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}":{"id":"ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}/ANY/ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"/test-invoke-stage/*/*"]]}}}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}/ANY/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnMethod","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Method","aws:cdk:cloudformation:props":{"authorizationType":"CUSTOM","authorizerId":{"Ref":"cftaplamcustomCloudfrontLoggingBucketauthorizer4D180075"},"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":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"/invocations"]]},"integrationHttpMethod":"POST"},"resourceId":{"Ref":"cfapigwlambdaLambdaRestApiproxy6A768910"},"restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"}}}}}}}},"ANY":{"id":"ANY","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/ANY","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Method","version":"2.206.0","metadata":[{"resource":"*","httpMethod":"*","integration":"*","options":"*"}]},"children":{"ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..":{"id":"ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/ANY/ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"/",{"Ref":"cfapigwlambdaLambdaRestApiDeploymentStageprod83104011"},"/*/"]]}}}},"ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..":{"id":"ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/ANY/ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"/test-invoke-stage/*/"]]}}}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/ANY/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnMethod","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Method","aws:cdk:cloudformation:props":{"authorizationType":"CUSTOM","authorizerId":{"Ref":"cftaplamcustomCloudfrontLoggingBucketauthorizer4D180075"},"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":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"/invocations"]]},"integrationHttpMethod":"POST"},"resourceId":{"Fn::GetAtt":["cfapigwlambdaLambdaRestApi775C255B","RootResourceId"]},"restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"}}}}}}}},"UsagePlan":{"id":"UsagePlan","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/UsagePlan","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.UsagePlan","version":"2.206.0","metadata":[{"apiStages":[{"api":"*"}]}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/UsagePlan/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnUsagePlan","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::UsagePlan","aws:cdk:cloudformation:props":{"apiStages":[{"apiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"stage":{"Ref":"cfapigwlambdaLambdaRestApiDeploymentStageprod83104011"},"throttle":{}}]}}}}}}},"LambdaRestApiCloudWatchRole":{"id":"LambdaRestApiCloudWatchRole","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApiCloudWatchRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.206.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"inlinePolicies":"*"}]},"children":{"ImportLambdaRestApiCloudWatchRole":{"id":"ImportLambdaRestApiCloudWatchRole","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApiCloudWatchRole/ImportLambdaRestApiCloudWatchRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.206.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApiCloudWatchRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"2.206.0"},"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"}}]}}}}},"LambdaRestApiAccount":{"id":"LambdaRestApiAccount","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApiAccount","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnAccount","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Account","aws:cdk:cloudformation:props":{"cloudWatchRoleArn":{"Fn::GetAtt":["cfapigwlambdaLambdaRestApiCloudWatchRole76F5ABDF","Arn"]}}}},"CloudFrontToApiGateway":{"id":"CloudFrontToApiGateway","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway","constructInfo":{"fqn":"@aws-solutions-constructs/aws-cloudfront-apigateway.CloudFrontToApiGateway","version":"2.86.0"},"children":{"SetHttpSecurityHeaders":{"id":"SetHttpSecurityHeaders","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/SetHttpSecurityHeaders","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.Function","version":"2.206.0","metadata":[{"functionName":"*","code":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/SetHttpSecurityHeaders/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnFunction","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::Function","aws:cdk:cloudformation:props":{"autoPublish":true,"functionCode":"function handler(event) { var response = event.response; var headers = response.headers; headers['strict-transport-security'] = { value: 'max-age=63072000; includeSubdomains; preload'}; headers['content-security-policy'] = { value: \"default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'\"}; headers['x-content-type-options'] = { value: 'nosniff'}; headers['x-frame-options'] = {value: 'DENY'}; headers['x-xss-protection'] = {value: '1; mode=block'}; return response; }","functionConfig":{"comment":"SetHttpSecurityHeadersc860b559e82562b55d86431c32566a0eb839407df7","runtime":"cloudfront-js-1.0"},"name":"SetHttpSecurityHeadersc860b559e82562b55d86431c32566a0eb839407df7"}}}}},"CloudfrontLoggingBucketAccessLog":{"id":"CloudfrontLoggingBucketAccessLog","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.206.0","metadata":[{"encryption":"S3_MANAGED","versioned":true,"blockPublicAccess":"*","removalPolicy":"retain","enforceSSL":true}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.206.0","metadata":[{"bucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog48BE423A"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog48BE423A","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog48BE423A","Arn"]},"/*"]]}]},{"Action":"s3:PutObject","Condition":{"ArnLike":{"aws:SourceArn":{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","Arn"]}},"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}}},"Effect":"Allow","Principal":{"Service":"logging.s3.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog48BE423A","Arn"]},"/*"]]}}],"Version":"2012-10-17"}}}}}}}},"CloudfrontLoggingBucket":{"id":"CloudfrontLoggingBucket","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.206.0","metadata":[{"encryption":"S3_MANAGED","versioned":true,"blockPublicAccess":"*","removalPolicy":"destroy","enforceSSL":true,"autoDeleteObjects":true,"objectOwnership":"ObjectWriter","serverAccessLogsBucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"loggingConfiguration":{"destinationBucketName":{"Ref":"cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog48BE423A"}},"ownershipControls":{"rules":[{"objectOwnership":"ObjectWriter"}]},"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.206.0","metadata":[{"bucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","Arn"]},"/*"]]}]}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.206.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}}}}}},"CloudFrontDistribution":{"id":"CloudFrontDistribution","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudFrontDistribution","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.Distribution","version":"2.206.0","metadata":[{"defaultBehavior":{"origin":"*","functionAssociations":[{"eventType":"viewer-response","function":"*"}],"viewerProtocolPolicy":"redirect-to-https"},"enableLogging":true,"logBucket":"*"}]},"children":{"Origin1":{"id":"Origin1","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudFrontDistribution/Origin1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudFrontDistribution/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnDistribution","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::Distribution","aws:cdk:cloudformation:props":{"distributionConfig":{"enabled":true,"origins":[{"domainName":{"Fn::Select":[0,{"Fn::Split":["/",{"Fn::Select":[1,{"Fn::Split":["://",{"Fn::Join":["",["https://",{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},".execute-api.",{"Ref":"AWS::Region"},".",{"Ref":"AWS::URLSuffix"},"/",{"Ref":"cfapigwlambdaLambdaRestApiDeploymentStageprod83104011"},"/"]]}]}]}]}]},"id":"cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaCloudFrontToApiGatewayCloudFrontDistributionOrigin169FDD6AF","originPath":{"Fn::Join":["",["/",{"Ref":"cfapigwlambdaLambdaRestApiDeploymentStageprod83104011"}]]},"customOriginConfig":{"originSslProtocols":["TLSv1.2"],"originProtocolPolicy":"https-only"}}],"defaultCacheBehavior":{"pathPattern":"*","targetOriginId":"cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaCloudFrontToApiGatewayCloudFrontDistributionOrigin169FDD6AF","cachePolicyId":"658327ea-f89d-4fab-a63d-7e88639e58f6","compress":true,"viewerProtocolPolicy":"redirect-to-https","functionAssociations":[{"functionArn":{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewaySetHttpSecurityHeadersE20F2933","FunctionARN"]},"eventType":"viewer-response"}]},"httpVersion":"http2","ipv6Enabled":true,"logging":{"bucket":{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","RegionalDomainName"]}}}}}}}}}}}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"cftaplam-customCloudfrontLoggingBucket/Custom::S3AutoDeleteObjectsCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"2.206.0"},"children":{"Staging":{"id":"Staging","path":"cftaplam-customCloudfrontLoggingBucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.206.0"}},"Role":{"id":"Role","path":"cftaplam-customCloudfrontLoggingBucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}},"Handler":{"id":"Handler","path":"cftaplam-customCloudfrontLoggingBucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}}}},"Integ":{"id":"Integ","path":"cftaplam-customCloudfrontLoggingBucket/Integ","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"2.206.0-alpha.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"cftaplam-customCloudfrontLoggingBucket/Integ/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"2.206.0-alpha.0"},"children":{"Default":{"id":"Default","path":"cftaplam-customCloudfrontLoggingBucket/Integ/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"cftaplam-customCloudfrontLoggingBucket/Integ/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.206.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"cftaplam-customCloudfrontLoggingBucket/Integ/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.206.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftaplam-customCloudfrontLoggingBucket/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.206.0"}}}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"cftaplam-customCloudfrontLoggingBucket/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.206.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftaplam-customCloudfrontLoggingBucket/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.206.0"}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}
1
+ {"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"2.223.0"},"children":{"cftaplam-customCloudfrontLoggingBucket":{"id":"cftaplam-customCloudfrontLoggingBucket","path":"cftaplam-customCloudfrontLoggingBucket","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.223.0"},"children":{"cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction":{"id":"cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"2.223.0","metadata":[{"code":"*","runtime":"*","handler":"*"}]},"children":{"ServiceRole":{"id":"ServiceRole","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.223.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"managedPolicies":[{"managedPolicyArn":"*"}]}]},"children":{"ImportServiceRole":{"id":"ImportServiceRole","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/ServiceRole/ImportServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.223.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"2.223.0"},"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"]]}]}}}}},"Code":{"id":"Code","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"2.223.0"},"children":{"Stage":{"id":"Stage","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.223.0"}},"AssetBucket":{"id":"AssetBucket","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"2.223.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"0772ffe05bd3b2e012dc5086ab3b6dd03c8a0268fc1c81326f5e72b0a4c6b51e.zip"},"handler":".handler","role":{"Fn::GetAtt":["cftaplamcustomCloudfrontLoggingBucketauthorizerAuthFunctionServiceRole00AAA44C","Arn"]},"runtime":"nodejs22.x"}}},"cftaplamcustomCloudfrontLoggingBucketcftaplamcustomCloudfrontLoggingBucketauthorizer02C97B0F:Permissions":{"id":"cftaplamcustomCloudfrontLoggingBucketcftaplamcustomCloudfrontLoggingBucketauthorizer02C97B0F:Permissions","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizerAuthFunction/cftaplamcustomCloudfrontLoggingBucketcftaplamcustomCloudfrontLoggingBucketauthorizer02C97B0F:Permissions","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cftaplamcustomCloudfrontLoggingBucketauthorizerAuthFunction86ECA8C3","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"/authorizers/",{"Ref":"cftaplamcustomCloudfrontLoggingBucketauthorizer4D180075"}]]}}}}}},"cftaplam-customCloudfrontLoggingBucket-authorizer":{"id":"cftaplam-customCloudfrontLoggingBucket-authorizer","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizer","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.RequestAuthorizer","version":"2.223.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cftaplam-customCloudfrontLoggingBucket-authorizer/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnAuthorizer","version":"2.223.0"},"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":["cftaplamcustomCloudfrontLoggingBucketauthorizerAuthFunction86ECA8C3","Arn"]}]}]},":apigateway:",{"Fn::Select":[3,{"Fn::Split":[":",{"Fn::GetAtt":["cftaplamcustomCloudfrontLoggingBucketauthorizerAuthFunction86ECA8C3","Arn"]}]}]},":lambda:path/2015-03-31/functions/",{"Fn::GetAtt":["cftaplamcustomCloudfrontLoggingBucketauthorizerAuthFunction86ECA8C3","Arn"]},"/invocations"]]},"identitySource":"method.request.header.Authorization","name":"cftaplamcustomCloudfrontLoggingBucketcftaplamcustomCloudfrontLoggingBucketauthorizer02C97B0F","restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"type":"REQUEST"}}}}},"cf-apigw-lambda":{"id":"cf-apigw-lambda","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda","constructInfo":{"fqn":"@aws-solutions-constructs/aws-cloudfront-apigateway-lambda.CloudFrontToApiGatewayToLambda","version":"2.95.1"},"children":{"LambdaFunctionServiceRole":{"id":"LambdaFunctionServiceRole","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunctionServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.223.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"inlinePolicies":"*"},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]}]},"children":{"ImportLambdaFunctionServiceRole":{"id":"ImportLambdaFunctionServiceRole","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunctionServiceRole/ImportLambdaFunctionServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.223.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunctionServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"2.223.0"},"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"}}]}}}}},"LambdaFunction":{"id":"LambdaFunction","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"2.223.0","metadata":[{"role":"*","tracing":"Active","code":"*","runtime":"*","handler":"*"},{"addEnvironment":["*","*",{"removeInEdge":true}]}]},"children":{"Code":{"id":"Code","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"2.223.0"},"children":{"Stage":{"id":"Stage","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.223.0"}},"AssetBucket":{"id":"AssetBucket","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"2.223.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:props":{"code":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"0772ffe05bd3b2e012dc5086ab3b6dd03c8a0268fc1c81326f5e72b0a4c6b51e.zip"},"environment":{"variables":{"AWS_NODEJS_CONNECTION_REUSE_ENABLED":"1"}},"handler":"index.handler","role":{"Fn::GetAtt":["cfapigwlambdaLambdaFunctionServiceRole9B40D826","Arn"]},"runtime":"nodejs22.x","tracingConfig":{"mode":"Active"}}}},"inlinePolicyAddedToExecutionRole-0":{"id":"inlinePolicyAddedToExecutionRole-0","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/inlinePolicyAddedToExecutionRole-0","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"2.223.0","metadata":[{"statements":"*"},{"addStatements":[{}]},{"attachToRole":["*"]},{"attachToRole":["*"]}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaFunction/inlinePolicyAddedToExecutionRole-0/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"2.223.0"},"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":"cfapigwlambdaLambdaFunctioninlinePolicyAddedToExecutionRole00FBB4ADD","roles":[{"Ref":"cfapigwlambdaLambdaFunctionServiceRole9B40D826"}]}}}}}}},"ApiAccessLogGroup":{"id":"ApiAccessLogGroup","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/ApiAccessLogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"2.223.0","metadata":[{"retention":9999}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/ApiAccessLogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:props":{}}}}},"LambdaRestApi":{"id":"LambdaRestApi","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.LambdaRestApi","version":"2.223.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":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnRestApi","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::RestApi","aws:cdk:cloudformation:props":{"endpointConfiguration":{"types":["REGIONAL"]},"name":"LambdaRestApi"}}},"Deployment":{"id":"Deployment","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Deployment","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Deployment","version":"2.223.0","metadata":[{"description":"*","api":"*","retainDeployments":"*"},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]},{"addToLogicalId":[{}]}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Deployment/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnDeployment","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Deployment","aws:cdk:cloudformation:props":{"description":"Automatically created by the RestApi construct","restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"}}}}}},"DeploymentStage.prod":{"id":"DeploymentStage.prod","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/DeploymentStage.prod","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Stage","version":"2.223.0","metadata":[{"deployment":"*","accessLogDestination":"*","accessLogFormat":"*","loggingLevel":"INFO","dataTraceEnabled":false,"tracingEnabled":true}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/DeploymentStage.prod/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnStage","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Stage","aws:cdk:cloudformation:props":{"accessLogSetting":{"destinationArn":{"Fn::GetAtt":["cfapigwlambdaApiAccessLogGroup16C73450","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":"cfapigwlambdaLambdaRestApiDeployment33C24C7D969bc994bbb2c876761cc93e485b8c67"},"methodSettings":[{"httpMethod":"*","resourcePath":"/*","dataTraceEnabled":false,"loggingLevel":"INFO"}],"restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"stageName":"prod","tracingEnabled":true}}}}},"Endpoint":{"id":"Endpoint","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Endpoint","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"2.223.0"}},"Default":{"id":"Default","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.ResourceBase","version":"2.223.0","metadata":["*"]},"children":{"{proxy+}":{"id":"{proxy+}","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.ProxyResource","version":"2.223.0","metadata":[{"parent":"*","defaultIntegration":"*","defaultMethodOptions":"*"},{"parent":"*"},{"addMethod":["*"]}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnResource","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Resource","aws:cdk:cloudformation:props":{"parentId":{"Fn::GetAtt":["cfapigwlambdaLambdaRestApi775C255B","RootResourceId"]},"pathPart":"{proxy+}","restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"}}}},"ANY":{"id":"ANY","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}/ANY","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Method","version":"2.223.0","metadata":[{"resource":"*","httpMethod":"*","integration":"*","options":"*"}]},"children":{"ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}":{"id":"ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}/ANY/ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"/",{"Ref":"cfapigwlambdaLambdaRestApiDeploymentStageprod83104011"},"/*/*"]]}}}},"ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}":{"id":"ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}/ANY/ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..{proxy+}","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"/test-invoke-stage/*/*"]]}}}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/{proxy+}/ANY/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnMethod","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Method","aws:cdk:cloudformation:props":{"authorizationType":"CUSTOM","authorizerId":{"Ref":"cftaplamcustomCloudfrontLoggingBucketauthorizer4D180075"},"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":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"/invocations"]]},"integrationHttpMethod":"POST"},"resourceId":{"Ref":"cfapigwlambdaLambdaRestApiproxy6A768910"},"restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"}}}}}}}},"ANY":{"id":"ANY","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/ANY","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.Method","version":"2.223.0","metadata":[{"resource":"*","httpMethod":"*","integration":"*","options":"*"}]},"children":{"ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..":{"id":"ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/ANY/ApiPermission.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"/",{"Ref":"cfapigwlambdaLambdaRestApiDeploymentStageprod83104011"},"/*/"]]}}}},"ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..":{"id":"ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/ANY/ApiPermission.Test.cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaLambdaRestApi92F6CCCC.ANY..","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnPermission","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Permission","aws:cdk:cloudformation:props":{"action":"lambda:InvokeFunction","functionName":{"Fn::GetAtt":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"principal":"apigateway.amazonaws.com","sourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":execute-api:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":",{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"/test-invoke-stage/*/"]]}}}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/Default/ANY/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnMethod","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Method","aws:cdk:cloudformation:props":{"authorizationType":"CUSTOM","authorizerId":{"Ref":"cftaplamcustomCloudfrontLoggingBucketauthorizer4D180075"},"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":["cfapigwlambdaLambdaFunction10C09D31","Arn"]},"/invocations"]]},"integrationHttpMethod":"POST"},"resourceId":{"Fn::GetAtt":["cfapigwlambdaLambdaRestApi775C255B","RootResourceId"]},"restApiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"}}}}}}}},"UsagePlan":{"id":"UsagePlan","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/UsagePlan","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.UsagePlan","version":"2.223.0","metadata":[{"apiStages":[{"api":"*"}]}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApi/UsagePlan/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnUsagePlan","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::UsagePlan","aws:cdk:cloudformation:props":{"apiStages":[{"apiId":{"Ref":"cfapigwlambdaLambdaRestApi775C255B"},"stage":{"Ref":"cfapigwlambdaLambdaRestApiDeploymentStageprod83104011"},"throttle":{}}]}}}}}}},"LambdaRestApiCloudWatchRole":{"id":"LambdaRestApiCloudWatchRole","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApiCloudWatchRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.223.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"inlinePolicies":"*"}]},"children":{"ImportLambdaRestApiCloudWatchRole":{"id":"ImportLambdaRestApiCloudWatchRole","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApiCloudWatchRole/ImportLambdaRestApiCloudWatchRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.223.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApiCloudWatchRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"2.223.0"},"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"}}]}}}}},"LambdaRestApiAccount":{"id":"LambdaRestApiAccount","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/LambdaRestApiAccount","constructInfo":{"fqn":"aws-cdk-lib.aws_apigateway.CfnAccount","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ApiGateway::Account","aws:cdk:cloudformation:props":{"cloudWatchRoleArn":{"Fn::GetAtt":["cfapigwlambdaLambdaRestApiCloudWatchRole76F5ABDF","Arn"]}}}},"CloudFrontToApiGateway":{"id":"CloudFrontToApiGateway","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway","constructInfo":{"fqn":"@aws-solutions-constructs/aws-cloudfront-apigateway.CloudFrontToApiGateway","version":"2.95.1"},"children":{"SetHttpSecurityHeaders":{"id":"SetHttpSecurityHeaders","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/SetHttpSecurityHeaders","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.Function","version":"2.223.0","metadata":[{"functionName":"*","code":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/SetHttpSecurityHeaders/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnFunction","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::CloudFront::Function","aws:cdk:cloudformation:props":{"autoPublish":true,"functionCode":"function handler(event) { var response = event.response; var headers = response.headers; headers['strict-transport-security'] = { value: 'max-age=63072000; includeSubdomains; preload'}; headers['content-security-policy'] = { value: \"default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'\"}; headers['x-content-type-options'] = { value: 'nosniff'}; headers['x-frame-options'] = {value: 'DENY'}; headers['x-xss-protection'] = {value: '1; mode=block'}; return response; }","functionConfig":{"comment":"SetHttpSecurityHeadersc860b559e82562b55d86431c32566a0eb839407df7","runtime":"cloudfront-js-1.0"},"name":"SetHttpSecurityHeadersc860b559e82562b55d86431c32566a0eb839407df7"}}}}},"CloudfrontLoggingBucketAccessLog":{"id":"CloudfrontLoggingBucketAccessLog","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.223.0","metadata":[{"encryption":"S3_MANAGED","versioned":true,"blockPublicAccess":"*","removalPolicy":"retain","enforceSSL":true}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.223.0","metadata":[{"bucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucketAccessLog/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog48BE423A"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog48BE423A","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog48BE423A","Arn"]},"/*"]]}]},{"Action":"s3:PutObject","Condition":{"ArnLike":{"aws:SourceArn":{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","Arn"]}},"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}}},"Effect":"Allow","Principal":{"Service":"logging.s3.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog48BE423A","Arn"]},"/*"]]}}],"Version":"2012-10-17"}}}}}}}},"CloudfrontLoggingBucket":{"id":"CloudfrontLoggingBucket","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.223.0","metadata":[{"encryption":"S3_MANAGED","versioned":true,"blockPublicAccess":"*","removalPolicy":"destroy","enforceSSL":true,"autoDeleteObjects":true,"objectOwnership":"ObjectWriter","serverAccessLogsBucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"loggingConfiguration":{"destinationBucketName":{"Ref":"cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucketAccessLog48BE423A"}},"ownershipControls":{"rules":[{"objectOwnership":"ObjectWriter"}]},"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.223.0","metadata":[{"bucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:props":{"bucket":{"Ref":"cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","Arn"]},"/*"]]}]}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.223.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudfrontLoggingBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.223.0"}}}}}},"CloudFrontDistribution":{"id":"CloudFrontDistribution","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudFrontDistribution","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.Distribution","version":"2.223.0","metadata":[{"defaultBehavior":{"origin":"*","functionAssociations":[{"eventType":"viewer-response","function":"*"}],"viewerProtocolPolicy":"redirect-to-https"},"enableLogging":true,"logBucket":"*"}]},"children":{"Origin1":{"id":"Origin1","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudFrontDistribution/Origin1","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"Resource":{"id":"Resource","path":"cftaplam-customCloudfrontLoggingBucket/cf-apigw-lambda/CloudFrontToApiGateway/CloudFrontDistribution/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_cloudfront.CfnDistribution","version":"2.223.0"},"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":"cfapigwlambdaLambdaRestApi775C255B"},".execute-api.",{"Ref":"AWS::Region"},".",{"Ref":"AWS::URLSuffix"},"/",{"Ref":"cfapigwlambdaLambdaRestApiDeploymentStageprod83104011"},"/"]]}]}]}]}]},"id":"cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaCloudFrontToApiGatewayCloudFrontDistributionOrigin169FDD6AF","originPath":{"Fn::Join":["",["/",{"Ref":"cfapigwlambdaLambdaRestApiDeploymentStageprod83104011"}]]},"customOriginConfig":{"originSslProtocols":["TLSv1.2"],"originProtocolPolicy":"https-only"}}],"defaultCacheBehavior":{"pathPattern":"*","targetOriginId":"cftaplamcustomCloudfrontLoggingBucketcfapigwlambdaCloudFrontToApiGatewayCloudFrontDistributionOrigin169FDD6AF","cachePolicyId":"658327ea-f89d-4fab-a63d-7e88639e58f6","compress":true,"viewerProtocolPolicy":"redirect-to-https","functionAssociations":[{"functionArn":{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewaySetHttpSecurityHeadersE20F2933","FunctionARN"]},"eventType":"viewer-response"}]},"httpVersion":"http2","ipv6Enabled":true,"logging":{"bucket":{"Fn::GetAtt":["cfapigwlambdaCloudFrontToApiGatewayCloudfrontLoggingBucket2E8E3DC2","RegionalDomainName"]}}}}}}}}}}}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"cftaplam-customCloudfrontLoggingBucket/Custom::S3AutoDeleteObjectsCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"2.223.0"},"children":{"Staging":{"id":"Staging","path":"cftaplam-customCloudfrontLoggingBucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.223.0"}},"Role":{"id":"Role","path":"cftaplam-customCloudfrontLoggingBucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.223.0"}},"Handler":{"id":"Handler","path":"cftaplam-customCloudfrontLoggingBucket/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.223.0"}}}},"Integ":{"id":"Integ","path":"cftaplam-customCloudfrontLoggingBucket/Integ","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"2.223.0-alpha.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"cftaplam-customCloudfrontLoggingBucket/Integ/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"2.223.0-alpha.0"},"children":{"Default":{"id":"Default","path":"cftaplam-customCloudfrontLoggingBucket/Integ/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"cftaplam-customCloudfrontLoggingBucket/Integ/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.223.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"cftaplam-customCloudfrontLoggingBucket/Integ/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.223.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftaplam-customCloudfrontLoggingBucket/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.223.0"}}}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"cftaplam-customCloudfrontLoggingBucket/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.223.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"cftaplam-customCloudfrontLoggingBucket/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.223.0"}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}
@@ -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 AWS Solutions Constructs! You've hit ${event.path}\n`
22
+     };
23
+ };
@@ -0,0 +1 @@
1
+ "use strict";var f=Object.create,i=Object.defineProperty,I=Object.getOwnPropertyDescriptor,C=Object.getOwnPropertyNames,w=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty,A=(t,e)=>{for(var o in e)i(t,o,{get:e[o],enumerable:!0})},d=(t,e,o,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of C(e))!P.call(t,s)&&s!==o&&i(t,s,{get:()=>e[s],enumerable:!(r=I(e,s))||r.enumerable});return t},l=(t,e,o)=>(o=t!=null?f(w(t)):{},d(e||!t||!t.__esModule?i(o,"default",{value:t,enumerable:!0}):o,t)),B=t=>d(i({},"__esModule",{value:!0}),t),q={};A(q,{autoDeleteHandler:()=>S,handler:()=>H}),module.exports=B(q);var h=require("@aws-sdk/client-s3"),y=l(require("https")),m=l(require("url")),a={sendHttpRequest:D,log:T,includeStackTraces:!0,userHandlerIndex:"./index"},p="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",L="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";function R(t){return async(e,o)=>{let r={...e,ResponseURL:"..."};if(a.log(JSON.stringify(r,void 0,2)),e.RequestType==="Delete"&&e.PhysicalResourceId===p){a.log("ignoring DELETE event caused by a failed CREATE event"),await u("SUCCESS",e);return}try{let s=await t(r,o),n=k(e,s);await u("SUCCESS",n)}catch(s){let n={...e,Reason:a.includeStackTraces?s.stack:s.message};n.PhysicalResourceId||(e.RequestType==="Create"?(a.log("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),n.PhysicalResourceId=p):a.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(e)}`)),await u("FAILED",n)}}}function k(t,e={}){let o=e.PhysicalResourceId??t.PhysicalResourceId??t.RequestId;if(t.RequestType==="Delete"&&o!==t.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${t.PhysicalResourceId}" to "${e.PhysicalResourceId}" during deletion`);return{...t,...e,PhysicalResourceId:o}}async function u(t,e){let o={Status:t,Reason:e.Reason??t,StackId:e.StackId,RequestId:e.RequestId,PhysicalResourceId:e.PhysicalResourceId||L,LogicalResourceId:e.LogicalResourceId,NoEcho:e.NoEcho,Data:e.Data},r=m.parse(e.ResponseURL),s=`${r.protocol}//${r.hostname}/${r.pathname}?***`;a.log("submit response to cloudformation",s,o);let n=JSON.stringify(o),E={hostname:r.hostname,path:r.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(n,"utf8")}};await O({attempts:5,sleep:1e3},a.sendHttpRequest)(E,n)}async function D(t,e){return new Promise((o,r)=>{try{let s=y.request(t,n=>{n.resume(),!n.statusCode||n.statusCode>=400?r(new Error(`Unsuccessful HTTP response: ${n.statusCode}`)):o()});s.on("error",r),s.write(e),s.end()}catch(s){r(s)}})}function T(t,...e){console.log(t,...e)}function O(t,e){return async(...o)=>{let r=t.attempts,s=t.sleep;for(;;)try{return await e(...o)}catch(n){if(r--<=0)throw n;await b(Math.floor(Math.random()*s)),s*=2}}}async function b(t){return new Promise(e=>setTimeout(e,t))}var g="aws-cdk:auto-delete-objects",x=JSON.stringify({Version:"2012-10-17",Statement:[]}),c=new h.S3({}),H=R(S);async function S(t){switch(t.RequestType){case"Create":return;case"Update":return{PhysicalResourceId:(await F(t)).PhysicalResourceId};case"Delete":return N(t.ResourceProperties?.BucketName)}}async function F(t){let e=t,o=e.OldResourceProperties?.BucketName;return{PhysicalResourceId:e.ResourceProperties?.BucketName??o}}async function _(t){try{let e=(await c.getBucketPolicy({Bucket:t}))?.Policy??x,o=JSON.parse(e);o.Statement.push({Principal:"*",Effect:"Deny",Action:["s3:PutObject"],Resource:[`arn:aws:s3:::${t}/*`]}),await c.putBucketPolicy({Bucket:t,Policy:JSON.stringify(o)})}catch(e){if(e.name==="NoSuchBucket")throw e;console.log(`Could not set new object deny policy on bucket '${t}' prior to deletion.`)}}async function U(t){let e;do{e=await c.listObjectVersions({Bucket:t});let o=[...e.Versions??[],...e.DeleteMarkers??[]];if(o.length===0)return;let r=o.map(s=>({Key:s.Key,VersionId:s.VersionId}));await c.deleteObjects({Bucket:t,Delete:{Objects:r}})}while(e?.IsTruncated)}async function N(t){if(!t)throw new Error("No BucketName was provided.");try{if(!await W(t)){console.log(`Bucket does not have '${g}' tag, skipping cleaning.`);return}await _(t),await U(t)}catch(e){if(e.name==="NoSuchBucket"){console.log(`Bucket '${t}' does not exist.`);return}throw e}}async function W(t){return(await c.getBucketTagging({Bucket:t})).TagSet?.some(o=>o.Key===g&&o.Value==="true")}
@@ -1 +1 @@
1
- {"version":"45.0.0"}
1
+ {"version":"48.0.0"}
@@ -1,16 +1,16 @@
1
1
  {
2
- "version": "45.0.0",
2
+ "version": "48.0.0",
3
3
  "files": {
4
- "3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f": {
4
+ "0772ffe05bd3b2e012dc5086ab3b6dd03c8a0268fc1c81326f5e72b0a4c6b51e": {
5
5
  "displayName": "cftaplam-no-arguments-authorizerAuthFunction/Code",
6
6
  "source": {
7
- "path": "asset.3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f",
7
+ "path": "asset.0772ffe05bd3b2e012dc5086ab3b6dd03c8a0268fc1c81326f5e72b0a4c6b51e",
8
8
  "packaging": "zip"
9
9
  },
10
10
  "destinations": {
11
- "current_account-current_region-7f03e0f4": {
11
+ "current_account-current_region-1a238803": {
12
12
  "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
13
- "objectKey": "3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f.zip",
13
+ "objectKey": "0772ffe05bd3b2e012dc5086ab3b6dd03c8a0268fc1c81326f5e72b0a4c6b51e.zip",
14
14
  "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
15
15
  }
16
16
  }
@@ -29,16 +29,16 @@
29
29
  }
30
30
  }
31
31
  },
32
- "4ce17673ef935cd99675fc7a6b0b46b3aac1de23c796c360a8c1fd2cd4b3763c": {
32
+ "8d40dfb6ca2130be1607af9e81ac9f5c021a0da9c6e10bc051327228f1250d83": {
33
33
  "displayName": "cftaplam-no-arguments Template",
34
34
  "source": {
35
35
  "path": "cftaplam-no-arguments.template.json",
36
36
  "packaging": "file"
37
37
  },
38
38
  "destinations": {
39
- "current_account-current_region-059330ef": {
39
+ "current_account-current_region-fdcea614": {
40
40
  "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
41
- "objectKey": "4ce17673ef935cd99675fc7a6b0b46b3aac1de23c796c360a8c1fd2cd4b3763c.json",
41
+ "objectKey": "8d40dfb6ca2130be1607af9e81ac9f5c021a0da9c6e10bc051327228f1250d83.json",
42
42
  "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
43
43
  }
44
44
  }
@@ -39,7 +39,7 @@
39
39
  "S3Bucket": {
40
40
  "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
41
41
  },
42
- "S3Key": "3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f.zip"
42
+ "S3Key": "0772ffe05bd3b2e012dc5086ab3b6dd03c8a0268fc1c81326f5e72b0a4c6b51e.zip"
43
43
  },
44
44
  "Handler": ".handler",
45
45
  "Role": {
@@ -48,7 +48,7 @@
48
48
  "Arn"
49
49
  ]
50
50
  },
51
- "Runtime": "nodejs20.x"
51
+ "Runtime": "nodejs22.x"
52
52
  },
53
53
  "DependsOn": [
54
54
  "cftaplamnoargumentsauthorizerAuthFunctionServiceRole122160C6"
@@ -242,7 +242,7 @@
242
242
  "S3Bucket": {
243
243
  "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
244
244
  },
245
- "S3Key": "3a18fd3de4803f72260a058823accffd4f8d69986c6862a23cd86265f6cafa0f.zip"
245
+ "S3Key": "0772ffe05bd3b2e012dc5086ab3b6dd03c8a0268fc1c81326f5e72b0a4c6b51e.zip"
246
246
  },
247
247
  "Environment": {
248
248
  "Variables": {
@@ -256,7 +256,7 @@
256
256
  "Arn"
257
257
  ]
258
258
  },
259
- "Runtime": "nodejs20.x",
259
+ "Runtime": "nodejs22.x",
260
260
  "TracingConfig": {
261
261
  "Mode": "Active"
262
262
  }
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "45.0.0",
2
+ "version": "48.0.0",
3
3
  "files": {
4
4
  "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": {
5
5
  "displayName": "cftaplamnoargumentsIntegDefaultTestDeployAssertACC32F59 Template",
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "45.0.0",
2
+ "version": "48.0.0",
3
3
  "testCases": {
4
4
  "cftaplam-no-arguments/Integ/DefaultTest": {
5
5
  "stacks": [
@@ -9,5 +9,5 @@
9
9
  "assertionStackName": "cftaplamnoargumentsIntegDefaultTestDeployAssertACC32F59"
10
10
  }
11
11
  },
12
- "minimumCliVersion": "2.1020.2"
12
+ "minimumCliVersion": "2.1029.2"
13
13
  }
@@ -66,7 +66,7 @@
66
66
  "validateOnSynth": false,
67
67
  "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
68
68
  "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
69
- "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/4ce17673ef935cd99675fc7a6b0b46b3aac1de23c796c360a8c1fd2cd4b3763c.json",
69
+ "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/8d40dfb6ca2130be1607af9e81ac9f5c021a0da9c6e10bc051327228f1250d83.json",
70
70
  "requiresBootstrapStackVersion": 6,
71
71
  "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
72
72
  "additionalDependencies": [
@@ -707,57 +707,48 @@
707
707
  "properties": {
708
708
  "module": "aws-cdk-lib",
709
709
  "flags": {
710
- "@aws-cdk/core:enableStackNameDuplicates": {
710
+ "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": {
711
711
  "recommendedValue": true,
712
- "explanation": "Allow multiple stacks with the same name"
713
- },
714
- "aws-cdk:enableDiffNoFail": {
715
- "recommendedValue": true,
716
- "explanation": "Make `cdk diff` not fail when there are differences"
712
+ "explanation": "Pass signingProfileName to CfnSigningProfile"
717
713
  },
718
714
  "@aws-cdk/core:newStyleStackSynthesis": {
719
715
  "recommendedValue": true,
720
- "explanation": "Switch to new stack synthesis method which enables CI/CD"
716
+ "explanation": "Switch to new stack synthesis method which enables CI/CD",
717
+ "unconfiguredBehavesLike": {
718
+ "v2": true
719
+ }
721
720
  },
722
721
  "@aws-cdk/core:stackRelativeExports": {
723
722
  "recommendedValue": true,
724
- "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path"
725
- },
726
- "@aws-cdk/aws-ecr-assets:dockerIgnoreSupport": {
727
- "recommendedValue": true,
728
- "explanation": "DockerImageAsset properly supports `.dockerignore` files by default"
729
- },
730
- "@aws-cdk/aws-secretsmanager:parseOwnedSecretName": {
731
- "recommendedValue": true,
732
- "explanation": "Fix the referencing of SecretsManager names from ARNs"
733
- },
734
- "@aws-cdk/aws-kms:defaultKeyPolicies": {
735
- "recommendedValue": true,
736
- "explanation": "Tighten default KMS key policies"
737
- },
738
- "@aws-cdk/aws-s3:grantWriteWithoutAcl": {
739
- "recommendedValue": true,
740
- "explanation": "Remove `PutObjectAcl` from Bucket.grantWrite"
723
+ "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path",
724
+ "unconfiguredBehavesLike": {
725
+ "v2": true
726
+ }
741
727
  },
742
- "@aws-cdk/aws-ecs-patterns:removeDefaultDesiredCount": {
728
+ "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": {
743
729
  "recommendedValue": true,
744
- "explanation": "Do not specify a default DesiredCount for ECS services"
730
+ "explanation": "Disable implicit openListener when custom security groups are provided"
745
731
  },
746
732
  "@aws-cdk/aws-rds:lowercaseDbIdentifier": {
747
733
  "recommendedValue": true,
748
- "explanation": "Force lowercasing of RDS Cluster names in CDK"
734
+ "explanation": "Force lowercasing of RDS Cluster names in CDK",
735
+ "unconfiguredBehavesLike": {
736
+ "v2": true
737
+ }
749
738
  },
750
739
  "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": {
751
740
  "recommendedValue": true,
752
- "explanation": "Allow adding/removing multiple UsagePlanKeys independently"
753
- },
754
- "@aws-cdk/aws-efs:defaultEncryptionAtRest": {
755
- "recommendedValue": true,
756
- "explanation": "Enable this feature flag to have elastic file systems encrypted at rest by default."
741
+ "explanation": "Allow adding/removing multiple UsagePlanKeys independently",
742
+ "unconfiguredBehavesLike": {
743
+ "v2": true
744
+ }
757
745
  },
758
746
  "@aws-cdk/aws-lambda:recognizeVersionProps": {
759
747
  "recommendedValue": true,
760
- "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`."
748
+ "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.",
749
+ "unconfiguredBehavesLike": {
750
+ "v2": true
751
+ }
761
752
  },
762
753
  "@aws-cdk/aws-lambda:recognizeLayerVersion": {
763
754
  "userValue": true,
@@ -766,7 +757,10 @@
766
757
  },
767
758
  "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": {
768
759
  "recommendedValue": true,
769
- "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default."
760
+ "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.",
761
+ "unconfiguredBehavesLike": {
762
+ "v2": true
763
+ }
770
764
  },
771
765
  "@aws-cdk/core:checkSecretUsage": {
772
766
  "userValue": true,
@@ -843,7 +837,7 @@
843
837
  "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": {
844
838
  "userValue": true,
845
839
  "recommendedValue": true,
846
- "explanation": "Enable this feature to by default create default policy names for imported roles that depend on the stack the role is in."
840
+ "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in."
847
841
  },
848
842
  "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": {
849
843
  "userValue": true,
@@ -987,7 +981,10 @@
987
981
  },
988
982
  "@aws-cdk/pipelines:reduceAssetRoleTrustScope": {
989
983
  "recommendedValue": true,
990
- "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy"
984
+ "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy",
985
+ "unconfiguredBehavesLike": {
986
+ "v2": true
987
+ }
991
988
  },
992
989
  "@aws-cdk/aws-eks:nodegroupNameAttribute": {
993
990
  "userValue": true,
@@ -1016,7 +1013,10 @@
1016
1013
  },
1017
1014
  "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": {
1018
1015
  "recommendedValue": true,
1019
- "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model."
1016
+ "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.",
1017
+ "unconfiguredBehavesLike": {
1018
+ "v2": true
1019
+ }
1020
1020
  },
1021
1021
  "@aws-cdk/core:explicitStackTags": {
1022
1022
  "userValue": true,
@@ -1080,7 +1080,10 @@
1080
1080
  },
1081
1081
  "@aws-cdk/core:aspectStabilization": {
1082
1082
  "recommendedValue": true,
1083
- "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis."
1083
+ "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.",
1084
+ "unconfiguredBehavesLike": {
1085
+ "v2": true
1086
+ }
1084
1087
  },
1085
1088
  "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": {
1086
1089
  "userValue": true,
@@ -1114,7 +1117,10 @@
1114
1117
  },
1115
1118
  "@aws-cdk/pipelines:reduceStageRoleTrustScope": {
1116
1119
  "recommendedValue": true,
1117
- "explanation": "Remove the root account principal from Stage addActions trust policy"
1120
+ "explanation": "Remove the root account principal from Stage addActions trust policy",
1121
+ "unconfiguredBehavesLike": {
1122
+ "v2": true
1123
+ }
1118
1124
  },
1119
1125
  "@aws-cdk/aws-events:requireEventBusPolicySid": {
1120
1126
  "userValue": true,
@@ -1137,7 +1143,10 @@
1137
1143
  },
1138
1144
  "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": {
1139
1145
  "recommendedValue": true,
1140
- "explanation": "When enabled, scopes down the trust policy for the cross-account action role"
1146
+ "explanation": "When enabled, scopes down the trust policy for the cross-account action role",
1147
+ "unconfiguredBehavesLike": {
1148
+ "v2": true
1149
+ }
1141
1150
  },
1142
1151
  "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": {
1143
1152
  "userValue": true,
@@ -1167,6 +1176,21 @@
1167
1176
  "userValue": true,
1168
1177
  "recommendedValue": true,
1169
1178
  "explanation": "When enabled, CDK creates and manages loggroup for the lambda function"
1179
+ },
1180
+ "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": {
1181
+ "recommendedValue": true,
1182
+ "explanation": "When enabled, Network Load Balancer will be created with a security group by default."
1183
+ },
1184
+ "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": {
1185
+ "recommendedValue": true,
1186
+ "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.",
1187
+ "unconfiguredBehavesLike": {
1188
+ "v2": true
1189
+ }
1190
+ },
1191
+ "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": {
1192
+ "recommendedValue": true,
1193
+ "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement"
1170
1194
  }
1171
1195
  }
1172
1196
  }