Class EndpointState.Builder

  • Enclosing class:
    EndpointState

    public static final class EndpointState.Builder
    extends java.lang.Object
    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • arn

        public EndpointState.Builder arn​(@Nullable
                                         com.pulumi.core.Output<java.lang.String> arn)
        Parameters:
        arn - The ARN of the Client VPN endpoint.
        Returns:
        builder
      • arn

        public EndpointState.Builder arn​(java.lang.String arn)
        Parameters:
        arn - The ARN of the Client VPN endpoint.
        Returns:
        builder
      • authenticationOptions

        public EndpointState.Builder authenticationOptions​(@Nullable
                                                           com.pulumi.core.Output<java.util.List<EndpointAuthenticationOptionArgs>> authenticationOptions)
        Parameters:
        authenticationOptions - Information about the authentication method to be used to authenticate clients. See `authenticationOptions` Block Reference below for details.
        Returns:
        builder
      • authenticationOptions

        public EndpointState.Builder authenticationOptions​(java.util.List<EndpointAuthenticationOptionArgs> authenticationOptions)
        Parameters:
        authenticationOptions - Information about the authentication method to be used to authenticate clients. See `authenticationOptions` Block Reference below for details.
        Returns:
        builder
      • authenticationOptions

        public EndpointState.Builder authenticationOptions​(EndpointAuthenticationOptionArgs... authenticationOptions)
        Parameters:
        authenticationOptions - Information about the authentication method to be used to authenticate clients. See `authenticationOptions` Block Reference below for details.
        Returns:
        builder
      • clientCidrBlock

        public EndpointState.Builder clientCidrBlock​(@Nullable
                                                     com.pulumi.core.Output<java.lang.String> clientCidrBlock)
        Parameters:
        clientCidrBlock - The IPv4 address range, in CIDR notation, from which to assign client IP addresses. The address range cannot overlap with the local CIDR of the VPC in which the associated subnet is located, or the routes that you add manually. The address range cannot be changed after the Client VPN endpoint has been created. The CIDR block should be /22 or greater. When `trafficIpAddressType` is set to `ipv6`, it must not be specified. Otherwise, it is required.
        Returns:
        builder
      • clientCidrBlock

        public EndpointState.Builder clientCidrBlock​(java.lang.String clientCidrBlock)
        Parameters:
        clientCidrBlock - The IPv4 address range, in CIDR notation, from which to assign client IP addresses. The address range cannot overlap with the local CIDR of the VPC in which the associated subnet is located, or the routes that you add manually. The address range cannot be changed after the Client VPN endpoint has been created. The CIDR block should be /22 or greater. When `trafficIpAddressType` is set to `ipv6`, it must not be specified. Otherwise, it is required.
        Returns:
        builder
      • clientConnectOptions

        public EndpointState.Builder clientConnectOptions​(@Nullable
                                                          com.pulumi.core.Output<EndpointClientConnectOptionsArgs> clientConnectOptions)
        Parameters:
        clientConnectOptions - The options for managing connection authorization for new client connections. See `clientConnectOptions` Block Reference below for details.
        Returns:
        builder
      • clientConnectOptions

        public EndpointState.Builder clientConnectOptions​(EndpointClientConnectOptionsArgs clientConnectOptions)
        Parameters:
        clientConnectOptions - The options for managing connection authorization for new client connections. See `clientConnectOptions` Block Reference below for details.
        Returns:
        builder
      • clientLoginBannerOptions

        public EndpointState.Builder clientLoginBannerOptions​(@Nullable
                                                              com.pulumi.core.Output<EndpointClientLoginBannerOptionsArgs> clientLoginBannerOptions)
        Parameters:
        clientLoginBannerOptions - Options for enabling a customizable text banner that will be displayed on AWS provided clients when a VPN session is established. See `clientLoginBannerOptions` Block Reference below for details.
        Returns:
        builder
      • clientLoginBannerOptions

        public EndpointState.Builder clientLoginBannerOptions​(EndpointClientLoginBannerOptionsArgs clientLoginBannerOptions)
        Parameters:
        clientLoginBannerOptions - Options for enabling a customizable text banner that will be displayed on AWS provided clients when a VPN session is established. See `clientLoginBannerOptions` Block Reference below for details.
        Returns:
        builder
      • clientRouteEnforcementOptions

        public EndpointState.Builder clientRouteEnforcementOptions​(@Nullable
                                                                   com.pulumi.core.Output<EndpointClientRouteEnforcementOptionsArgs> clientRouteEnforcementOptions)
        Parameters:
        clientRouteEnforcementOptions - Options for enforce administrator defined routes on devices connected through the VPN. See `clientRouteEnforcementOptions` Block Reference below for details.
        Returns:
        builder
      • clientRouteEnforcementOptions

        public EndpointState.Builder clientRouteEnforcementOptions​(EndpointClientRouteEnforcementOptionsArgs clientRouteEnforcementOptions)
        Parameters:
        clientRouteEnforcementOptions - Options for enforce administrator defined routes on devices connected through the VPN. See `clientRouteEnforcementOptions` Block Reference below for details.
        Returns:
        builder
      • connectionLogOptions

        public EndpointState.Builder connectionLogOptions​(@Nullable
                                                          com.pulumi.core.Output<EndpointConnectionLogOptionsArgs> connectionLogOptions)
        Parameters:
        connectionLogOptions - Information about the client connection logging options. See `connectionLogOptions` Block Reference below for details.
        Returns:
        builder
      • connectionLogOptions

        public EndpointState.Builder connectionLogOptions​(EndpointConnectionLogOptionsArgs connectionLogOptions)
        Parameters:
        connectionLogOptions - Information about the client connection logging options. See `connectionLogOptions` Block Reference below for details.
        Returns:
        builder
      • description

        public EndpointState.Builder description​(@Nullable
                                                 com.pulumi.core.Output<java.lang.String> description)
        Parameters:
        description - A brief description of the Client VPN endpoint.
        Returns:
        builder
      • description

        public EndpointState.Builder description​(java.lang.String description)
        Parameters:
        description - A brief description of the Client VPN endpoint.
        Returns:
        builder
      • disconnectOnSessionTimeout

        public EndpointState.Builder disconnectOnSessionTimeout​(@Nullable
                                                                com.pulumi.core.Output<java.lang.Boolean> disconnectOnSessionTimeout)
        Parameters:
        disconnectOnSessionTimeout - Indicates whether the client VPN session is disconnected after the maximum `sessionTimeoutHours` is reached. If `true`, users are prompted to reconnect client VPN. If `false`, client VPN attempts to reconnect automatically. The default value is `false`.
        Returns:
        builder
      • disconnectOnSessionTimeout

        public EndpointState.Builder disconnectOnSessionTimeout​(java.lang.Boolean disconnectOnSessionTimeout)
        Parameters:
        disconnectOnSessionTimeout - Indicates whether the client VPN session is disconnected after the maximum `sessionTimeoutHours` is reached. If `true`, users are prompted to reconnect client VPN. If `false`, client VPN attempts to reconnect automatically. The default value is `false`.
        Returns:
        builder
      • dnsName

        public EndpointState.Builder dnsName​(@Nullable
                                             com.pulumi.core.Output<java.lang.String> dnsName)
        Parameters:
        dnsName - The DNS name to be used by clients when establishing their VPN session.
        Returns:
        builder
      • dnsName

        public EndpointState.Builder dnsName​(java.lang.String dnsName)
        Parameters:
        dnsName - The DNS name to be used by clients when establishing their VPN session.
        Returns:
        builder
      • dnsServers

        public EndpointState.Builder dnsServers​(@Nullable
                                                com.pulumi.core.Output<java.util.List<java.lang.String>> dnsServers)
        Parameters:
        dnsServers - Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can have up to two DNS servers. If no DNS server is specified, the DNS address of the connecting device is used.
        Returns:
        builder
      • dnsServers

        public EndpointState.Builder dnsServers​(java.util.List<java.lang.String> dnsServers)
        Parameters:
        dnsServers - Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can have up to two DNS servers. If no DNS server is specified, the DNS address of the connecting device is used.
        Returns:
        builder
      • dnsServers

        public EndpointState.Builder dnsServers​(java.lang.String... dnsServers)
        Parameters:
        dnsServers - Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can have up to two DNS servers. If no DNS server is specified, the DNS address of the connecting device is used.
        Returns:
        builder
      • endpointIpAddressType

        public EndpointState.Builder endpointIpAddressType​(@Nullable
                                                           com.pulumi.core.Output<java.lang.String> endpointIpAddressType)
        Parameters:
        endpointIpAddressType - IP address type for the Client VPN endpoint. Valid values are `ipv4`, `ipv6`, or `dual-stack`. Defaults to `ipv4`.
        Returns:
        builder
      • endpointIpAddressType

        public EndpointState.Builder endpointIpAddressType​(java.lang.String endpointIpAddressType)
        Parameters:
        endpointIpAddressType - IP address type for the Client VPN endpoint. Valid values are `ipv4`, `ipv6`, or `dual-stack`. Defaults to `ipv4`.
        Returns:
        builder
      • region

        public EndpointState.Builder region​(@Nullable
                                            com.pulumi.core.Output<java.lang.String> region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder
      • region

        public EndpointState.Builder region​(java.lang.String region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder
      • securityGroupIds

        public EndpointState.Builder securityGroupIds​(@Nullable
                                                      com.pulumi.core.Output<java.util.List<java.lang.String>> securityGroupIds)
        Parameters:
        securityGroupIds - The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups. Conflicts with `transitGatewayConfiguration`.
        Returns:
        builder
      • securityGroupIds

        public EndpointState.Builder securityGroupIds​(java.util.List<java.lang.String> securityGroupIds)
        Parameters:
        securityGroupIds - The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups. Conflicts with `transitGatewayConfiguration`.
        Returns:
        builder
      • securityGroupIds

        public EndpointState.Builder securityGroupIds​(java.lang.String... securityGroupIds)
        Parameters:
        securityGroupIds - The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups. Conflicts with `transitGatewayConfiguration`.
        Returns:
        builder
      • selfServicePortal

        public EndpointState.Builder selfServicePortal​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> selfServicePortal)
        Parameters:
        selfServicePortal - Specify whether to enable the self-service portal for the Client VPN endpoint. Values can be `enabled` or `disabled`. Default value is `disabled`.
        Returns:
        builder
      • selfServicePortal

        public EndpointState.Builder selfServicePortal​(java.lang.String selfServicePortal)
        Parameters:
        selfServicePortal - Specify whether to enable the self-service portal for the Client VPN endpoint. Values can be `enabled` or `disabled`. Default value is `disabled`.
        Returns:
        builder
      • selfServicePortalUrl

        public EndpointState.Builder selfServicePortalUrl​(@Nullable
                                                          com.pulumi.core.Output<java.lang.String> selfServicePortalUrl)
        Parameters:
        selfServicePortalUrl - The URL of the self-service portal.
        Returns:
        builder
      • selfServicePortalUrl

        public EndpointState.Builder selfServicePortalUrl​(java.lang.String selfServicePortalUrl)
        Parameters:
        selfServicePortalUrl - The URL of the self-service portal.
        Returns:
        builder
      • serverCertificateArn

        public EndpointState.Builder serverCertificateArn​(@Nullable
                                                          com.pulumi.core.Output<java.lang.String> serverCertificateArn)
        Parameters:
        serverCertificateArn - The ARN of the ACM server certificate.
        Returns:
        builder
      • serverCertificateArn

        public EndpointState.Builder serverCertificateArn​(java.lang.String serverCertificateArn)
        Parameters:
        serverCertificateArn - The ARN of the ACM server certificate.
        Returns:
        builder
      • sessionTimeoutHours

        public EndpointState.Builder sessionTimeoutHours​(@Nullable
                                                         com.pulumi.core.Output<java.lang.Integer> sessionTimeoutHours)
        Parameters:
        sessionTimeoutHours - The maximum session duration is a trigger by which end-users are required to re-authenticate prior to establishing a VPN session. Default value is `24` - Valid values: `8 | 10 | 12 | 24`
        Returns:
        builder
      • sessionTimeoutHours

        public EndpointState.Builder sessionTimeoutHours​(java.lang.Integer sessionTimeoutHours)
        Parameters:
        sessionTimeoutHours - The maximum session duration is a trigger by which end-users are required to re-authenticate prior to establishing a VPN session. Default value is `24` - Valid values: `8 | 10 | 12 | 24`
        Returns:
        builder
      • splitTunnel

        public EndpointState.Builder splitTunnel​(@Nullable
                                                 com.pulumi.core.Output<java.lang.Boolean> splitTunnel)
        Parameters:
        splitTunnel - Indicates whether split-tunnel is enabled on VPN endpoint. Default value is `false`.
        Returns:
        builder
      • splitTunnel

        public EndpointState.Builder splitTunnel​(java.lang.Boolean splitTunnel)
        Parameters:
        splitTunnel - Indicates whether split-tunnel is enabled on VPN endpoint. Default value is `false`.
        Returns:
        builder
      • tags

        public EndpointState.Builder tags​(@Nullable
                                          com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tags)
        Parameters:
        tags - A mapping of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • tags

        public EndpointState.Builder tags​(java.util.Map<java.lang.String,​java.lang.String> tags)
        Parameters:
        tags - A mapping of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • tagsAll

        public EndpointState.Builder tagsAll​(@Nullable
                                             com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll)
        Parameters:
        tagsAll - A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • tagsAll

        public EndpointState.Builder tagsAll​(java.util.Map<java.lang.String,​java.lang.String> tagsAll)
        Parameters:
        tagsAll - A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • trafficIpAddressType

        public EndpointState.Builder trafficIpAddressType​(@Nullable
                                                          com.pulumi.core.Output<java.lang.String> trafficIpAddressType)
        Parameters:
        trafficIpAddressType - IP address type for traffic within the Client VPN tunnel. Valid values are `ipv4`, `ipv6`, or `dual-stack`. Defaults to `ipv4`. When it is set to `ipv6`, `clientCidrBlock` must not be specified.
        Returns:
        builder
      • trafficIpAddressType

        public EndpointState.Builder trafficIpAddressType​(java.lang.String trafficIpAddressType)
        Parameters:
        trafficIpAddressType - IP address type for traffic within the Client VPN tunnel. Valid values are `ipv4`, `ipv6`, or `dual-stack`. Defaults to `ipv4`. When it is set to `ipv6`, `clientCidrBlock` must not be specified.
        Returns:
        builder
      • transitGatewayConfiguration

        public EndpointState.Builder transitGatewayConfiguration​(@Nullable
                                                                 com.pulumi.core.Output<EndpointTransitGatewayConfigurationArgs> transitGatewayConfiguration)
        Parameters:
        transitGatewayConfiguration - Configuration block for associating the Client VPN endpoint with a Transit Gateway. Conflicts with `vpcId` and `securityGroupIds`. See `transitGatewayConfiguration` Block Reference below for details.
        Returns:
        builder
      • transitGatewayConfiguration

        public EndpointState.Builder transitGatewayConfiguration​(EndpointTransitGatewayConfigurationArgs transitGatewayConfiguration)
        Parameters:
        transitGatewayConfiguration - Configuration block for associating the Client VPN endpoint with a Transit Gateway. Conflicts with `vpcId` and `securityGroupIds`. See `transitGatewayConfiguration` Block Reference below for details.
        Returns:
        builder
      • transportProtocol

        public EndpointState.Builder transportProtocol​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> transportProtocol)
        Parameters:
        transportProtocol - The transport protocol to be used by the VPN session. Default value is `udp`.
        Returns:
        builder
      • transportProtocol

        public EndpointState.Builder transportProtocol​(java.lang.String transportProtocol)
        Parameters:
        transportProtocol - The transport protocol to be used by the VPN session. Default value is `udp`.
        Returns:
        builder
      • vpcId

        public EndpointState.Builder vpcId​(@Nullable
                                           com.pulumi.core.Output<java.lang.String> vpcId)
        Parameters:
        vpcId - The ID of the VPC to associate with the Client VPN endpoint. If no security group IDs are specified in the request, the default security group for the VPC is applied. Conflicts with `transitGatewayConfiguration`.
        Returns:
        builder
      • vpcId

        public EndpointState.Builder vpcId​(java.lang.String vpcId)
        Parameters:
        vpcId - The ID of the VPC to associate with the Client VPN endpoint. If no security group IDs are specified in the request, the default security group for the VPC is applied. Conflicts with `transitGatewayConfiguration`.
        Returns:
        builder
      • vpnPort

        public EndpointState.Builder vpnPort​(@Nullable
                                             com.pulumi.core.Output<java.lang.Integer> vpnPort)
        Parameters:
        vpnPort - The port number for the Client VPN endpoint. Valid values are `443` and `1194`. Default value is `443`.
        Returns:
        builder
      • vpnPort

        public EndpointState.Builder vpnPort​(java.lang.Integer vpnPort)
        Parameters:
        vpnPort - The port number for the Client VPN endpoint. Valid values are `443` and `1194`. Default value is `443`.
        Returns:
        builder