Class CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<CfnVPNConnection.VpnTunnelOptionsSpecificationProperty>
- Enclosing interface:
CfnVPNConnection.VpnTunnelOptionsSpecificationProperty
CfnVPNConnection.VpnTunnelOptionsSpecificationProperty
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionbuild()
Builds the configured instance.dpdTimeoutAction
(String dpdTimeoutAction) dpdTimeoutSeconds
(Number dpdTimeoutSeconds) enableTunnelLifecycleControl
(Boolean enableTunnelLifecycleControl) enableTunnelLifecycleControl
(IResolvable enableTunnelLifecycleControl) ikeVersions
(List<? extends Object> ikeVersions) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getIkeVersions()
ikeVersions
(IResolvable ikeVersions) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getIkeVersions()
logOptions
(IResolvable logOptions) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getLogOptions()
Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getLogOptions()
phase1DhGroupNumbers
(List<? extends Object> phase1DhGroupNumbers) phase1DhGroupNumbers
(IResolvable phase1DhGroupNumbers) phase1EncryptionAlgorithms
(List<? extends Object> phase1EncryptionAlgorithms) phase1EncryptionAlgorithms
(IResolvable phase1EncryptionAlgorithms) phase1IntegrityAlgorithms
(List<? extends Object> phase1IntegrityAlgorithms) phase1IntegrityAlgorithms
(IResolvable phase1IntegrityAlgorithms) phase1LifetimeSeconds
(Number phase1LifetimeSeconds) phase2DhGroupNumbers
(List<? extends Object> phase2DhGroupNumbers) phase2DhGroupNumbers
(IResolvable phase2DhGroupNumbers) phase2EncryptionAlgorithms
(List<? extends Object> phase2EncryptionAlgorithms) phase2EncryptionAlgorithms
(IResolvable phase2EncryptionAlgorithms) phase2IntegrityAlgorithms
(List<? extends Object> phase2IntegrityAlgorithms) phase2IntegrityAlgorithms
(IResolvable phase2IntegrityAlgorithms) phase2LifetimeSeconds
(Number phase2LifetimeSeconds) preSharedKey
(String preSharedKey) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getPreSharedKey()
rekeyFuzzPercentage
(Number rekeyFuzzPercentage) rekeyMarginTimeSeconds
(Number rekeyMarginTimeSeconds) replayWindowSize
(Number replayWindowSize) startupAction
(String startupAction) tunnelInsideCidr
(String tunnelInsideCidr) tunnelInsideIpv6Cidr
(String tunnelInsideIpv6Cidr)
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
dpdTimeoutAction
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder dpdTimeoutAction(String dpdTimeoutAction) - Parameters:
dpdTimeoutAction
- The action to take after DPD timeout occurs. Specifyrestart
to restart the IKE initiation. Specifyclear
to end the IKE session.Valid Values:
clear
|none
|restart
Default:
clear
- Returns:
this
-
dpdTimeoutSeconds
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder dpdTimeoutSeconds(Number dpdTimeoutSeconds) - Parameters:
dpdTimeoutSeconds
- The number of seconds after which a DPD timeout occurs. Constraints: A value greater than or equal to 30.Default:
30
- Returns:
this
-
enableTunnelLifecycleControl
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder enableTunnelLifecycleControl(Boolean enableTunnelLifecycleControl) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getEnableTunnelLifecycleControl()
- Parameters:
enableTunnelLifecycleControl
- Turn on or off tunnel endpoint lifecycle control feature.- Returns:
this
-
enableTunnelLifecycleControl
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder enableTunnelLifecycleControl(IResolvable enableTunnelLifecycleControl) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getEnableTunnelLifecycleControl()
- Parameters:
enableTunnelLifecycleControl
- Turn on or off tunnel endpoint lifecycle control feature.- Returns:
this
-
ikeVersions
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder ikeVersions(IResolvable ikeVersions) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getIkeVersions()
- Parameters:
ikeVersions
- The IKE versions that are permitted for the VPN tunnel. Valid values:ikev1
|ikev2
- Returns:
this
-
ikeVersions
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder ikeVersions(List<? extends Object> ikeVersions) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getIkeVersions()
- Parameters:
ikeVersions
- The IKE versions that are permitted for the VPN tunnel. Valid values:ikev1
|ikev2
- Returns:
this
-
logOptions
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder logOptions(IResolvable logOptions) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getLogOptions()
- Parameters:
logOptions
- Options for logging VPN tunnel activity.- Returns:
this
-
logOptions
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder logOptions(CfnVPNConnection.VpnTunnelLogOptionsSpecificationProperty logOptions) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getLogOptions()
- Parameters:
logOptions
- Options for logging VPN tunnel activity.- Returns:
this
-
phase1DhGroupNumbers
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase1DhGroupNumbers(IResolvable phase1DhGroupNumbers) - Parameters:
phase1DhGroupNumbers
- One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values:2
|14
|15
|16
|17
|18
|19
|20
|21
|22
|23
|24
- Returns:
this
-
phase1DhGroupNumbers
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase1DhGroupNumbers(List<? extends Object> phase1DhGroupNumbers) - Parameters:
phase1DhGroupNumbers
- One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values:2
|14
|15
|16
|17
|18
|19
|20
|21
|22
|23
|24
- Returns:
this
-
phase1EncryptionAlgorithms
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase1EncryptionAlgorithms(IResolvable phase1EncryptionAlgorithms) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getPhase1EncryptionAlgorithms()
- Parameters:
phase1EncryptionAlgorithms
- One or more encryption algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values:AES128
|AES256
|AES128-GCM-16
|AES256-GCM-16
- Returns:
this
-
phase1EncryptionAlgorithms
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase1EncryptionAlgorithms(List<? extends Object> phase1EncryptionAlgorithms) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getPhase1EncryptionAlgorithms()
- Parameters:
phase1EncryptionAlgorithms
- One or more encryption algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values:AES128
|AES256
|AES128-GCM-16
|AES256-GCM-16
- Returns:
this
-
phase1IntegrityAlgorithms
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase1IntegrityAlgorithms(IResolvable phase1IntegrityAlgorithms) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getPhase1IntegrityAlgorithms()
- Parameters:
phase1IntegrityAlgorithms
- One or more integrity algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values:SHA1
|SHA2-256
|SHA2-384
|SHA2-512
- Returns:
this
-
phase1IntegrityAlgorithms
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase1IntegrityAlgorithms(List<? extends Object> phase1IntegrityAlgorithms) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getPhase1IntegrityAlgorithms()
- Parameters:
phase1IntegrityAlgorithms
- One or more integrity algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values:SHA1
|SHA2-256
|SHA2-384
|SHA2-512
- Returns:
this
-
phase1LifetimeSeconds
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase1LifetimeSeconds(Number phase1LifetimeSeconds) - Parameters:
phase1LifetimeSeconds
- The lifetime for phase 1 of the IKE negotiation, in seconds. Constraints: A value between 900 and 28,800.Default:
28800
- Returns:
this
-
phase2DhGroupNumbers
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase2DhGroupNumbers(IResolvable phase2DhGroupNumbers) - Parameters:
phase2DhGroupNumbers
- One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values:2
|5
|14
|15
|16
|17
|18
|19
|20
|21
|22
|23
|24
- Returns:
this
-
phase2DhGroupNumbers
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase2DhGroupNumbers(List<? extends Object> phase2DhGroupNumbers) - Parameters:
phase2DhGroupNumbers
- One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values:2
|5
|14
|15
|16
|17
|18
|19
|20
|21
|22
|23
|24
- Returns:
this
-
phase2EncryptionAlgorithms
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase2EncryptionAlgorithms(IResolvable phase2EncryptionAlgorithms) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getPhase2EncryptionAlgorithms()
- Parameters:
phase2EncryptionAlgorithms
- One or more encryption algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values:AES128
|AES256
|AES128-GCM-16
|AES256-GCM-16
- Returns:
this
-
phase2EncryptionAlgorithms
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase2EncryptionAlgorithms(List<? extends Object> phase2EncryptionAlgorithms) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getPhase2EncryptionAlgorithms()
- Parameters:
phase2EncryptionAlgorithms
- One or more encryption algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values:AES128
|AES256
|AES128-GCM-16
|AES256-GCM-16
- Returns:
this
-
phase2IntegrityAlgorithms
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase2IntegrityAlgorithms(IResolvable phase2IntegrityAlgorithms) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getPhase2IntegrityAlgorithms()
- Parameters:
phase2IntegrityAlgorithms
- One or more integrity algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values:SHA1
|SHA2-256
|SHA2-384
|SHA2-512
- Returns:
this
-
phase2IntegrityAlgorithms
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase2IntegrityAlgorithms(List<? extends Object> phase2IntegrityAlgorithms) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getPhase2IntegrityAlgorithms()
- Parameters:
phase2IntegrityAlgorithms
- One or more integrity algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values:SHA1
|SHA2-256
|SHA2-384
|SHA2-512
- Returns:
this
-
phase2LifetimeSeconds
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder phase2LifetimeSeconds(Number phase2LifetimeSeconds) - Parameters:
phase2LifetimeSeconds
- The lifetime for phase 2 of the IKE negotiation, in seconds. Constraints: A value between 900 and 3,600. The value must be less than the value forPhase1LifetimeSeconds
.Default:
3600
- Returns:
this
-
rekeyFuzzPercentage
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder rekeyFuzzPercentage(Number rekeyFuzzPercentage) - Parameters:
rekeyFuzzPercentage
- The percentage of the rekey window (determined byRekeyMarginTimeSeconds
) during which the rekey time is randomly selected. Constraints: A value between 0 and 100.Default:
100
- Returns:
this
-
rekeyMarginTimeSeconds
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder rekeyMarginTimeSeconds(Number rekeyMarginTimeSeconds) Sets the value ofCfnVPNConnection.VpnTunnelOptionsSpecificationProperty.getRekeyMarginTimeSeconds()
- Parameters:
rekeyMarginTimeSeconds
- The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value forRekeyFuzzPercentage
.Constraints: A value between 60 and half of
Phase2LifetimeSeconds
.Default:
270
- Returns:
this
-
replayWindowSize
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder replayWindowSize(Number replayWindowSize) - Parameters:
replayWindowSize
- The number of packets in an IKE replay window. Constraints: A value between 64 and 2048.Default:
1024
- Returns:
this
-
startupAction
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder startupAction(String startupAction) - Parameters:
startupAction
- The action to take when the establishing the tunnel for the VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specifystart
for AWS to initiate the IKE negotiation.Valid Values:
add
|start
Default:
add
- Returns:
this
-
tunnelInsideCidr
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder tunnelInsideCidr(String tunnelInsideCidr) - Parameters:
tunnelInsideCidr
- The range of inside IP addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same virtual private gateway.Constraints: A size /30 CIDR block from the
169.254.0.0/16
range. The following CIDR blocks are reserved and cannot be used:169.254.0.0/30
169.254.1.0/30
169.254.2.0/30
169.254.3.0/30
169.254.4.0/30
169.254.5.0/30
169.254.169.252/30
- Returns:
this
-
tunnelInsideIpv6Cidr
@Stability(Stable) public CfnVPNConnection.VpnTunnelOptionsSpecificationProperty.Builder tunnelInsideIpv6Cidr(String tunnelInsideIpv6Cidr) - Parameters:
tunnelInsideIpv6Cidr
- The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same transit gateway.Constraints: A size /126 CIDR block from the local
fd00::/8
range.- Returns:
this
-
build
Builds the configured instance.- Specified by:
build
in interfacesoftware.amazon.jsii.Builder<CfnVPNConnection.VpnTunnelOptionsSpecificationProperty>
- Returns:
- a new instance of
CfnVPNConnection.VpnTunnelOptionsSpecificationProperty
- Throws:
NullPointerException
- if any required attribute was not provided
-