Class: Aws::EC2::Types::CreateClientVpnEndpointRequest

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb

Overview

Note:

When making an API call, you may pass CreateClientVpnEndpointRequest data as a hash:

{
  client_cidr_block: "String", # required
  server_certificate_arn: "String", # required
  authentication_options: [ # required
    {
      type: "certificate-authentication", # accepts certificate-authentication, directory-service-authentication, federated-authentication
      active_directory: {
        directory_id: "String",
      },
      mutual_authentication: {
        client_root_certificate_chain_arn: "String",
      },
      federated_authentication: {
        saml_provider_arn: "String",
        self_service_saml_provider_arn: "String",
      },
    },
  ],
  connection_log_options: { # required
    enabled: false,
    cloudwatch_log_group: "String",
    cloudwatch_log_stream: "String",
  },
  dns_servers: ["String"],
  transport_protocol: "tcp", # accepts tcp, udp
  vpn_port: 1,
  description: "String",
  split_tunnel: false,
  dry_run: false,
  client_token: "String",
  tag_specifications: [
    {
      resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, egress-only-internet-gateway, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
      tags: [
        {
          key: "String",
          value: "String",
        },
      ],
    },
  ],
  security_group_ids: ["SecurityGroupId"],
  vpc_id: "VpcId",
  self_service_portal: "enabled", # accepts enabled, disabled
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#authentication_optionsArray<Types::ClientVpnAuthenticationRequest>

Information about the authentication method to be used to authenticate clients.



5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#client_cidr_blockString

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.

Returns:

  • (String)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#client_tokenString

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

A suitable default value is auto-generated. You should normally not need to pass this option.

Returns:

  • (String)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#connection_log_optionsTypes::ConnectionLogOptions

Information about the client connection logging options.

If you enable client connection logging, data about client connections is sent to a Cloudwatch Logs log stream. The following information is logged:

  • Client connection requests

  • Client connection results (successful and unsuccessful)

  • Reasons for unsuccessful client connection requests

  • Client connection termination time



5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#descriptionString

A brief description of the Client VPN endpoint.

Returns:

  • (String)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#dns_serversArray<String>

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 configured on the device is used for the DNS server.

Returns:

  • (Array<String>)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#dry_runBoolean

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

Returns:

  • (Boolean)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#security_group_idsArray<String>

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.

Returns:

  • (Array<String>)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#self_service_portalString

Specify whether to enable the self-service portal for the Client VPN endpoint.

Default Value: enabled

Returns:

  • (String)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#server_certificate_arnString

The ARN of the server certificate. For more information, see the AWS Certificate Manager User Guide.

Returns:

  • (String)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#split_tunnelBoolean

Indicates whether split-tunnel is enabled on the AWS Client VPN endpoint.

By default, split-tunnel on a VPN endpoint is disabled.

For information about split-tunnel VPN endpoints, see Split-Tunnel AWS Client VPN Endpoint in the AWS Client VPN Administrator Guide.

Returns:

  • (Boolean)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#tag_specificationsArray<Types::TagSpecification>

The tags to apply to the Client VPN endpoint during creation.

Returns:



5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#transport_protocolString

The transport protocol to be used by the VPN session.

Default value: udp

Returns:

  • (String)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#vpc_idString

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.

Returns:

  • (String)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end

#vpn_portInteger

The port number to assign to the Client VPN endpoint for TCP and UDP traffic.

Valid Values: 443 | 1194

Default Value: 443

Returns:

  • (Integer)


5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
# File 'gems/aws-sdk-ec2/lib/aws-sdk-ec2/types.rb', line 5236

class CreateClientVpnEndpointRequest < Struct.new(
  :client_cidr_block,
  :server_certificate_arn,
  :authentication_options,
  :connection_log_options,
  :dns_servers,
  :transport_protocol,
  :vpn_port,
  :description,
  :split_tunnel,
  :dry_run,
  :client_token,
  :tag_specifications,
  :security_group_ids,
  :vpc_id,
  :self_service_portal)
  SENSITIVE = []
  include Aws::Structure
end