Package com.pulumi.aws.ec2clientvpn
Class EndpointArgs.Builder
- java.lang.Object
-
- com.pulumi.aws.ec2clientvpn.EndpointArgs.Builder
-
- Enclosing class:
- EndpointArgs
public static final class EndpointArgs.Builder extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Builder()Builder(EndpointArgs defaults)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description EndpointArgs.BuilderauthenticationOptions(EndpointAuthenticationOptionArgs... authenticationOptions)EndpointArgs.BuilderauthenticationOptions(com.pulumi.core.Output<java.util.List<EndpointAuthenticationOptionArgs>> authenticationOptions)EndpointArgs.BuilderauthenticationOptions(java.util.List<EndpointAuthenticationOptionArgs> authenticationOptions)EndpointArgsbuild()EndpointArgs.BuilderclientCidrBlock(com.pulumi.core.Output<java.lang.String> clientCidrBlock)EndpointArgs.BuilderclientCidrBlock(java.lang.String clientCidrBlock)EndpointArgs.BuilderclientConnectOptions(EndpointClientConnectOptionsArgs clientConnectOptions)EndpointArgs.BuilderclientConnectOptions(com.pulumi.core.Output<EndpointClientConnectOptionsArgs> clientConnectOptions)EndpointArgs.BuilderclientLoginBannerOptions(EndpointClientLoginBannerOptionsArgs clientLoginBannerOptions)EndpointArgs.BuilderclientLoginBannerOptions(com.pulumi.core.Output<EndpointClientLoginBannerOptionsArgs> clientLoginBannerOptions)EndpointArgs.BuilderclientRouteEnforcementOptions(EndpointClientRouteEnforcementOptionsArgs clientRouteEnforcementOptions)EndpointArgs.BuilderclientRouteEnforcementOptions(com.pulumi.core.Output<EndpointClientRouteEnforcementOptionsArgs> clientRouteEnforcementOptions)EndpointArgs.BuilderconnectionLogOptions(EndpointConnectionLogOptionsArgs connectionLogOptions)EndpointArgs.BuilderconnectionLogOptions(com.pulumi.core.Output<EndpointConnectionLogOptionsArgs> connectionLogOptions)EndpointArgs.Builderdescription(com.pulumi.core.Output<java.lang.String> description)EndpointArgs.Builderdescription(java.lang.String description)EndpointArgs.BuilderdisconnectOnSessionTimeout(com.pulumi.core.Output<java.lang.Boolean> disconnectOnSessionTimeout)EndpointArgs.BuilderdisconnectOnSessionTimeout(java.lang.Boolean disconnectOnSessionTimeout)EndpointArgs.BuilderdnsServers(com.pulumi.core.Output<java.util.List<java.lang.String>> dnsServers)EndpointArgs.BuilderdnsServers(java.lang.String... dnsServers)EndpointArgs.BuilderdnsServers(java.util.List<java.lang.String> dnsServers)EndpointArgs.BuilderendpointIpAddressType(com.pulumi.core.Output<java.lang.String> endpointIpAddressType)EndpointArgs.BuilderendpointIpAddressType(java.lang.String endpointIpAddressType)EndpointArgs.Builderregion(com.pulumi.core.Output<java.lang.String> region)EndpointArgs.Builderregion(java.lang.String region)EndpointArgs.BuildersecurityGroupIds(com.pulumi.core.Output<java.util.List<java.lang.String>> securityGroupIds)EndpointArgs.BuildersecurityGroupIds(java.lang.String... securityGroupIds)EndpointArgs.BuildersecurityGroupIds(java.util.List<java.lang.String> securityGroupIds)EndpointArgs.BuilderselfServicePortal(com.pulumi.core.Output<java.lang.String> selfServicePortal)EndpointArgs.BuilderselfServicePortal(java.lang.String selfServicePortal)EndpointArgs.BuilderserverCertificateArn(com.pulumi.core.Output<java.lang.String> serverCertificateArn)EndpointArgs.BuilderserverCertificateArn(java.lang.String serverCertificateArn)EndpointArgs.BuildersessionTimeoutHours(com.pulumi.core.Output<java.lang.Integer> sessionTimeoutHours)EndpointArgs.BuildersessionTimeoutHours(java.lang.Integer sessionTimeoutHours)EndpointArgs.BuildersplitTunnel(com.pulumi.core.Output<java.lang.Boolean> splitTunnel)EndpointArgs.BuildersplitTunnel(java.lang.Boolean splitTunnel)EndpointArgs.Buildertags(com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tags)EndpointArgs.Buildertags(java.util.Map<java.lang.String,java.lang.String> tags)EndpointArgs.BuildertrafficIpAddressType(com.pulumi.core.Output<java.lang.String> trafficIpAddressType)EndpointArgs.BuildertrafficIpAddressType(java.lang.String trafficIpAddressType)EndpointArgs.BuildertransitGatewayConfiguration(EndpointTransitGatewayConfigurationArgs transitGatewayConfiguration)EndpointArgs.BuildertransitGatewayConfiguration(com.pulumi.core.Output<EndpointTransitGatewayConfigurationArgs> transitGatewayConfiguration)EndpointArgs.BuildertransportProtocol(com.pulumi.core.Output<java.lang.String> transportProtocol)EndpointArgs.BuildertransportProtocol(java.lang.String transportProtocol)EndpointArgs.BuildervpcId(com.pulumi.core.Output<java.lang.String> vpcId)EndpointArgs.BuildervpcId(java.lang.String vpcId)EndpointArgs.BuildervpnPort(com.pulumi.core.Output<java.lang.Integer> vpnPort)EndpointArgs.BuildervpnPort(java.lang.Integer vpnPort)
-
-
-
Constructor Detail
-
Builder
public Builder()
-
Builder
public Builder(EndpointArgs defaults)
-
-
Method Detail
-
authenticationOptions
public EndpointArgs.Builder authenticationOptions(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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.Builder connectionLogOptions(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 EndpointArgs.Builder connectionLogOptions(EndpointConnectionLogOptionsArgs connectionLogOptions)
- Parameters:
connectionLogOptions- Information about the client connection logging options. See `connectionLogOptions` Block Reference below for details.- Returns:
- builder
-
description
public EndpointArgs.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 EndpointArgs.Builder description(java.lang.String description)
- Parameters:
description- A brief description of the Client VPN endpoint.- Returns:
- builder
-
disconnectOnSessionTimeout
public EndpointArgs.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 EndpointArgs.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
-
dnsServers
public EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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
-
serverCertificateArn
public EndpointArgs.Builder serverCertificateArn(com.pulumi.core.Output<java.lang.String> serverCertificateArn)
- Parameters:
serverCertificateArn- The ARN of the ACM server certificate.- Returns:
- builder
-
serverCertificateArn
public EndpointArgs.Builder serverCertificateArn(java.lang.String serverCertificateArn)
- Parameters:
serverCertificateArn- The ARN of the ACM server certificate.- Returns:
- builder
-
sessionTimeoutHours
public EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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
-
trafficIpAddressType
public EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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 EndpointArgs.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
-
build
public EndpointArgs build()
-
-