/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the ec2-2016-11-15.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.EC2.Model { /// /// Container for the parameters to the ModifyClientVpnEndpoint operation. /// Modifies the specified Client VPN endpoint. Modifying the DNS server resets existing /// client connections. /// public partial class ModifyClientVpnEndpointRequest : AmazonEC2Request { private ClientConnectOptions _clientConnectOptions; private ClientLoginBannerOptions _clientLoginBannerOptions; private string _clientVpnEndpointId; private ConnectionLogOptions _connectionLogOptions; private string _description; private DnsServersOptionsModifyStructure _dnsServers; private List _securityGroupIds = new List(); private SelfServicePortal _selfServicePortal; private string _serverCertificateArn; private int? _sessionTimeoutHours; private bool? _splitTunnel; private string _vpcId; private int? _vpnPort; /// /// Gets and sets the property ClientConnectOptions. /// /// The options for managing connection authorization for new client connections. /// /// public ClientConnectOptions ClientConnectOptions { get { return this._clientConnectOptions; } set { this._clientConnectOptions = value; } } // Check to see if ClientConnectOptions property is set internal bool IsSetClientConnectOptions() { return this._clientConnectOptions != null; } /// /// Gets and sets the property ClientLoginBannerOptions. /// /// Options for enabling a customizable text banner that will be displayed on Amazon Web /// Services provided clients when a VPN session is established. /// /// public ClientLoginBannerOptions ClientLoginBannerOptions { get { return this._clientLoginBannerOptions; } set { this._clientLoginBannerOptions = value; } } // Check to see if ClientLoginBannerOptions property is set internal bool IsSetClientLoginBannerOptions() { return this._clientLoginBannerOptions != null; } /// /// Gets and sets the property ClientVpnEndpointId. /// /// The ID of the Client VPN endpoint to modify. /// /// [AWSProperty(Required=true)] public string ClientVpnEndpointId { get { return this._clientVpnEndpointId; } set { this._clientVpnEndpointId = value; } } // Check to see if ClientVpnEndpointId property is set internal bool IsSetClientVpnEndpointId() { return this._clientVpnEndpointId != null; } /// /// Gets and sets the property 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 /// ///
///
public ConnectionLogOptions ConnectionLogOptions { get { return this._connectionLogOptions; } set { this._connectionLogOptions = value; } } // Check to see if ConnectionLogOptions property is set internal bool IsSetConnectionLogOptions() { return this._connectionLogOptions != null; } /// /// Gets and sets the property Description. /// /// A brief description of the Client VPN endpoint. /// /// public string Description { get { return this._description; } set { this._description = value; } } // Check to see if Description property is set internal bool IsSetDescription() { return this._description != null; } /// /// Gets and sets the property DnsServers. /// /// Information about the DNS servers to be used by Client VPN connections. A Client VPN /// endpoint can have up to two DNS servers. /// /// public DnsServersOptionsModifyStructure DnsServers { get { return this._dnsServers; } set { this._dnsServers = value; } } // Check to see if DnsServers property is set internal bool IsSetDnsServers() { return this._dnsServers != null; } /// /// Gets and sets the property SecurityGroupIds. /// /// The IDs of one or more security groups to apply to the target network. /// /// public List SecurityGroupIds { get { return this._securityGroupIds; } set { this._securityGroupIds = value; } } // Check to see if SecurityGroupIds property is set internal bool IsSetSecurityGroupIds() { return this._securityGroupIds != null && this._securityGroupIds.Count > 0; } /// /// Gets and sets the property SelfServicePortal. /// /// Specify whether to enable the self-service portal for the Client VPN endpoint. /// /// public SelfServicePortal SelfServicePortal { get { return this._selfServicePortal; } set { this._selfServicePortal = value; } } // Check to see if SelfServicePortal property is set internal bool IsSetSelfServicePortal() { return this._selfServicePortal != null; } /// /// Gets and sets the property ServerCertificateArn. /// /// The ARN of the server certificate to be used. The server certificate must be provisioned /// in Certificate Manager (ACM). /// /// public string ServerCertificateArn { get { return this._serverCertificateArn; } set { this._serverCertificateArn = value; } } // Check to see if ServerCertificateArn property is set internal bool IsSetServerCertificateArn() { return this._serverCertificateArn != null; } /// /// Gets and sets the property SessionTimeoutHours. /// /// The maximum VPN session duration time in hours. /// /// /// /// Valid values: 8 | 10 | 12 | 24 /// /// /// /// Default value: 24 /// /// public int SessionTimeoutHours { get { return this._sessionTimeoutHours.GetValueOrDefault(); } set { this._sessionTimeoutHours = value; } } // Check to see if SessionTimeoutHours property is set internal bool IsSetSessionTimeoutHours() { return this._sessionTimeoutHours.HasValue; } /// /// Gets and sets the property SplitTunnel. /// /// Indicates whether the VPN is split-tunnel. /// /// /// /// For information about split-tunnel VPN endpoints, see Split-tunnel /// Client VPN endpoint in the Client VPN Administrator Guide. /// /// public bool SplitTunnel { get { return this._splitTunnel.GetValueOrDefault(); } set { this._splitTunnel = value; } } // Check to see if SplitTunnel property is set internal bool IsSetSplitTunnel() { return this._splitTunnel.HasValue; } /// /// Gets and sets the property VpcId. /// /// The ID of the VPC to associate with the Client VPN endpoint. /// /// public string VpcId { get { return this._vpcId; } set { this._vpcId = value; } } // Check to see if VpcId property is set internal bool IsSetVpcId() { return this._vpcId != null; } /// /// Gets and sets the property VpnPort. /// /// The port number to assign to the Client VPN endpoint for TCP and UDP traffic. /// /// /// /// Valid Values: 443 | 1194 /// /// /// /// Default Value: 443 /// /// public int VpnPort { get { return this._vpnPort.GetValueOrDefault(); } set { this._vpnPort = value; } } // Check to see if VpnPort property is set internal bool IsSetVpnPort() { return this._vpnPort.HasValue; } } }