Skip to content
v2.276.0

CfnTransitGatewayAttachmentNatConfigurationProps Struct Added in v2.276.0 ​

Properties for defining a CfnTransitGatewayAttachmentNatConfiguration.

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_ec2 as ec2 } from 'aws-cdk-lib';
const cfnTransitGatewayAttachmentNatConfigurationProps: ec2.CfnTransitGatewayAttachmentNatConfigurationProps = {
  natGatewayRules: [{
    matchSourceCidr: 'matchSourceCidr',
    natCidr: 'natCidr',
    ruleNumber: 123,
  }],
  natGatewaySupport: 'natGatewaySupport',
  transitGatewayAttachmentId: 'transitGatewayAttachmentId',

  // the properties below are optional
  natSystemRouteSupport: 'natSystemRouteSupport',
};
python
# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_ec2 as ec2

cfn_transit_gateway_attachment_nat_configuration_props = ec2.CfnTransitGatewayAttachmentNatConfigurationProps(
    nat_gateway_rules=[ec2.CfnTransitGatewayAttachmentNatConfiguration.NatRuleProperty(
        match_source_cidr="matchSourceCidr",
        nat_cidr="natCidr",
        rule_number=123
    )],
    nat_gateway_support="natGatewaySupport",
    transit_gateway_attachment_id="transitGatewayAttachmentId",

    # the properties below are optional
    nat_system_route_support="natSystemRouteSupport"
)
java
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.ec2.*;

CfnTransitGatewayAttachmentNatConfigurationProps cfnTransitGatewayAttachmentNatConfigurationProps = CfnTransitGatewayAttachmentNatConfigurationProps.builder()
        .natGatewayRules(List.of(NatRuleProperty.builder()
                .matchSourceCidr("matchSourceCidr")
                .natCidr("natCidr")
                .ruleNumber(123)
                .build()))
        .natGatewaySupport("natGatewaySupport")
        .transitGatewayAttachmentId("transitGatewayAttachmentId")

        // the properties below are optional
        .natSystemRouteSupport("natSystemRouteSupport")
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.EC2;

var cfnTransitGatewayAttachmentNatConfigurationProps = new CfnTransitGatewayAttachmentNatConfigurationProps {
    NatGatewayRules = new [] { new NatRuleProperty {
        MatchSourceCidr = "matchSourceCidr",
        NatCidr = "natCidr",
        RuleNumber = 123
    } },
    NatGatewaySupport = "natGatewaySupport",
    TransitGatewayAttachmentId = "transitGatewayAttachmentId",

    // the properties below are optional
    NatSystemRouteSupport = "natSystemRouteSupport"
};
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnTransitGatewayAttachmentNatConfigurationProps := &CfnTransitGatewayAttachmentNatConfigurationProps{
	NatGatewayRules: []interface{}{
		&NatRuleProperty{
			MatchSourceCidr: jsii.String("matchSourceCidr"),
			NatCidr: jsii.String("natCidr"),
			RuleNumber: jsii.Number(123),
		},
	},
	NatGatewaySupport: jsii.String("natGatewaySupport"),
	TransitGatewayAttachmentId: jsii.String("transitGatewayAttachmentId"),

	// the properties below are optional
	NatSystemRouteSupport: jsii.String("natSystemRouteSupport"),
}

Properties ​

natGatewayRulesIResolvable | IResolvable | CfnTransitGatewayAttachmentNatConfiguration.NatRuleProperty[]nat_gateway_rulestyping.Union[IResolvable, typing.List[typing.Union[IResolvable, NatRuleProperty]]]natGatewayRulesIResolvableNatGatewayRulesIResolvableNatGatewayRulesinterface{}required#
The complete set of NAT rules for the attachment.

Updating this property replaces the entire rule set: rules omitted from the new value are removed.

natGatewaySupportstringnat_gateway_supportstrnatGatewaySupportStringNatGatewaySupportstringNatGatewaySupport*stringrequired#
Whether NAT gateway support is enabled on the attachment.

Set to disable to stage NAT rules without activating them; the rules are retained and become active when this is later set to enable.

natSystemRouteSupportoptionalstringnat_system_route_supportoptionalstrnatSystemRouteSupportoptionalStringNatSystemRouteSupportoptionalstringNatSystemRouteSupportoptional*string#
Whether routes for the NAT CIDRs are installed into the transit gateway route tables associated with the attachment.
notes

Whether this is configurable depends on the attachment; where the value is forced, supplying the opposite value is rejected. Omitting this property leaves the setting to the service: on a new configuration the service applies the attachment's default, but on an attachment where the value is configurable it keeps the value already in effect rather than reverting to that default. Removing this property from a template, or deleting this resource, therefore leaves the setting at its last value rather than restoring the default, and a resource later created on the same attachment without this property inherits that value.

transitGatewayAttachmentIdstringtransit_gateway_attachment_idstrtransitGatewayAttachmentIdStringTransitGatewayAttachmentIdstringTransitGatewayAttachmentId*stringrequired#
The ID of the transit gateway attachment to configure NAT on.