pub struct Builder { /* private fields */ }
Expand description

Implementations§

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.

Examples found in repository?
src/client.rs (line 14739)
14738
14739
14740
14741
        pub fn client_cidr_block(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.client_cidr_block(input.into());
            self
        }

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.

Examples found in repository?
src/client.rs (line 14747)
14743
14744
14745
14746
14747
14748
14749
        pub fn set_client_cidr_block(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_client_cidr_block(input);
            self
        }

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

Examples found in repository?
src/client.rs (line 14752)
14751
14752
14753
14754
        pub fn server_certificate_arn(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.server_certificate_arn(input.into());
            self
        }

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

Examples found in repository?
src/client.rs (line 14760)
14756
14757
14758
14759
14760
14761
14762
        pub fn set_server_certificate_arn(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_server_certificate_arn(input);
            self
        }

Appends an item to authentication_options.

To override the contents of this collection use set_authentication_options.

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

Examples found in repository?
src/client.rs (line 14772)
14768
14769
14770
14771
14772
14773
14774
        pub fn authentication_options(
            mut self,
            input: crate::model::ClientVpnAuthenticationRequest,
        ) -> Self {
            self.inner = self.inner.authentication_options(input);
            self
        }

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

Examples found in repository?
src/client.rs (line 14780)
14776
14777
14778
14779
14780
14781
14782
        pub fn set_authentication_options(
            mut self,
            input: std::option::Option<std::vec::Vec<crate::model::ClientVpnAuthenticationRequest>>,
        ) -> Self {
            self.inner = self.inner.set_authentication_options(input);
            self
        }

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

Examples found in repository?
src/client.rs (line 14792)
14791
14792
14793
14794
        pub fn connection_log_options(mut self, input: crate::model::ConnectionLogOptions) -> Self {
            self.inner = self.inner.connection_log_options(input);
            self
        }

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

Examples found in repository?
src/client.rs (line 14807)
14803
14804
14805
14806
14807
14808
14809
        pub fn set_connection_log_options(
            mut self,
            input: std::option::Option<crate::model::ConnectionLogOptions>,
        ) -> Self {
            self.inner = self.inner.set_connection_log_options(input);
            self
        }

Appends an item to dns_servers.

To override the contents of this collection use set_dns_servers.

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.

Examples found in repository?
src/client.rs (line 14816)
14815
14816
14817
14818
        pub fn dns_servers(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.dns_servers(input.into());
            self
        }

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.

Examples found in repository?
src/client.rs (line 14824)
14820
14821
14822
14823
14824
14825
14826
        pub fn set_dns_servers(
            mut self,
            input: std::option::Option<std::vec::Vec<std::string::String>>,
        ) -> Self {
            self.inner = self.inner.set_dns_servers(input);
            self
        }

The transport protocol to be used by the VPN session.

Default value: udp

Examples found in repository?
src/client.rs (line 14830)
14829
14830
14831
14832
        pub fn transport_protocol(mut self, input: crate::model::TransportProtocol) -> Self {
            self.inner = self.inner.transport_protocol(input);
            self
        }

The transport protocol to be used by the VPN session.

Default value: udp

Examples found in repository?
src/client.rs (line 14839)
14835
14836
14837
14838
14839
14840
14841
        pub fn set_transport_protocol(
            mut self,
            input: std::option::Option<crate::model::TransportProtocol>,
        ) -> Self {
            self.inner = self.inner.set_transport_protocol(input);
            self
        }

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

Valid Values: 443 | 1194

Default Value: 443

Examples found in repository?
src/client.rs (line 14846)
14845
14846
14847
14848
        pub fn vpn_port(mut self, input: i32) -> Self {
            self.inner = self.inner.vpn_port(input);
            self
        }

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

Valid Values: 443 | 1194

Default Value: 443

Examples found in repository?
src/client.rs (line 14853)
14852
14853
14854
14855
        pub fn set_vpn_port(mut self, input: std::option::Option<i32>) -> Self {
            self.inner = self.inner.set_vpn_port(input);
            self
        }

A brief description of the Client VPN endpoint.

Examples found in repository?
src/client.rs (line 14858)
14857
14858
14859
14860
        pub fn description(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.description(input.into());
            self
        }

A brief description of the Client VPN endpoint.

Examples found in repository?
src/client.rs (line 14863)
14862
14863
14864
14865
        pub fn set_description(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_description(input);
            self
        }

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

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

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

Examples found in repository?
src/client.rs (line 14870)
14869
14870
14871
14872
        pub fn split_tunnel(mut self, input: bool) -> Self {
            self.inner = self.inner.split_tunnel(input);
            self
        }

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

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

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

Examples found in repository?
src/client.rs (line 14877)
14876
14877
14878
14879
        pub fn set_split_tunnel(mut self, input: std::option::Option<bool>) -> Self {
            self.inner = self.inner.set_split_tunnel(input);
            self
        }

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.

Examples found in repository?
src/client.rs (line 14882)
14881
14882
14883
14884
        pub fn dry_run(mut self, input: bool) -> Self {
            self.inner = self.inner.dry_run(input);
            self
        }

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.

Examples found in repository?
src/client.rs (line 14887)
14886
14887
14888
14889
        pub fn set_dry_run(mut self, input: std::option::Option<bool>) -> Self {
            self.inner = self.inner.set_dry_run(input);
            self
        }

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

Examples found in repository?
src/client.rs (line 14892)
14891
14892
14893
14894
        pub fn client_token(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.client_token(input.into());
            self
        }

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

Examples found in repository?
src/client.rs (line 14897)
14896
14897
14898
14899
        pub fn set_client_token(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_client_token(input);
            self
        }

Appends an item to tag_specifications.

To override the contents of this collection use set_tag_specifications.

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

Examples found in repository?
src/client.rs (line 14906)
14905
14906
14907
14908
        pub fn tag_specifications(mut self, input: crate::model::TagSpecification) -> Self {
            self.inner = self.inner.tag_specifications(input);
            self
        }

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

Examples found in repository?
src/client.rs (line 14914)
14910
14911
14912
14913
14914
14915
14916
        pub fn set_tag_specifications(
            mut self,
            input: std::option::Option<std::vec::Vec<crate::model::TagSpecification>>,
        ) -> Self {
            self.inner = self.inner.set_tag_specifications(input);
            self
        }

Appends an item to security_group_ids.

To override the contents of this collection use set_security_group_ids.

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.

Examples found in repository?
src/client.rs (line 14923)
14922
14923
14924
14925
        pub fn security_group_ids(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.security_group_ids(input.into());
            self
        }

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.

Examples found in repository?
src/client.rs (line 14931)
14927
14928
14929
14930
14931
14932
14933
        pub fn set_security_group_ids(
            mut self,
            input: std::option::Option<std::vec::Vec<std::string::String>>,
        ) -> Self {
            self.inner = self.inner.set_security_group_ids(input);
            self
        }

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.

Examples found in repository?
src/client.rs (line 14936)
14935
14936
14937
14938
        pub fn vpc_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.vpc_id(input.into());
            self
        }

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.

Examples found in repository?
src/client.rs (line 14941)
14940
14941
14942
14943
        pub fn set_vpc_id(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_vpc_id(input);
            self
        }

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

Default Value: enabled

Examples found in repository?
src/client.rs (line 14947)
14946
14947
14948
14949
        pub fn self_service_portal(mut self, input: crate::model::SelfServicePortal) -> Self {
            self.inner = self.inner.self_service_portal(input);
            self
        }

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

Default Value: enabled

Examples found in repository?
src/client.rs (line 14956)
14952
14953
14954
14955
14956
14957
14958
        pub fn set_self_service_portal(
            mut self,
            input: std::option::Option<crate::model::SelfServicePortal>,
        ) -> Self {
            self.inner = self.inner.set_self_service_portal(input);
            self
        }

The options for managing connection authorization for new client connections.

Examples found in repository?
src/client.rs (line 14961)
14960
14961
14962
14963
        pub fn client_connect_options(mut self, input: crate::model::ClientConnectOptions) -> Self {
            self.inner = self.inner.client_connect_options(input);
            self
        }

The options for managing connection authorization for new client connections.

Examples found in repository?
src/client.rs (line 14969)
14965
14966
14967
14968
14969
14970
14971
        pub fn set_client_connect_options(
            mut self,
            input: std::option::Option<crate::model::ClientConnectOptions>,
        ) -> Self {
            self.inner = self.inner.set_client_connect_options(input);
            self
        }

The maximum VPN session duration time in hours.

Valid values: 8 | 10 | 12 | 24

Default value: 24

Examples found in repository?
src/client.rs (line 14976)
14975
14976
14977
14978
        pub fn session_timeout_hours(mut self, input: i32) -> Self {
            self.inner = self.inner.session_timeout_hours(input);
            self
        }

The maximum VPN session duration time in hours.

Valid values: 8 | 10 | 12 | 24

Default value: 24

Examples found in repository?
src/client.rs (line 14983)
14982
14983
14984
14985
        pub fn set_session_timeout_hours(mut self, input: std::option::Option<i32>) -> Self {
            self.inner = self.inner.set_session_timeout_hours(input);
            self
        }

Options for enabling a customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

Examples found in repository?
src/client.rs (line 14991)
14987
14988
14989
14990
14991
14992
14993
        pub fn client_login_banner_options(
            mut self,
            input: crate::model::ClientLoginBannerOptions,
        ) -> Self {
            self.inner = self.inner.client_login_banner_options(input);
            self
        }

Options for enabling a customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

Examples found in repository?
src/client.rs (line 14999)
14995
14996
14997
14998
14999
15000
15001
        pub fn set_client_login_banner_options(
            mut self,
            input: std::option::Option<crate::model::ClientLoginBannerOptions>,
        ) -> Self {
            self.inner = self.inner.set_client_login_banner_options(input);
            self
        }

Consumes the builder and constructs a CreateClientVpnEndpointInput.

Examples found in repository?
src/client.rs (line 14706)
14694
14695
14696
14697
14698
14699
14700
14701
14702
14703
14704
14705
14706
14707
14708
14709
14710
14711
14712
14713
14714
14715
14716
14717
14718
14719
14720
14721
14722
14723
14724
14725
14726
14727
14728
14729
14730
14731
14732
14733
14734
14735
14736
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::CreateClientVpnEndpoint,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::CreateClientVpnEndpointError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::CreateClientVpnEndpointOutput,
            aws_smithy_http::result::SdkError<crate::error::CreateClientVpnEndpointError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more