@aws-solutions-constructs/aws-alb-lambda 2.94.0 → 2.95.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.
- package/.jsii +31 -5
- package/lib/index.js +1 -1
- package/package.json +7 -7
- package/test/integ.alblam-privateApiExistingResources.js.snapshot/alblam-privateApiExistingResources.assets.json +4 -4
- package/test/integ.alblam-privateApiExistingResources.js.snapshot/alblam-privateApiExistingResources.template.json +0 -10
- package/test/integ.alblam-privateApiExistingResources.js.snapshot/alblamprivateApiExistingResourcesIntegDefaultTestDeployAssertC865AE59.assets.json +1 -1
- package/test/integ.alblam-privateApiExistingResources.js.snapshot/asset.44065ab998484f0809423b22009edee6d159633b21d16657230931448f4bec08/index.js +21 -0
- package/test/integ.alblam-privateApiExistingResources.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/__entrypoint__.js +1 -0
- package/test/integ.alblam-privateApiExistingResources.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/index.js +1 -0
- package/test/integ.alblam-privateApiExistingResources.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
- package/test/integ.alblam-privateApiExistingResources.js.snapshot/cdk.out +1 -1
- package/test/integ.alblam-privateApiExistingResources.js.snapshot/integ.json +2 -2
- package/test/integ.alblam-privateApiExistingResources.js.snapshot/manifest.json +65 -57
- package/test/integ.alblam-privateApiExistingResources.js.snapshot/tree.json +1 -1
- package/test/integ.alblam-privateApiNewResources.js.snapshot/alblam-privateApiNewResources.assets.json +4 -4
- package/test/integ.alblam-privateApiNewResources.js.snapshot/alblam-privateApiNewResources.template.json +0 -10
- package/test/integ.alblam-privateApiNewResources.js.snapshot/alblamprivateApiNewResourcesIntegDefaultTestDeployAssertB0CCE59F.assets.json +1 -1
- package/test/integ.alblam-privateApiNewResources.js.snapshot/asset.44065ab998484f0809423b22009edee6d159633b21d16657230931448f4bec08/index.js +21 -0
- package/test/integ.alblam-privateApiNewResources.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/__entrypoint__.js +1 -0
- package/test/integ.alblam-privateApiNewResources.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/index.js +1 -0
- package/test/integ.alblam-privateApiNewResources.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
- package/test/integ.alblam-privateApiNewResources.js.snapshot/cdk.out +1 -1
- package/test/integ.alblam-privateApiNewResources.js.snapshot/integ.json +2 -2
- package/test/integ.alblam-privateApiNewResources.js.snapshot/manifest.json +65 -57
- package/test/integ.alblam-privateApiNewResources.js.snapshot/tree.json +1 -1
- package/test/integ.alblam-publicApiExistingResources.js.snapshot/alblam-publicApiExistingResources.assets.json +4 -4
- package/test/integ.alblam-publicApiExistingResources.js.snapshot/alblam-publicApiExistingResources.template.json +0 -10
- package/test/integ.alblam-publicApiExistingResources.js.snapshot/alblampublicApiExistingResourcesIntegDefaultTestDeployAssert22C8EEFD.assets.json +1 -1
- package/test/integ.alblam-publicApiExistingResources.js.snapshot/asset.44065ab998484f0809423b22009edee6d159633b21d16657230931448f4bec08/index.js +21 -0
- package/test/integ.alblam-publicApiExistingResources.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/__entrypoint__.js +1 -0
- package/test/integ.alblam-publicApiExistingResources.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/index.js +1 -0
- package/test/integ.alblam-publicApiExistingResources.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
- package/test/integ.alblam-publicApiExistingResources.js.snapshot/cdk.out +1 -1
- package/test/integ.alblam-publicApiExistingResources.js.snapshot/integ.json +2 -2
- package/test/integ.alblam-publicApiExistingResources.js.snapshot/manifest.json +65 -57
- package/test/integ.alblam-publicApiExistingResources.js.snapshot/tree.json +1 -1
- package/test/integ.alblam-publicApiNewResources.js.snapshot/alblam-publicApiNewResources.assets.json +4 -4
- package/test/integ.alblam-publicApiNewResources.js.snapshot/alblam-publicApiNewResources.template.json +0 -10
- package/test/integ.alblam-publicApiNewResources.js.snapshot/alblampublicApiNewResourcesIntegDefaultTestDeployAssert43CC63D2.assets.json +1 -1
- package/test/integ.alblam-publicApiNewResources.js.snapshot/asset.44065ab998484f0809423b22009edee6d159633b21d16657230931448f4bec08/index.js +21 -0
- package/test/integ.alblam-publicApiNewResources.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/__entrypoint__.js +1 -0
- package/test/integ.alblam-publicApiNewResources.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/index.js +1 -0
- package/test/integ.alblam-publicApiNewResources.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
- package/test/integ.alblam-publicApiNewResources.js.snapshot/cdk.out +1 -1
- package/test/integ.alblam-publicApiNewResources.js.snapshot/integ.json +2 -2
- package/test/integ.alblam-publicApiNewResources.js.snapshot/manifest.json +65 -57
- package/test/integ.alblam-publicApiNewResources.js.snapshot/tree.json +1 -1
- package/test/integ.alblam-twoTargets.js.snapshot/alblam-twoTargets.assets.json +4 -4
- package/test/integ.alblam-twoTargets.js.snapshot/alblam-twoTargets.template.json +0 -10
- package/test/integ.alblam-twoTargets.js.snapshot/alblamtwoTargetsIntegDefaultTestDeployAssert4F811416.assets.json +1 -1
- package/test/integ.alblam-twoTargets.js.snapshot/asset.44065ab998484f0809423b22009edee6d159633b21d16657230931448f4bec08/index.js +21 -0
- package/test/integ.alblam-twoTargets.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/__entrypoint__.js +1 -0
- package/test/integ.alblam-twoTargets.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/index.js +1 -0
- package/test/integ.alblam-twoTargets.js.snapshot/asset.faa95a81ae7d7373f3e1f242268f904eb748d8d0fdd306e8a6fe515a1905a7d6/index.js +1 -0
- package/test/integ.alblam-twoTargets.js.snapshot/cdk.out +1 -1
- package/test/integ.alblam-twoTargets.js.snapshot/integ.json +2 -2
- package/test/integ.alblam-twoTargets.js.snapshot/manifest.json +65 -57
- package/test/integ.alblam-twoTargets.js.snapshot/tree.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"2.206.0"},"children":{"alblam-privateApiNewResources":{"id":"alblam-privateApiNewResources","path":"alblam-privateApiNewResources","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.206.0"},"children":{"test-one":{"id":"test-one","path":"alblam-privateApiNewResources/test-one","constructInfo":{"fqn":"@aws-solutions-constructs/aws-alb-lambda.AlbToLambda","version":"2.86.0"},"children":{"test-one-alb":{"id":"test-one-alb","path":"alblam-privateApiNewResources/test-one/test-one-alb","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationLoadBalancer","version":"2.206.0","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/test-one-alb/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.CfnLoadBalancer","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ElasticLoadBalancingV2::LoadBalancer","aws:cdk:cloudformation:props":{"loadBalancerAttributes":[{"key":"deletion_protection.enabled","value":"false"},{"key":"access_logs.s3.enabled","value":"true"},{"key":"access_logs.s3.bucket","value":{"Ref":"testoneE6ACFBB6"}},{"key":"access_logs.s3.prefix","value":""}],"scheme":"internal","securityGroups":[{"Fn::GetAtt":["testonetestonealbSecurityGroup4DED9E2A","GroupId"]}],"subnets":[{"Ref":"VpcisolatedSubnet1SubnetE62B1B9B"},{"Ref":"VpcisolatedSubnet2Subnet39217055"}],"type":"application"}}},"SecurityGroup":{"id":"SecurityGroup","path":"alblam-privateApiNewResources/test-one/test-one-alb/SecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"2.206.0","metadata":[{"vpc":"*","description":"*","allowAllOutbound":false},{"addIngressRule":[{"canInlineRule":true,"connections":"*","uniqueId":"*"},{},"*",false]}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/test-one-alb/SecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"Automatically created Security Group for ELB alblamprivateApiNewResourcestestonetestonealb8D3CF023","securityGroupEgress":[{"cidrIp":"255.255.255.255/32","description":"Disallow all traffic","ipProtocol":"icmp","fromPort":252,"toPort":86}],"securityGroupIngress":[{"cidrIp":"0.0.0.0/0","ipProtocol":"tcp","fromPort":80,"toPort":80,"description":"Allow from anyone on port 80"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}}}},"test-one":{"id":"test-one","path":"alblam-privateApiNewResources/test-one/test-one","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"2.206.0","metadata":[{"encryption":"S3_MANAGED","versioned":true,"blockPublicAccess":"*","removalPolicy":"destroy","enforceSSL":true,"autoDeleteObjects":true}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/test-one/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"alblam-privateApiNewResources/test-one/test-one/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.206.0","metadata":[{"bucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/test-one/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":"testoneE6ACFBB6"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},"/*"]]}]},{"Action":"s3:PutObject","Effect":"Allow","Principal":{"AWS":"arn:aws:iam::127311923021:root"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},"/AWSLogs/",{"Ref":"AWS::AccountId"},"/*"]]}},{"Action":"s3:PutObject","Condition":{"StringEquals":{"s3:x-amz-acl":"bucket-owner-full-control"}},"Effect":"Allow","Principal":{"Service":"delivery.logs.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},"/AWSLogs/",{"Ref":"AWS::AccountId"},"/*"]]}},{"Action":"s3:GetBucketAcl","Effect":"Allow","Principal":{"Service":"delivery.logs.amazonaws.com"},"Resource":{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"alblam-privateApiNewResources/test-one/test-one/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.206.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"alblam-privateApiNewResources/test-one/test-one/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}}}}}},"LambdaFunctionServiceRole":{"id":"LambdaFunctionServiceRole","path":"alblam-privateApiNewResources/test-one/LambdaFunctionServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.206.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"inlinePolicies":"*"},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]}]},"children":{"ImportLambdaFunctionServiceRole":{"id":"ImportLambdaFunctionServiceRole","path":"alblam-privateApiNewResources/test-one/LambdaFunctionServiceRole/ImportLambdaFunctionServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.206.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/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"}}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"alblam-privateApiNewResources/test-one/LambdaFunctionServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"2.206.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/LambdaFunctionServiceRole/DefaultPolicy/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":["ec2:AssignPrivateIpAddresses","ec2:CreateNetworkInterface","ec2:DeleteNetworkInterface","ec2:DescribeNetworkInterfaces","ec2:UnassignPrivateIpAddresses"],"Effect":"Allow","Resource":"*"}],"Version":"2012-10-17"},"policyName":"testoneLambdaFunctionServiceRoleDefaultPolicy6025A173","roles":[{"Ref":"testoneLambdaFunctionServiceRoleE92573D3"}]}}}}}}},"ReplaceDefaultSecurityGroup-security-group":{"id":"ReplaceDefaultSecurityGroup-security-group","path":"alblam-privateApiNewResources/test-one/ReplaceDefaultSecurityGroup-security-group","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"2.206.0","metadata":[{"vpc":"*","allowAllOutbound":true}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/ReplaceDefaultSecurityGroup-security-group/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"alblam-privateApiNewResources/test-one/ReplaceDefaultSecurityGroup-security-group","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"LambdaFunction":{"id":"LambdaFunction","path":"alblam-privateApiNewResources/test-one/LambdaFunction","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"2.206.0","metadata":[{"role":"*","tracing":"Active","code":"*","runtime":"*","handler":"*","securityGroups":["*"],"vpc":"*"},{"addEnvironment":["*","*",{"removeInEdge":true}]}]},"children":{"Code":{"id":"Code","path":"alblam-privateApiNewResources/test-one/LambdaFunction/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"2.206.0"},"children":{"Stage":{"id":"Stage","path":"alblam-privateApiNewResources/test-one/LambdaFunction/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.206.0"}},"AssetBucket":{"id":"AssetBucket","path":"alblam-privateApiNewResources/test-one/LambdaFunction/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"2.206.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/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}-us-east-1"},"s3Key":"44065ab998484f0809423b22009edee6d159633b21d16657230931448f4bec08.zip"},"environment":{"variables":{"AWS_NODEJS_CONNECTION_REUSE_ENABLED":"1"}},"handler":"index.handler","role":{"Fn::GetAtt":["testoneLambdaFunctionServiceRoleE92573D3","Arn"]},"runtime":"nodejs20.x","tracingConfig":{"mode":"Active"},"vpcConfig":{"subnetIds":[{"Ref":"VpcisolatedSubnet1SubnetE62B1B9B"},{"Ref":"VpcisolatedSubnet2Subnet39217055"}],"securityGroupIds":[{"Fn::GetAtt":["testoneReplaceDefaultSecurityGroupsecuritygroupE46270FE","GroupId"]}]}}}},"inlinePolicyAddedToExecutionRole-0":{"id":"inlinePolicyAddedToExecutionRole-0","path":"alblam-privateApiNewResources/test-one/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":"alblam-privateApiNewResources/test-one/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":"testoneLambdaFunctioninlinePolicyAddedToExecutionRole028251896","roles":[{"Ref":"testoneLambdaFunctionServiceRoleE92573D3"}]}}}}},"Invoke2UTWxhlfyqbT5FTn--5jvgbLgj+FfJwzswGk55DU1H--Y=":{"id":"Invoke2UTWxhlfyqbT5FTn--5jvgbLgj+FfJwzswGk55DU1H--Y=","path":"alblam-privateApiNewResources/test-one/LambdaFunction/Invoke2UTWxhlfyqbT5FTn--5jvgbLgj+FfJwzswGk55DU1H--Y=","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":["testoneLambdaFunctionCC9B03E1","Arn"]},"principal":"elasticloadbalancing.amazonaws.com"}}}}},"test-one-listener":{"id":"test-one-listener","path":"alblam-privateApiNewResources/test-one/test-one-listener","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationListener","version":"2.206.0","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/test-one-listener/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.CfnListener","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ElasticLoadBalancingV2::Listener","aws:cdk:cloudformation:props":{"defaultActions":[{"type":"forward","targetGroupArn":{"Ref":"testonetg2tg6459EC7C"}}],"loadBalancerArn":{"Ref":"testonetestonealb4F263E42"},"port":80,"protocol":"HTTP"}}}}},"tg2-tg":{"id":"tg2-tg","path":"alblam-privateApiNewResources/test-one/tg2-tg","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationTargetGroup","version":"2.206.0"},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/tg2-tg/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.CfnTargetGroup","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ElasticLoadBalancingV2::TargetGroup","aws:cdk:cloudformation:props":{"targets":[{"id":{"Fn::GetAtt":["testoneLambdaFunctionCC9B03E1","Arn"]}}],"targetType":"lambda"}}}}}}},"Vpc":{"id":"Vpc","path":"alblam-privateApiNewResources/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"2.206.0","metadata":[{"natGateways":"*","subnetConfiguration":[{"cidrMask":"*","name":"*","subnetType":"Isolated"}],"enableDnsHostnames":true,"enableDnsSupport":true}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc"}]}}},"isolatedSubnet1":{"id":"isolatedSubnet1","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"2.206.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.0.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"alblam-privateApiNewResources/Vpc/isolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.206.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc/isolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcisolatedSubnet1RouteTableE442650B"},"subnetId":{"Ref":"VpcisolatedSubnet1SubnetE62B1B9B"}}}}}},"isolatedSubnet2":{"id":"isolatedSubnet2","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"2.206.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.64.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"alblam-privateApiNewResources/Vpc/isolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.206.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc/isolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcisolatedSubnet2RouteTable334F9764"},"subnetId":{"Ref":"VpcisolatedSubnet2Subnet39217055"}}}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"alblam-privateApiNewResources/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.206.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"alblam-privateApiNewResources/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}}}},"FlowLog":{"id":"FlowLog","path":"alblam-privateApiNewResources/Vpc/FlowLog","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.FlowLog","version":"2.206.0","metadata":[{"resourceType":"*"}]},"children":{"IAMRole":{"id":"IAMRole","path":"alblam-privateApiNewResources/Vpc/FlowLog/IAMRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.206.0","metadata":[{"roleName":"*","assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"addToPrincipalPolicy":[{}]}]},"children":{"ImportIAMRole":{"id":"ImportIAMRole","path":"alblam-privateApiNewResources/Vpc/FlowLog/IAMRole/ImportIAMRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.206.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/Vpc/FlowLog/IAMRole/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":"vpc-flow-logs.amazonaws.com"}}],"Version":"2012-10-17"},"tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc/FlowLog"}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"alblam-privateApiNewResources/Vpc/FlowLog/IAMRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"2.206.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/Vpc/FlowLog/IAMRole/DefaultPolicy/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":["logs:CreateLogStream","logs:DescribeLogStreams","logs:PutLogEvents"],"Effect":"Allow","Resource":{"Fn::GetAtt":["VpcFlowLogLogGroup7B5C56B9","Arn"]}},{"Action":"iam:PassRole","Effect":"Allow","Resource":{"Fn::GetAtt":["VpcFlowLogIAMRole6A475D41","Arn"]}}],"Version":"2012-10-17"},"policyName":"VpcFlowLogIAMRoleDefaultPolicy406FB995","roles":[{"Ref":"VpcFlowLogIAMRole6A475D41"}]}}}}}}},"LogGroup":{"id":"LogGroup","path":"alblam-privateApiNewResources/Vpc/FlowLog/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"2.206.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/Vpc/FlowLog/LogGroup/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":{"retentionInDays":731,"tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc/FlowLog"}]}}}}},"FlowLog":{"id":"FlowLog","path":"alblam-privateApiNewResources/Vpc/FlowLog/FlowLog","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnFlowLog","version":"2.206.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::FlowLog","aws:cdk:cloudformation:props":{"deliverLogsPermissionArn":{"Fn::GetAtt":["VpcFlowLogIAMRole6A475D41","Arn"]},"logDestinationType":"cloud-watch-logs","logGroupName":{"Ref":"VpcFlowLogLogGroup7B5C56B9"},"resourceId":{"Ref":"Vpc8378EB38"},"resourceType":"VPC","tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc/FlowLog"}],"trafficType":"ALL"}}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"alblam-privateApiNewResources/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"2.206.0"},"children":{"Staging":{"id":"Staging","path":"alblam-privateApiNewResources/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.206.0"}},"Role":{"id":"Role","path":"alblam-privateApiNewResources/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}},"Handler":{"id":"Handler","path":"alblam-privateApiNewResources/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}}}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"alblam-privateApiNewResources/Custom::S3AutoDeleteObjectsCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"2.206.0"},"children":{"Staging":{"id":"Staging","path":"alblam-privateApiNewResources/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.206.0"}},"Role":{"id":"Role","path":"alblam-privateApiNewResources/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}},"Handler":{"id":"Handler","path":"alblam-privateApiNewResources/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.206.0"}}}},"Integ":{"id":"Integ","path":"alblam-privateApiNewResources/Integ","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"2.206.0-alpha.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"alblam-privateApiNewResources/Integ/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"2.206.0-alpha.0"},"children":{"Default":{"id":"Default","path":"alblam-privateApiNewResources/Integ/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"alblam-privateApiNewResources/Integ/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.206.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"alblam-privateApiNewResources/Integ/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.206.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"alblam-privateApiNewResources/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.206.0"}}}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"alblam-privateApiNewResources/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.206.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"alblam-privateApiNewResources/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":{"alblam-privateApiNewResources":{"id":"alblam-privateApiNewResources","path":"alblam-privateApiNewResources","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.223.0"},"children":{"test-one":{"id":"test-one","path":"alblam-privateApiNewResources/test-one","constructInfo":{"fqn":"@aws-solutions-constructs/aws-alb-lambda.AlbToLambda","version":"2.94.0"},"children":{"test-one-alb":{"id":"test-one-alb","path":"alblam-privateApiNewResources/test-one/test-one-alb","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationLoadBalancer","version":"2.223.0","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/test-one-alb/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.CfnLoadBalancer","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ElasticLoadBalancingV2::LoadBalancer","aws:cdk:cloudformation:props":{"loadBalancerAttributes":[{"key":"deletion_protection.enabled","value":"false"},{"key":"access_logs.s3.enabled","value":"true"},{"key":"access_logs.s3.bucket","value":{"Ref":"testoneE6ACFBB6"}},{"key":"access_logs.s3.prefix","value":""}],"scheme":"internal","securityGroups":[{"Fn::GetAtt":["testonetestonealbSecurityGroup4DED9E2A","GroupId"]}],"subnets":[{"Ref":"VpcisolatedSubnet1SubnetE62B1B9B"},{"Ref":"VpcisolatedSubnet2Subnet39217055"}],"type":"application"}}},"SecurityGroup":{"id":"SecurityGroup","path":"alblam-privateApiNewResources/test-one/test-one-alb/SecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"2.223.0","metadata":[{"vpc":"*","description":"*","allowAllOutbound":false},{"addIngressRule":[{"canInlineRule":true,"connections":"*","uniqueId":"*"},{},"*",false]}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/test-one-alb/SecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"Automatically created Security Group for ELB alblamprivateApiNewResourcestestonetestonealb8D3CF023","securityGroupEgress":[{"cidrIp":"255.255.255.255/32","description":"Disallow all traffic","ipProtocol":"icmp","fromPort":252,"toPort":86}],"securityGroupIngress":[{"cidrIp":"0.0.0.0/0","ipProtocol":"tcp","fromPort":80,"toPort":80,"description":"Allow from anyone on port 80"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}}}},"test-one":{"id":"test-one","path":"alblam-privateApiNewResources/test-one/test-one","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}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/test-one/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},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"alblam-privateApiNewResources/test-one/test-one/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"2.223.0","metadata":[{"bucket":"*"}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/test-one/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":"testoneE6ACFBB6"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},"/*"]]}]},{"Action":"s3:PutObject","Effect":"Allow","Principal":{"AWS":"arn:aws:iam::127311923021:root"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},"/AWSLogs/",{"Ref":"AWS::AccountId"},"/*"]]}},{"Action":"s3:PutObject","Condition":{"StringEquals":{"s3:x-amz-acl":"bucket-owner-full-control"}},"Effect":"Allow","Principal":{"Service":"delivery.logs.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]},"/AWSLogs/",{"Ref":"AWS::AccountId"},"/*"]]}},{"Action":"s3:GetBucketAcl","Effect":"Allow","Principal":{"Service":"delivery.logs.amazonaws.com"},"Resource":{"Fn::GetAtt":["testoneE6ACFBB6","Arn"]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"alblam-privateApiNewResources/test-one/test-one/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.223.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"alblam-privateApiNewResources/test-one/test-one/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.223.0"}}}}}},"LambdaFunctionServiceRole":{"id":"LambdaFunctionServiceRole","path":"alblam-privateApiNewResources/test-one/LambdaFunctionServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.223.0","metadata":[{"assumedBy":{"principalAccount":"*","assumeRoleAction":"*"},"inlinePolicies":"*"},{"addToPolicy":[{}]},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]}]},"children":{"ImportLambdaFunctionServiceRole":{"id":"ImportLambdaFunctionServiceRole","path":"alblam-privateApiNewResources/test-one/LambdaFunctionServiceRole/ImportLambdaFunctionServiceRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.223.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/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"}}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"alblam-privateApiNewResources/test-one/LambdaFunctionServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"2.223.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/LambdaFunctionServiceRole/DefaultPolicy/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":["ec2:AssignPrivateIpAddresses","ec2:CreateNetworkInterface","ec2:DeleteNetworkInterface","ec2:DescribeNetworkInterfaces","ec2:UnassignPrivateIpAddresses"],"Effect":"Allow","Resource":"*"}],"Version":"2012-10-17"},"policyName":"testoneLambdaFunctionServiceRoleDefaultPolicy6025A173","roles":[{"Ref":"testoneLambdaFunctionServiceRoleE92573D3"}]}}}}}}},"ReplaceDefaultSecurityGroup-security-group":{"id":"ReplaceDefaultSecurityGroup-security-group","path":"alblam-privateApiNewResources/test-one/ReplaceDefaultSecurityGroup-security-group","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"2.223.0","metadata":[{"vpc":"*","allowAllOutbound":true}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/ReplaceDefaultSecurityGroup-security-group/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:props":{"groupDescription":"alblam-privateApiNewResources/test-one/ReplaceDefaultSecurityGroup-security-group","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"LambdaFunction":{"id":"LambdaFunction","path":"alblam-privateApiNewResources/test-one/LambdaFunction","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"2.223.0","metadata":[{"role":"*","tracing":"Active","code":"*","runtime":"*","handler":"*","securityGroups":["*"],"vpc":"*"},{"addEnvironment":["*","*",{"removeInEdge":true}]}]},"children":{"Code":{"id":"Code","path":"alblam-privateApiNewResources/test-one/LambdaFunction/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"2.223.0"},"children":{"Stage":{"id":"Stage","path":"alblam-privateApiNewResources/test-one/LambdaFunction/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.223.0"}},"AssetBucket":{"id":"AssetBucket","path":"alblam-privateApiNewResources/test-one/LambdaFunction/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"2.223.0","metadata":[]}}}},"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/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}-us-east-1"},"s3Key":"44065ab998484f0809423b22009edee6d159633b21d16657230931448f4bec08.zip"},"environment":{"variables":{"AWS_NODEJS_CONNECTION_REUSE_ENABLED":"1"}},"handler":"index.handler","role":{"Fn::GetAtt":["testoneLambdaFunctionServiceRoleE92573D3","Arn"]},"runtime":"nodejs20.x","tracingConfig":{"mode":"Active"},"vpcConfig":{"subnetIds":[{"Ref":"VpcisolatedSubnet1SubnetE62B1B9B"},{"Ref":"VpcisolatedSubnet2Subnet39217055"}],"securityGroupIds":[{"Fn::GetAtt":["testoneReplaceDefaultSecurityGroupsecuritygroupE46270FE","GroupId"]}]}}}},"inlinePolicyAddedToExecutionRole-0":{"id":"inlinePolicyAddedToExecutionRole-0","path":"alblam-privateApiNewResources/test-one/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":"alblam-privateApiNewResources/test-one/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":"testoneLambdaFunctioninlinePolicyAddedToExecutionRole028251896","roles":[{"Ref":"testoneLambdaFunctionServiceRoleE92573D3"}]}}}}},"Invoke2UTWxhlfyqbT5FTn--5jvgbLgj+FfJwzswGk55DU1H--Y=":{"id":"Invoke2UTWxhlfyqbT5FTn--5jvgbLgj+FfJwzswGk55DU1H--Y=","path":"alblam-privateApiNewResources/test-one/LambdaFunction/Invoke2UTWxhlfyqbT5FTn--5jvgbLgj+FfJwzswGk55DU1H--Y=","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":["testoneLambdaFunctionCC9B03E1","Arn"]},"principal":"elasticloadbalancing.amazonaws.com"}}}}},"test-one-listener":{"id":"test-one-listener","path":"alblam-privateApiNewResources/test-one/test-one-listener","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationListener","version":"2.223.0","metadata":["*","*"]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/test-one-listener/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.CfnListener","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ElasticLoadBalancingV2::Listener","aws:cdk:cloudformation:props":{"defaultActions":[{"type":"forward","targetGroupArn":{"Ref":"testonetg2tg6459EC7C"}}],"loadBalancerArn":{"Ref":"testonetestonealb4F263E42"},"port":80,"protocol":"HTTP"}}}}},"tg2-tg":{"id":"tg2-tg","path":"alblam-privateApiNewResources/test-one/tg2-tg","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationTargetGroup","version":"2.223.0"},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/test-one/tg2-tg/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_elasticloadbalancingv2.CfnTargetGroup","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::ElasticLoadBalancingV2::TargetGroup","aws:cdk:cloudformation:props":{"targets":[{"id":{"Fn::GetAtt":["testoneLambdaFunctionCC9B03E1","Arn"]}}],"targetType":"lambda"}}}}}}},"Vpc":{"id":"Vpc","path":"alblam-privateApiNewResources/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"2.223.0","metadata":[{"natGateways":"*","subnetConfiguration":[{"cidrMask":"*","name":"*","subnetType":"Isolated"}],"enableDnsHostnames":true,"enableDnsSupport":true}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc"}]}}},"isolatedSubnet1":{"id":"isolatedSubnet1","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"2.223.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.0.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"alblam-privateApiNewResources/Vpc/isolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.223.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc/isolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcisolatedSubnet1RouteTableE442650B"},"subnetId":{"Ref":"VpcisolatedSubnet1SubnetE62B1B9B"}}}}}},"isolatedSubnet2":{"id":"isolatedSubnet2","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"2.223.0","metadata":[{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"},{"availabilityZone":"*","vpcId":"*","cidrBlock":"*","mapPublicIpOnLaunch":false,"ipv6CidrBlock":"*","assignIpv6AddressOnCreation":"*"}]},"children":{"Subnet":{"id":"Subnet","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.64.0/18","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"alblam-privateApiNewResources/Vpc/isolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.223.0","metadata":[]}},"RouteTable":{"id":"RouteTable","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc/isolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"alblam-privateApiNewResources/Vpc/isolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcisolatedSubnet2RouteTable334F9764"},"subnetId":{"Ref":"VpcisolatedSubnet2Subnet39217055"}}}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"alblam-privateApiNewResources/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"2.223.0","metadata":["*"]},"children":{"Default":{"id":"Default","path":"alblam-privateApiNewResources/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.223.0"}}}},"FlowLog":{"id":"FlowLog","path":"alblam-privateApiNewResources/Vpc/FlowLog","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.FlowLog","version":"2.223.0","metadata":[{"resourceType":"*"}]},"children":{"IAMRole":{"id":"IAMRole","path":"alblam-privateApiNewResources/Vpc/FlowLog/IAMRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"2.223.0","metadata":[{"roleName":"*","assumedBy":{"principalAccount":"*","assumeRoleAction":"*"}},{"addToPrincipalPolicy":[{}]},{"attachInlinePolicy":["*"]},{"attachInlinePolicy":["*"]}]},"children":{"ImportIAMRole":{"id":"ImportIAMRole","path":"alblam-privateApiNewResources/Vpc/FlowLog/IAMRole/ImportIAMRole","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"2.223.0","metadata":["*"]}},"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/Vpc/FlowLog/IAMRole/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":"vpc-flow-logs.amazonaws.com"}}],"Version":"2012-10-17"},"tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc/FlowLog"}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"alblam-privateApiNewResources/Vpc/FlowLog/IAMRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"2.223.0","metadata":["*",{"attachToRole":["*"]},{"attachToRole":["*"]},{"addStatements":[{}]}]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/Vpc/FlowLog/IAMRole/DefaultPolicy/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":["logs:CreateLogStream","logs:DescribeLogStreams","logs:PutLogEvents"],"Effect":"Allow","Resource":{"Fn::GetAtt":["VpcFlowLogLogGroup7B5C56B9","Arn"]}}],"Version":"2012-10-17"},"policyName":"VpcFlowLogIAMRoleDefaultPolicy406FB995","roles":[{"Ref":"VpcFlowLogIAMRole6A475D41"}]}}}}}}},"LogGroup":{"id":"LogGroup","path":"alblam-privateApiNewResources/Vpc/FlowLog/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"2.223.0","metadata":["*"]},"children":{"Resource":{"id":"Resource","path":"alblam-privateApiNewResources/Vpc/FlowLog/LogGroup/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":{"retentionInDays":731,"tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc/FlowLog"}]}}}}},"FlowLog":{"id":"FlowLog","path":"alblam-privateApiNewResources/Vpc/FlowLog/FlowLog","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnFlowLog","version":"2.223.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::FlowLog","aws:cdk:cloudformation:props":{"deliverLogsPermissionArn":{"Fn::GetAtt":["VpcFlowLogIAMRole6A475D41","Arn"]},"logDestinationType":"cloud-watch-logs","logGroupName":{"Ref":"VpcFlowLogLogGroup7B5C56B9"},"resourceId":{"Ref":"Vpc8378EB38"},"resourceType":"VPC","tags":[{"key":"Name","value":"alblam-privateApiNewResources/Vpc/FlowLog"}],"trafficType":"ALL"}}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"alblam-privateApiNewResources/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"2.223.0"},"children":{"Staging":{"id":"Staging","path":"alblam-privateApiNewResources/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.223.0"}},"Role":{"id":"Role","path":"alblam-privateApiNewResources/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.223.0"}},"Handler":{"id":"Handler","path":"alblam-privateApiNewResources/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.223.0"}}}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"alblam-privateApiNewResources/Custom::S3AutoDeleteObjectsCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"2.223.0"},"children":{"Staging":{"id":"Staging","path":"alblam-privateApiNewResources/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"2.223.0"}},"Role":{"id":"Role","path":"alblam-privateApiNewResources/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.223.0"}},"Handler":{"id":"Handler","path":"alblam-privateApiNewResources/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"2.223.0"}}}},"Integ":{"id":"Integ","path":"alblam-privateApiNewResources/Integ","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"2.223.0-alpha.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"alblam-privateApiNewResources/Integ/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"2.223.0-alpha.0"},"children":{"Default":{"id":"Default","path":"alblam-privateApiNewResources/Integ/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}},"DeployAssert":{"id":"DeployAssert","path":"alblam-privateApiNewResources/Integ/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"2.223.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"alblam-privateApiNewResources/Integ/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.223.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"alblam-privateApiNewResources/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.223.0"}}}}}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"alblam-privateApiNewResources/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"2.223.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"alblam-privateApiNewResources/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"2.223.0"}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.4.2"}}}}}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "
|
|
2
|
+
"version": "48.0.0",
|
|
3
3
|
"files": {
|
|
4
4
|
"7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200": {
|
|
5
5
|
"displayName": "alblam-publicApiExistingResources/Custom::VpcRestrictDefaultSGCustomResourceProvider Code",
|
|
@@ -46,16 +46,16 @@
|
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
},
|
|
49
|
-
"
|
|
49
|
+
"211604c1aba813cca425ce9b4e1a4574dd6c81ee6d85f80284deccb3ccf74cc2": {
|
|
50
50
|
"displayName": "alblam-publicApiExistingResources Template",
|
|
51
51
|
"source": {
|
|
52
52
|
"path": "alblam-publicApiExistingResources.template.json",
|
|
53
53
|
"packaging": "file"
|
|
54
54
|
},
|
|
55
55
|
"destinations": {
|
|
56
|
-
"current_account-us-east-1-
|
|
56
|
+
"current_account-us-east-1-c92f17e0": {
|
|
57
57
|
"bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-us-east-1",
|
|
58
|
-
"objectKey": "
|
|
58
|
+
"objectKey": "211604c1aba813cca425ce9b4e1a4574dd6c81ee6d85f80284deccb3ccf74cc2.json",
|
|
59
59
|
"region": "us-east-1",
|
|
60
60
|
"assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-us-east-1"
|
|
61
61
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
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
|
+
exports.handler = async function (event) {
|
|
15
|
+
console.log("request:", JSON.stringify(event, undefined, 2));
|
|
16
|
+
return {
|
|
17
|
+
statusCode: 200,
|
|
18
|
+
headers: { "Content-Type": "text/plain" },
|
|
19
|
+
body: `Hello, CDK! You've hit ${event.path}\n`,
|
|
20
|
+
};
|
|
21
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.external=void 0,exports.handler=handler,exports.withRetries=withRetries;const https=require("https"),url=require("url");exports.external={sendHttpRequest:defaultSendHttpRequest,log:defaultLog,includeStackTraces:!0,userHandlerIndex:"./index"};const CREATE_FAILED_PHYSICAL_ID_MARKER="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",MISSING_PHYSICAL_ID_MARKER="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";async function handler(event,context){const sanitizedEvent={...event,ResponseURL:"..."};if(exports.external.log(JSON.stringify(sanitizedEvent,void 0,2)),event.RequestType==="Delete"&&event.PhysicalResourceId===CREATE_FAILED_PHYSICAL_ID_MARKER){exports.external.log("ignoring DELETE event caused by a failed CREATE event"),await submitResponse("SUCCESS",event);return}try{const userHandler=require(exports.external.userHandlerIndex).handler,result=await userHandler(sanitizedEvent,context),responseEvent=renderResponse(event,result);await submitResponse("SUCCESS",responseEvent)}catch(e){const resp={...event,Reason:exports.external.includeStackTraces?e.stack:e.message};resp.PhysicalResourceId||(event.RequestType==="Create"?(exports.external.log("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),resp.PhysicalResourceId=CREATE_FAILED_PHYSICAL_ID_MARKER):exports.external.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(event)}`)),await submitResponse("FAILED",resp)}}function renderResponse(cfnRequest,handlerResponse={}){const physicalResourceId=handlerResponse.PhysicalResourceId??cfnRequest.PhysicalResourceId??cfnRequest.RequestId;if(cfnRequest.RequestType==="Delete"&&physicalResourceId!==cfnRequest.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${cfnRequest.PhysicalResourceId}" to "${handlerResponse.PhysicalResourceId}" during deletion`);return{...cfnRequest,...handlerResponse,PhysicalResourceId:physicalResourceId}}async function submitResponse(status,event){const json={Status:status,Reason:event.Reason??status,StackId:event.StackId,RequestId:event.RequestId,PhysicalResourceId:event.PhysicalResourceId||MISSING_PHYSICAL_ID_MARKER,LogicalResourceId:event.LogicalResourceId,NoEcho:event.NoEcho,Data:event.Data},parsedUrl=url.parse(event.ResponseURL),loggingSafeUrl=`${parsedUrl.protocol}//${parsedUrl.hostname}/${parsedUrl.pathname}?***`;exports.external.log("submit response to cloudformation",loggingSafeUrl,json);const responseBody=JSON.stringify(json),req={hostname:parsedUrl.hostname,path:parsedUrl.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(responseBody,"utf8")}};await withRetries({attempts:5,sleep:1e3},exports.external.sendHttpRequest)(req,responseBody)}async function defaultSendHttpRequest(options,requestBody){return new Promise((resolve,reject)=>{try{const request=https.request(options,response=>{response.resume(),!response.statusCode||response.statusCode>=400?reject(new Error(`Unsuccessful HTTP response: ${response.statusCode}`)):resolve()});request.on("error",reject),request.write(requestBody),request.end()}catch(e){reject(e)}})}function defaultLog(fmt,...params){console.log(fmt,...params)}function withRetries(options,fn){return async(...xs)=>{let attempts=options.attempts,ms=options.sleep;for(;;)try{return await fn(...xs)}catch(e){if(attempts--<=0)throw e;await sleep(Math.floor(Math.random()*ms)),ms*=2}}}async function sleep(ms){return new Promise(ok=>setTimeout(ok,ms))}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var I=Object.create,t=Object.defineProperty,y=Object.getOwnPropertyDescriptor,P=Object.getOwnPropertyNames,g=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,G=(r,e)=>{for(var o in e)t(r,o,{get:e[o],enumerable:!0})},n=(r,e,o,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of P(e))!l.call(r,s)&&s!==o&&t(r,s,{get:()=>e[s],enumerable:!(i=y(e,s))||i.enumerable});return r},R=(r,e,o)=>(o=r!=null?I(g(r)):{},n(e||!r||!r.__esModule?t(o,"default",{value:r,enumerable:!0}):o,r)),S=r=>n(t({},"__esModule",{value:!0}),r),k={};G(k,{handler:()=>f}),module.exports=S(k);var a=R(require("@aws-sdk/client-ec2")),u=new a.EC2({});function c(r,e){return{GroupId:r,IpPermissions:[{UserIdGroupPairs:[{GroupId:r,UserId:e}],IpProtocol:"-1"}]}}function d(r){return{GroupId:r,IpPermissions:[{IpRanges:[{CidrIp:"0.0.0.0/0"}],IpProtocol:"-1"}]}}async function f(r){let e=r.ResourceProperties.DefaultSecurityGroupId,o=r.ResourceProperties.Account;switch(r.RequestType){case"Create":return p(e,o);case"Update":return h(r);case"Delete":return m(e,o)}}async function h(r){let e=r.OldResourceProperties.DefaultSecurityGroupId,o=r.ResourceProperties.DefaultSecurityGroupId;e!==o&&(await m(e,r.ResourceProperties.Account),await p(o,r.ResourceProperties.Account))}async function p(r,e){try{await u.revokeSecurityGroupEgress(d(r))}catch(o){if(o.name!=="InvalidPermission.NotFound")throw o}try{await u.revokeSecurityGroupIngress(c(r,e))}catch(o){if(o.name!=="InvalidPermission.NotFound")throw o}}async function m(r,e){await u.authorizeSecurityGroupIngress(c(r,e)),await u.authorizeSecurityGroupEgress(d(r))}
|
|
@@ -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":"
|
|
1
|
+
{"version":"48.0.0"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "
|
|
2
|
+
"version": "48.0.0",
|
|
3
3
|
"testCases": {
|
|
4
4
|
"alblam-publicApiExistingResources/Integ/DefaultTest": {
|
|
5
5
|
"stacks": [
|
|
@@ -9,5 +9,5 @@
|
|
|
9
9
|
"assertionStackName": "alblampublicApiExistingResourcesIntegDefaultTestDeployAssert22C8EEFD"
|
|
10
10
|
}
|
|
11
11
|
},
|
|
12
|
-
"minimumCliVersion": "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}-us-east-1",
|
|
68
68
|
"cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-us-east-1",
|
|
69
|
-
"stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-us-east-1/
|
|
69
|
+
"stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-us-east-1/211604c1aba813cca425ce9b4e1a4574dd6c81ee6d85f80284deccb3ccf74cc2.json",
|
|
70
70
|
"requiresBootstrapStackVersion": 6,
|
|
71
71
|
"bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
|
|
72
72
|
"additionalDependencies": [
|
|
@@ -412,14 +412,6 @@
|
|
|
412
412
|
"*"
|
|
413
413
|
]
|
|
414
414
|
}
|
|
415
|
-
},
|
|
416
|
-
{
|
|
417
|
-
"type": "aws:cdk:analytics:method",
|
|
418
|
-
"data": {
|
|
419
|
-
"addToPrincipalPolicy": [
|
|
420
|
-
{}
|
|
421
|
-
]
|
|
422
|
-
}
|
|
423
415
|
}
|
|
424
416
|
],
|
|
425
417
|
"/alblam-publicApiExistingResources/Vpc/FlowLog/IAMRole/ImportIAMRole": [
|
|
@@ -455,14 +447,6 @@
|
|
|
455
447
|
]
|
|
456
448
|
}
|
|
457
449
|
},
|
|
458
|
-
{
|
|
459
|
-
"type": "aws:cdk:analytics:method",
|
|
460
|
-
"data": {
|
|
461
|
-
"addStatements": [
|
|
462
|
-
{}
|
|
463
|
-
]
|
|
464
|
-
}
|
|
465
|
-
},
|
|
466
450
|
{
|
|
467
451
|
"type": "aws:cdk:analytics:method",
|
|
468
452
|
"data": {
|
|
@@ -873,57 +857,48 @@
|
|
|
873
857
|
"properties": {
|
|
874
858
|
"module": "aws-cdk-lib",
|
|
875
859
|
"flags": {
|
|
876
|
-
"@aws-cdk/
|
|
877
|
-
"recommendedValue": true,
|
|
878
|
-
"explanation": "Allow multiple stacks with the same name"
|
|
879
|
-
},
|
|
880
|
-
"aws-cdk:enableDiffNoFail": {
|
|
860
|
+
"@aws-cdk/aws-signer:signingProfileNamePassedToCfn": {
|
|
881
861
|
"recommendedValue": true,
|
|
882
|
-
"explanation": "
|
|
862
|
+
"explanation": "Pass signingProfileName to CfnSigningProfile"
|
|
883
863
|
},
|
|
884
864
|
"@aws-cdk/core:newStyleStackSynthesis": {
|
|
885
865
|
"recommendedValue": true,
|
|
886
|
-
"explanation": "Switch to new stack synthesis method which enables CI/CD"
|
|
866
|
+
"explanation": "Switch to new stack synthesis method which enables CI/CD",
|
|
867
|
+
"unconfiguredBehavesLike": {
|
|
868
|
+
"v2": true
|
|
869
|
+
}
|
|
887
870
|
},
|
|
888
871
|
"@aws-cdk/core:stackRelativeExports": {
|
|
889
872
|
"recommendedValue": true,
|
|
890
|
-
"explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path"
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
"explanation": "DockerImageAsset properly supports `.dockerignore` files by default"
|
|
895
|
-
},
|
|
896
|
-
"@aws-cdk/aws-secretsmanager:parseOwnedSecretName": {
|
|
897
|
-
"recommendedValue": true,
|
|
898
|
-
"explanation": "Fix the referencing of SecretsManager names from ARNs"
|
|
899
|
-
},
|
|
900
|
-
"@aws-cdk/aws-kms:defaultKeyPolicies": {
|
|
901
|
-
"recommendedValue": true,
|
|
902
|
-
"explanation": "Tighten default KMS key policies"
|
|
903
|
-
},
|
|
904
|
-
"@aws-cdk/aws-s3:grantWriteWithoutAcl": {
|
|
905
|
-
"recommendedValue": true,
|
|
906
|
-
"explanation": "Remove `PutObjectAcl` from Bucket.grantWrite"
|
|
873
|
+
"explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path",
|
|
874
|
+
"unconfiguredBehavesLike": {
|
|
875
|
+
"v2": true
|
|
876
|
+
}
|
|
907
877
|
},
|
|
908
|
-
"@aws-cdk/aws-ecs-patterns:
|
|
878
|
+
"@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": {
|
|
909
879
|
"recommendedValue": true,
|
|
910
|
-
"explanation": "
|
|
880
|
+
"explanation": "Disable implicit openListener when custom security groups are provided"
|
|
911
881
|
},
|
|
912
882
|
"@aws-cdk/aws-rds:lowercaseDbIdentifier": {
|
|
913
883
|
"recommendedValue": true,
|
|
914
|
-
"explanation": "Force lowercasing of RDS Cluster names in CDK"
|
|
884
|
+
"explanation": "Force lowercasing of RDS Cluster names in CDK",
|
|
885
|
+
"unconfiguredBehavesLike": {
|
|
886
|
+
"v2": true
|
|
887
|
+
}
|
|
915
888
|
},
|
|
916
889
|
"@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": {
|
|
917
890
|
"recommendedValue": true,
|
|
918
|
-
"explanation": "Allow adding/removing multiple UsagePlanKeys independently"
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
"explanation": "Enable this feature flag to have elastic file systems encrypted at rest by default."
|
|
891
|
+
"explanation": "Allow adding/removing multiple UsagePlanKeys independently",
|
|
892
|
+
"unconfiguredBehavesLike": {
|
|
893
|
+
"v2": true
|
|
894
|
+
}
|
|
923
895
|
},
|
|
924
896
|
"@aws-cdk/aws-lambda:recognizeVersionProps": {
|
|
925
897
|
"recommendedValue": true,
|
|
926
|
-
"explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`."
|
|
898
|
+
"explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.",
|
|
899
|
+
"unconfiguredBehavesLike": {
|
|
900
|
+
"v2": true
|
|
901
|
+
}
|
|
927
902
|
},
|
|
928
903
|
"@aws-cdk/aws-lambda:recognizeLayerVersion": {
|
|
929
904
|
"userValue": true,
|
|
@@ -932,7 +907,10 @@
|
|
|
932
907
|
},
|
|
933
908
|
"@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": {
|
|
934
909
|
"recommendedValue": true,
|
|
935
|
-
"explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default."
|
|
910
|
+
"explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.",
|
|
911
|
+
"unconfiguredBehavesLike": {
|
|
912
|
+
"v2": true
|
|
913
|
+
}
|
|
936
914
|
},
|
|
937
915
|
"@aws-cdk/core:checkSecretUsage": {
|
|
938
916
|
"userValue": true,
|
|
@@ -1009,7 +987,7 @@
|
|
|
1009
987
|
"@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": {
|
|
1010
988
|
"userValue": true,
|
|
1011
989
|
"recommendedValue": true,
|
|
1012
|
-
"explanation": "Enable this feature to
|
|
990
|
+
"explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in."
|
|
1013
991
|
},
|
|
1014
992
|
"@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": {
|
|
1015
993
|
"userValue": true,
|
|
@@ -1153,7 +1131,10 @@
|
|
|
1153
1131
|
},
|
|
1154
1132
|
"@aws-cdk/pipelines:reduceAssetRoleTrustScope": {
|
|
1155
1133
|
"recommendedValue": true,
|
|
1156
|
-
"explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy"
|
|
1134
|
+
"explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy",
|
|
1135
|
+
"unconfiguredBehavesLike": {
|
|
1136
|
+
"v2": true
|
|
1137
|
+
}
|
|
1157
1138
|
},
|
|
1158
1139
|
"@aws-cdk/aws-eks:nodegroupNameAttribute": {
|
|
1159
1140
|
"userValue": true,
|
|
@@ -1182,7 +1163,10 @@
|
|
|
1182
1163
|
},
|
|
1183
1164
|
"@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": {
|
|
1184
1165
|
"recommendedValue": true,
|
|
1185
|
-
"explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model."
|
|
1166
|
+
"explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.",
|
|
1167
|
+
"unconfiguredBehavesLike": {
|
|
1168
|
+
"v2": true
|
|
1169
|
+
}
|
|
1186
1170
|
},
|
|
1187
1171
|
"@aws-cdk/core:explicitStackTags": {
|
|
1188
1172
|
"userValue": true,
|
|
@@ -1246,7 +1230,10 @@
|
|
|
1246
1230
|
},
|
|
1247
1231
|
"@aws-cdk/core:aspectStabilization": {
|
|
1248
1232
|
"recommendedValue": true,
|
|
1249
|
-
"explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis."
|
|
1233
|
+
"explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.",
|
|
1234
|
+
"unconfiguredBehavesLike": {
|
|
1235
|
+
"v2": true
|
|
1236
|
+
}
|
|
1250
1237
|
},
|
|
1251
1238
|
"@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": {
|
|
1252
1239
|
"userValue": true,
|
|
@@ -1280,7 +1267,10 @@
|
|
|
1280
1267
|
},
|
|
1281
1268
|
"@aws-cdk/pipelines:reduceStageRoleTrustScope": {
|
|
1282
1269
|
"recommendedValue": true,
|
|
1283
|
-
"explanation": "Remove the root account principal from Stage addActions trust policy"
|
|
1270
|
+
"explanation": "Remove the root account principal from Stage addActions trust policy",
|
|
1271
|
+
"unconfiguredBehavesLike": {
|
|
1272
|
+
"v2": true
|
|
1273
|
+
}
|
|
1284
1274
|
},
|
|
1285
1275
|
"@aws-cdk/aws-events:requireEventBusPolicySid": {
|
|
1286
1276
|
"userValue": true,
|
|
@@ -1303,7 +1293,10 @@
|
|
|
1303
1293
|
},
|
|
1304
1294
|
"@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": {
|
|
1305
1295
|
"recommendedValue": true,
|
|
1306
|
-
"explanation": "When enabled, scopes down the trust policy for the cross-account action role"
|
|
1296
|
+
"explanation": "When enabled, scopes down the trust policy for the cross-account action role",
|
|
1297
|
+
"unconfiguredBehavesLike": {
|
|
1298
|
+
"v2": true
|
|
1299
|
+
}
|
|
1307
1300
|
},
|
|
1308
1301
|
"@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": {
|
|
1309
1302
|
"userValue": true,
|
|
@@ -1333,6 +1326,21 @@
|
|
|
1333
1326
|
"userValue": true,
|
|
1334
1327
|
"recommendedValue": true,
|
|
1335
1328
|
"explanation": "When enabled, CDK creates and manages loggroup for the lambda function"
|
|
1329
|
+
},
|
|
1330
|
+
"@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": {
|
|
1331
|
+
"recommendedValue": true,
|
|
1332
|
+
"explanation": "When enabled, Network Load Balancer will be created with a security group by default."
|
|
1333
|
+
},
|
|
1334
|
+
"@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": {
|
|
1335
|
+
"recommendedValue": true,
|
|
1336
|
+
"explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.",
|
|
1337
|
+
"unconfiguredBehavesLike": {
|
|
1338
|
+
"v2": true
|
|
1339
|
+
}
|
|
1340
|
+
},
|
|
1341
|
+
"@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": {
|
|
1342
|
+
"recommendedValue": true,
|
|
1343
|
+
"explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement"
|
|
1336
1344
|
}
|
|
1337
1345
|
}
|
|
1338
1346
|
}
|