Struct aws_sdk_transfer::types::EndpointDetails
source · #[non_exhaustive]pub struct EndpointDetails {
pub address_allocation_ids: Option<Vec<String>>,
pub subnet_ids: Option<Vec<String>>,
pub vpc_endpoint_id: Option<String>,
pub vpc_id: Option<String>,
pub security_group_ids: Option<Vec<String>>,
}
Expand description
The virtual private cloud (VPC) endpoint settings that are configured for your file transfer protocol-enabled server. With a VPC endpoint, you can restrict access to your server and resources only within your VPC. To control incoming internet traffic, invoke the UpdateServer
API and attach an Elastic IP address to your server's endpoint.
After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT
in your Amazon Web Servicesaccount if your account hasn't already done so before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT
in your Amazon Web Servicesaccount on or before May 19, 2021, you will not be affected. After this date, use EndpointType
=VPC
.
For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.address_allocation_ids: Option<Vec<String>>
A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint.
An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved from the allocationId
field from the Amazon EC2 Address data type. One way to retrieve this value is by calling the EC2 DescribeAddresses API.
This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, see Create an internet-facing endpoint for your server.
This property can only be set as follows:
-
EndpointType
must be set toVPC
-
The Transfer Family server must be offline.
-
You cannot set this parameter for Transfer Family servers that use the FTP protocol.
-
The server must already have
SubnetIds
populated (SubnetIds
andAddressAllocationIds
cannot be updated simultaneously). -
AddressAllocationIds
can't contain duplicates, and must be equal in length toSubnetIds
. For example, if you have three subnet IDs, you must also specify three address allocation IDs. -
Call the
UpdateServer
API to set or change this parameter.
subnet_ids: Option<Vec<String>>
A list of subnet IDs that are required to host your server endpoint in your VPC.
This property can only be set when EndpointType
is set to VPC
.
vpc_endpoint_id: Option<String>
The identifier of the VPC endpoint.
This property can only be set when EndpointType
is set to VPC_ENDPOINT
.
For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
vpc_id: Option<String>
The VPC identifier of the VPC in which a server's endpoint will be hosted.
This property can only be set when EndpointType
is set to VPC
.
security_group_ids: Option<Vec<String>>
A list of security groups IDs that are available to attach to your server's endpoint.
This property can only be set when EndpointType
is set to VPC
.
You can edit the SecurityGroupIds
property in the UpdateServer API only if you are changing the EndpointType
from PUBLIC
or VPC_ENDPOINT
to VPC
. To change security groups associated with your server's VPC endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API.
Implementations§
source§impl EndpointDetails
impl EndpointDetails
sourcepub fn address_allocation_ids(&self) -> &[String]
pub fn address_allocation_ids(&self) -> &[String]
A list of address allocation IDs that are required to attach an Elastic IP address to your server's endpoint.
An address allocation ID corresponds to the allocation ID of an Elastic IP address. This value can be retrieved from the allocationId
field from the Amazon EC2 Address data type. One way to retrieve this value is by calling the EC2 DescribeAddresses API.
This parameter is optional. Set this parameter if you want to make your VPC endpoint public-facing. For details, see Create an internet-facing endpoint for your server.
This property can only be set as follows:
-
EndpointType
must be set toVPC
-
The Transfer Family server must be offline.
-
You cannot set this parameter for Transfer Family servers that use the FTP protocol.
-
The server must already have
SubnetIds
populated (SubnetIds
andAddressAllocationIds
cannot be updated simultaneously). -
AddressAllocationIds
can't contain duplicates, and must be equal in length toSubnetIds
. For example, if you have three subnet IDs, you must also specify three address allocation IDs. -
Call the
UpdateServer
API to set or change this parameter.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .address_allocation_ids.is_none()
.
sourcepub fn subnet_ids(&self) -> &[String]
pub fn subnet_ids(&self) -> &[String]
A list of subnet IDs that are required to host your server endpoint in your VPC.
This property can only be set when EndpointType
is set to VPC
.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .subnet_ids.is_none()
.
sourcepub fn vpc_endpoint_id(&self) -> Option<&str>
pub fn vpc_endpoint_id(&self) -> Option<&str>
The identifier of the VPC endpoint.
This property can only be set when EndpointType
is set to VPC_ENDPOINT
.
For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
sourcepub fn vpc_id(&self) -> Option<&str>
pub fn vpc_id(&self) -> Option<&str>
The VPC identifier of the VPC in which a server's endpoint will be hosted.
This property can only be set when EndpointType
is set to VPC
.
sourcepub fn security_group_ids(&self) -> &[String]
pub fn security_group_ids(&self) -> &[String]
A list of security groups IDs that are available to attach to your server's endpoint.
This property can only be set when EndpointType
is set to VPC
.
You can edit the SecurityGroupIds
property in the UpdateServer API only if you are changing the EndpointType
from PUBLIC
or VPC_ENDPOINT
to VPC
. To change security groups associated with your server's VPC endpoint after creation, use the Amazon EC2 ModifyVpcEndpoint API.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .security_group_ids.is_none()
.
source§impl EndpointDetails
impl EndpointDetails
sourcepub fn builder() -> EndpointDetailsBuilder
pub fn builder() -> EndpointDetailsBuilder
Creates a new builder-style object to manufacture EndpointDetails
.
Trait Implementations§
source§impl Clone for EndpointDetails
impl Clone for EndpointDetails
source§fn clone(&self) -> EndpointDetails
fn clone(&self) -> EndpointDetails
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for EndpointDetails
impl Debug for EndpointDetails
source§impl PartialEq for EndpointDetails
impl PartialEq for EndpointDetails
source§fn eq(&self, other: &EndpointDetails) -> bool
fn eq(&self, other: &EndpointDetails) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for EndpointDetails
Auto Trait Implementations§
impl Freeze for EndpointDetails
impl RefUnwindSafe for EndpointDetails
impl Send for EndpointDetails
impl Sync for EndpointDetails
impl Unpin for EndpointDetails
impl UnwindSafe for EndpointDetails
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more