#[non_exhaustive]
pub struct CreateResolverEndpointInput { pub creator_request_id: Option<String>, pub name: Option<String>, pub security_group_ids: Option<Vec<String>>, pub direction: Option<ResolverEndpointDirection>, pub ip_addresses: Option<Vec<IpAddressRequest>>, pub outpost_arn: Option<String>, pub preferred_instance_type: Option<String>, pub tags: Option<Vec<Tag>>, pub resolver_endpoint_type: Option<ResolverEndpointType>, pub protocols: Option<Vec<Protocol>>, }

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§creator_request_id: Option<String>

A unique string that identifies the request and that allows failed requests to be retried without the risk of running the operation twice. CreatorRequestId can be any unique string, for example, a date/time stamp.

§name: Option<String>

A friendly name that lets you easily find a configuration in the Resolver dashboard in the Route 53 console.

§security_group_ids: Option<Vec<String>>

The ID of one or more security groups that you want to use to control access to this VPC. The security group that you specify must include one or more inbound rules (for inbound Resolver endpoints) or outbound rules (for outbound Resolver endpoints). Inbound and outbound rules must allow TCP and UDP access. For inbound access, open port 53. For outbound access, open the port that you're using for DNS queries on your network.

§direction: Option<ResolverEndpointDirection>

Specify the applicable value:

  • INBOUND: Resolver forwards DNS queries to the DNS service for a VPC from your network

  • OUTBOUND: Resolver forwards DNS queries from the DNS service for a VPC to your network

§ip_addresses: Option<Vec<IpAddressRequest>>

The subnets and IP addresses in your VPC that DNS queries originate from (for outbound endpoints) or that you forward DNS queries to (for inbound endpoints). The subnet ID uniquely identifies a VPC.

Even though the minimum is 1, Route 53 requires that you create at least two.

§outpost_arn: Option<String>

The Amazon Resource Name (ARN) of the Outpost. If you specify this, you must also specify a value for the PreferredInstanceType.

§preferred_instance_type: Option<String>

The instance type. If you specify this, you must also specify a value for the OutpostArn.

§tags: Option<Vec<Tag>>

A list of the tag keys and values that you want to associate with the endpoint.

§resolver_endpoint_type: Option<ResolverEndpointType>

For the endpoint type you can choose either IPv4, IPv6, or dual-stack. A dual-stack endpoint means that it will resolve via both IPv4 and IPv6. This endpoint type is applied to all IP addresses.

§protocols: Option<Vec<Protocol>>

The protocols you want to use for the endpoint. DoH-FIPS is applicable for inbound endpoints only.

For an inbound endpoint you can apply the protocols as follows:

  • Do53 and DoH in combination.

  • Do53 and DoH-FIPS in combination.

  • Do53 alone.

  • DoH alone.

  • DoH-FIPS alone.

  • None, which is treated as Do53.

For an outbound endpoint you can apply the protocols as follows:

  • Do53 and DoH in combination.

  • Do53 alone.

  • DoH alone.

  • None, which is treated as Do53.

Implementations§

source§

impl CreateResolverEndpointInput

source

pub fn creator_request_id(&self) -> Option<&str>

A unique string that identifies the request and that allows failed requests to be retried without the risk of running the operation twice. CreatorRequestId can be any unique string, for example, a date/time stamp.

source

pub fn name(&self) -> Option<&str>

A friendly name that lets you easily find a configuration in the Resolver dashboard in the Route 53 console.

source

pub fn security_group_ids(&self) -> &[String]

The ID of one or more security groups that you want to use to control access to this VPC. The security group that you specify must include one or more inbound rules (for inbound Resolver endpoints) or outbound rules (for outbound Resolver endpoints). Inbound and outbound rules must allow TCP and UDP access. For inbound access, open port 53. For outbound access, open the port that you're using for DNS queries on your network.

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

pub fn direction(&self) -> Option<&ResolverEndpointDirection>

Specify the applicable value:

  • INBOUND: Resolver forwards DNS queries to the DNS service for a VPC from your network

  • OUTBOUND: Resolver forwards DNS queries from the DNS service for a VPC to your network

source

pub fn ip_addresses(&self) -> &[IpAddressRequest]

The subnets and IP addresses in your VPC that DNS queries originate from (for outbound endpoints) or that you forward DNS queries to (for inbound endpoints). The subnet ID uniquely identifies a VPC.

Even though the minimum is 1, Route 53 requires that you create at least two.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .ip_addresses.is_none().

source

pub fn outpost_arn(&self) -> Option<&str>

The Amazon Resource Name (ARN) of the Outpost. If you specify this, you must also specify a value for the PreferredInstanceType.

source

pub fn preferred_instance_type(&self) -> Option<&str>

The instance type. If you specify this, you must also specify a value for the OutpostArn.

source

pub fn tags(&self) -> &[Tag]

A list of the tag keys and values that you want to associate with the endpoint.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .tags.is_none().

source

pub fn resolver_endpoint_type(&self) -> Option<&ResolverEndpointType>

For the endpoint type you can choose either IPv4, IPv6, or dual-stack. A dual-stack endpoint means that it will resolve via both IPv4 and IPv6. This endpoint type is applied to all IP addresses.

source

pub fn protocols(&self) -> &[Protocol]

The protocols you want to use for the endpoint. DoH-FIPS is applicable for inbound endpoints only.

For an inbound endpoint you can apply the protocols as follows:

  • Do53 and DoH in combination.

  • Do53 and DoH-FIPS in combination.

  • Do53 alone.

  • DoH alone.

  • DoH-FIPS alone.

  • None, which is treated as Do53.

For an outbound endpoint you can apply the protocols as follows:

  • Do53 and DoH in combination.

  • Do53 alone.

  • DoH alone.

  • None, which is treated as Do53.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .protocols.is_none().

source§

impl CreateResolverEndpointInput

source

pub fn builder() -> CreateResolverEndpointInputBuilder

Creates a new builder-style object to manufacture CreateResolverEndpointInput.

Trait Implementations§

source§

impl Clone for CreateResolverEndpointInput

source§

fn clone(&self) -> CreateResolverEndpointInput

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CreateResolverEndpointInput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for CreateResolverEndpointInput

source§

fn eq(&self, other: &CreateResolverEndpointInput) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for CreateResolverEndpointInput

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

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

fn in_current_span(self) -> Instrumented<Self>

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

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more