Class VpnConnectionArgs


  • public final class VpnConnectionArgs
    extends com.pulumi.resources.ResourceArgs
    • Method Detail

      • customerGatewayId

        public com.pulumi.core.Output<java.lang.String> customerGatewayId()
        Returns:
        The ID of the customer gateway.
      • enableAcceleration

        public java.util.Optional<com.pulumi.core.Output<java.lang.Boolean>> enableAcceleration()
        Returns:
        Indicate whether to enable acceleration for the VPN connection. Supports only EC2 Transit Gateway.
      • localIpv4NetworkCidr

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> localIpv4NetworkCidr()
        Returns:
        The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
      • localIpv6NetworkCidr

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> localIpv6NetworkCidr()
        Returns:
        The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
      • outsideIpAddressType

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> outsideIpAddressType()
        Returns:
        Indicates if a Public S2S VPN or Private S2S VPN over AWS Direct Connect. Valid values are `PublicIpv4 | PrivateIpv4`
      • remoteIpv4NetworkCidr

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> remoteIpv4NetworkCidr()
        Returns:
        The IPv4 CIDR on the AWS side of the VPN connection.
      • remoteIpv6NetworkCidr

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> remoteIpv6NetworkCidr()
        Returns:
        The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
      • staticRoutesOnly

        public java.util.Optional<com.pulumi.core.Output<java.lang.Boolean>> staticRoutesOnly()
        Returns:
        Whether the VPN connection uses static routes exclusively. Static routes must be used for devices that don't support BGP.
      • tags

        public java.util.Optional<com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>>> tags()
        Returns:
        Tags to apply to the connection. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
      • transitGatewayId

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> transitGatewayId()
        Returns:
        The ID of the EC2 Transit Gateway.
      • transportTransitGatewayAttachmentId

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> transportTransitGatewayAttachmentId()
        Returns:
        . The attachment ID of the Transit Gateway attachment to Direct Connect Gateway. The ID is obtained through a data source only.
      • tunnel1DpdTimeoutAction

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> tunnel1DpdTimeoutAction()
        Returns:
        The action to take after DPD timeout occurs for the first VPN tunnel. Specify restart to restart the IKE initiation. Specify clear to end the IKE session. Valid values are `clear | none | restart`.
      • tunnel1DpdTimeoutSeconds

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel1DpdTimeoutSeconds()
        Returns:
        The number of seconds after which a DPD timeout occurs for the first VPN tunnel. Valid value is equal or higher than `30`.
      • tunnel1EnableTunnelLifecycleControl

        public java.util.Optional<com.pulumi.core.Output<java.lang.Boolean>> tunnel1EnableTunnelLifecycleControl()
        Returns:
        Turn on or off tunnel endpoint lifecycle control feature for the first VPN tunnel. Valid values are `true | false`.
      • tunnel1IkeVersions

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> tunnel1IkeVersions()
        Returns:
        The IKE versions that are permitted for the first VPN tunnel. Valid values are `ikev1 | ikev2`.
      • tunnel1InsideCidr

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> tunnel1InsideCidr()
        Returns:
        The CIDR block of the inside IP addresses for the first VPN tunnel. Valid value is a size /30 CIDR block from the 169.254.0.0/16 range.
      • tunnel1InsideIpv6Cidr

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> tunnel1InsideIpv6Cidr()
        Returns:
        The range of inside IPv6 addresses for the first VPN tunnel. Supports only EC2 Transit Gateway. Valid value is a size /126 CIDR block from the local fd00::/8 range.
      • tunnel1LogOptions

        public java.util.Optional<com.pulumi.core.Output<VpnConnectionTunnel1LogOptionsArgs>> tunnel1LogOptions()
        Returns:
        Options for logging VPN tunnel activity. See Log Options below for more details.
      • tunnel1Phase1DhGroupNumbers

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.Integer>>> tunnel1Phase1DhGroupNumbers()
        Returns:
        List of one or more Diffie-Hellman group numbers that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are ` 2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 `.
      • tunnel1Phase1EncryptionAlgorithms

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> tunnel1Phase1EncryptionAlgorithms()
        Returns:
        List of one or more encryption algorithms that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
      • tunnel1Phase1IntegrityAlgorithms

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> tunnel1Phase1IntegrityAlgorithms()
        Returns:
        One or more integrity algorithms that are permitted for the first VPN tunnel for phase 1 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
      • tunnel1Phase1LifetimeSeconds

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel1Phase1LifetimeSeconds()
        Returns:
        The lifetime for phase 1 of the IKE negotiation for the first VPN tunnel, in seconds. Valid value is between `900` and `28800`.
      • tunnel1Phase2DhGroupNumbers

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.Integer>>> tunnel1Phase2DhGroupNumbers()
        Returns:
        List of one or more Diffie-Hellman group numbers that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24`.
      • tunnel1Phase2EncryptionAlgorithms

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> tunnel1Phase2EncryptionAlgorithms()
        Returns:
        List of one or more encryption algorithms that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
      • tunnel1Phase2IntegrityAlgorithms

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> tunnel1Phase2IntegrityAlgorithms()
        Returns:
        List of one or more integrity algorithms that are permitted for the first VPN tunnel for phase 2 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
      • tunnel1Phase2LifetimeSeconds

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel1Phase2LifetimeSeconds()
        Returns:
        The lifetime for phase 2 of the IKE negotiation for the first VPN tunnel, in seconds. Valid value is between `900` and `3600`.
      • tunnel1PresharedKey

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> tunnel1PresharedKey()
        Returns:
        The preshared key of the first VPN tunnel. The preshared key must be between 8 and 64 characters in length and cannot start with zero(0). Allowed characters are alphanumeric characters, periods(.) and underscores(_).
      • tunnel1RekeyFuzzPercentage

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel1RekeyFuzzPercentage()
        Returns:
        The percentage of the rekey window for the first VPN tunnel (determined by `tunnel1_rekey_margin_time_seconds`) during which the rekey time is randomly selected. Valid value is between `0` and `100`.
      • tunnel1RekeyMarginTimeSeconds

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel1RekeyMarginTimeSeconds()
        Returns:
        The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the first VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for `tunnel1_rekey_fuzz_percentage`. Valid value is between `60` and half of `tunnel1_phase2_lifetime_seconds`.
      • tunnel1ReplayWindowSize

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel1ReplayWindowSize()
        Returns:
        The number of packets in an IKE replay window for the first VPN tunnel. Valid value is between `64` and `2048`.
      • tunnel1StartupAction

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> tunnel1StartupAction()
        Returns:
        The action to take when the establishing the tunnel for the first VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start for AWS to initiate the IKE negotiation. Valid values are `add | start`.
      • tunnel2DpdTimeoutAction

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> tunnel2DpdTimeoutAction()
        Returns:
        The action to take after DPD timeout occurs for the second VPN tunnel. Specify restart to restart the IKE initiation. Specify clear to end the IKE session. Valid values are `clear | none | restart`.
      • tunnel2DpdTimeoutSeconds

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel2DpdTimeoutSeconds()
        Returns:
        The number of seconds after which a DPD timeout occurs for the second VPN tunnel. Valid value is equal or higher than `30`.
      • tunnel2EnableTunnelLifecycleControl

        public java.util.Optional<com.pulumi.core.Output<java.lang.Boolean>> tunnel2EnableTunnelLifecycleControl()
        Returns:
        Turn on or off tunnel endpoint lifecycle control feature for the second VPN tunnel. Valid values are `true | false`.
      • tunnel2IkeVersions

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> tunnel2IkeVersions()
        Returns:
        The IKE versions that are permitted for the second VPN tunnel. Valid values are `ikev1 | ikev2`.
      • tunnel2InsideCidr

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> tunnel2InsideCidr()
        Returns:
        The CIDR block of the inside IP addresses for the second VPN tunnel. Valid value is a size /30 CIDR block from the 169.254.0.0/16 range.
      • tunnel2InsideIpv6Cidr

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> tunnel2InsideIpv6Cidr()
        Returns:
        The range of inside IPv6 addresses for the second VPN tunnel. Supports only EC2 Transit Gateway. Valid value is a size /126 CIDR block from the local fd00::/8 range.
      • tunnel2LogOptions

        public java.util.Optional<com.pulumi.core.Output<VpnConnectionTunnel2LogOptionsArgs>> tunnel2LogOptions()
        Returns:
        Options for logging VPN tunnel activity. See Log Options below for more details.
      • tunnel2Phase1DhGroupNumbers

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.Integer>>> tunnel2Phase1DhGroupNumbers()
        Returns:
        List of one or more Diffie-Hellman group numbers that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are ` 2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 `.
      • tunnel2Phase1EncryptionAlgorithms

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> tunnel2Phase1EncryptionAlgorithms()
        Returns:
        List of one or more encryption algorithms that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
      • tunnel2Phase1IntegrityAlgorithms

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> tunnel2Phase1IntegrityAlgorithms()
        Returns:
        One or more integrity algorithms that are permitted for the second VPN tunnel for phase 1 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
      • tunnel2Phase1LifetimeSeconds

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel2Phase1LifetimeSeconds()
        Returns:
        The lifetime for phase 1 of the IKE negotiation for the second VPN tunnel, in seconds. Valid value is between `900` and `28800`.
      • tunnel2Phase2DhGroupNumbers

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.Integer>>> tunnel2Phase2DhGroupNumbers()
        Returns:
        List of one or more Diffie-Hellman group numbers that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24`.
      • tunnel2Phase2EncryptionAlgorithms

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> tunnel2Phase2EncryptionAlgorithms()
        Returns:
        List of one or more encryption algorithms that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16`.
      • tunnel2Phase2IntegrityAlgorithms

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> tunnel2Phase2IntegrityAlgorithms()
        Returns:
        List of one or more integrity algorithms that are permitted for the second VPN tunnel for phase 2 IKE negotiations. Valid values are `SHA1 | SHA2-256 | SHA2-384 | SHA2-512`.
      • tunnel2Phase2LifetimeSeconds

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel2Phase2LifetimeSeconds()
        Returns:
        The lifetime for phase 2 of the IKE negotiation for the second VPN tunnel, in seconds. Valid value is between `900` and `3600`.
      • tunnel2PresharedKey

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> tunnel2PresharedKey()
        Returns:
        The preshared key of the second VPN tunnel. The preshared key must be between 8 and 64 characters in length and cannot start with zero(0). Allowed characters are alphanumeric characters, periods(.) and underscores(_).
      • tunnel2RekeyFuzzPercentage

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel2RekeyFuzzPercentage()
        Returns:
        The percentage of the rekey window for the second VPN tunnel (determined by `tunnel2_rekey_margin_time_seconds`) during which the rekey time is randomly selected. Valid value is between `0` and `100`.
      • tunnel2RekeyMarginTimeSeconds

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel2RekeyMarginTimeSeconds()
        Returns:
        The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the second VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for `tunnel2_rekey_fuzz_percentage`. Valid value is between `60` and half of `tunnel2_phase2_lifetime_seconds`.
      • tunnel2ReplayWindowSize

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> tunnel2ReplayWindowSize()
        Returns:
        The number of packets in an IKE replay window for the second VPN tunnel. Valid value is between `64` and `2048`.
      • tunnel2StartupAction

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> tunnel2StartupAction()
        Returns:
        The action to take when the establishing the tunnel for the second VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start for AWS to initiate the IKE negotiation. Valid values are `add | start`.
      • tunnelInsideIpVersion

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> tunnelInsideIpVersion()
        Returns:
        Indicate whether the VPN tunnels process IPv4 or IPv6 traffic. Valid values are `ipv4 | ipv6`. `ipv6` Supports only EC2 Transit Gateway.
      • type

        public com.pulumi.core.Output<java.lang.String> type()
        Returns:
        The type of VPN connection. The only type AWS supports at this time is "ipsec.1".
      • vpnGatewayId

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> vpnGatewayId()
        Returns:
        The ID of the Virtual Private Gateway.