Struct aws_sdk_wafv2::operation::create_ip_set::CreateIpSetInput
source · #[non_exhaustive]pub struct CreateIpSetInput {
pub name: Option<String>,
pub scope: Option<Scope>,
pub description: Option<String>,
pub ip_address_version: Option<IpAddressVersion>,
pub addresses: Option<Vec<String>>,
pub tags: Option<Vec<Tag>>,
}
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.name: Option<String>
The name of the IP set. You cannot change the name of an IPSet
after you create it.
scope: Option<Scope>
Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.
To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows:
-
CLI - Specify the Region when you use the CloudFront scope:
--scope=CLOUDFRONT --region=us-east-1
. -
API and SDKs - For all calls, use the Region endpoint us-east-1.
description: Option<String>
A description of the IP set that helps with identification.
ip_address_version: Option<IpAddressVersion>
The version of the IP addresses, either IPV4
or IPV6
.
addresses: Option<Vec<String>>
Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses that you want WAF to inspect for in incoming requests. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0
.
Example address strings:
-
For requests that originated from the IP address 192.0.2.44, specify
192.0.2.44/32
. -
For requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify
192.0.2.0/24
. -
For requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify
1111:0000:0000:0000:0000:0000:0000:0111/128
. -
For requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify
1111:0000:0000:0000:0000:0000:0000:0000/64
.
For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.
Example JSON Addresses
specifications:
-
Empty array:
"Addresses": []
-
Array with one address:
"Addresses": ["192.0.2.44/32"]
-
Array with three addresses:
"Addresses": ["192.0.2.44/32", "192.0.2.0/24", "192.0.0.0/16"]
-
INVALID specification:
"Addresses": [""]
INVALID
An array of key:value pairs to associate with the resource.
Implementations§
source§impl CreateIpSetInput
impl CreateIpSetInput
sourcepub fn name(&self) -> Option<&str>
pub fn name(&self) -> Option<&str>
The name of the IP set. You cannot change the name of an IPSet
after you create it.
sourcepub fn scope(&self) -> Option<&Scope>
pub fn scope(&self) -> Option<&Scope>
Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.
To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows:
-
CLI - Specify the Region when you use the CloudFront scope:
--scope=CLOUDFRONT --region=us-east-1
. -
API and SDKs - For all calls, use the Region endpoint us-east-1.
sourcepub fn description(&self) -> Option<&str>
pub fn description(&self) -> Option<&str>
A description of the IP set that helps with identification.
sourcepub fn ip_address_version(&self) -> Option<&IpAddressVersion>
pub fn ip_address_version(&self) -> Option<&IpAddressVersion>
The version of the IP addresses, either IPV4
or IPV6
.
sourcepub fn addresses(&self) -> &[String]
pub fn addresses(&self) -> &[String]
Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses that you want WAF to inspect for in incoming requests. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for /0
.
Example address strings:
-
For requests that originated from the IP address 192.0.2.44, specify
192.0.2.44/32
. -
For requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify
192.0.2.0/24
. -
For requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify
1111:0000:0000:0000:0000:0000:0000:0111/128
. -
For requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify
1111:0000:0000:0000:0000:0000:0000:0000/64
.
For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.
Example JSON Addresses
specifications:
-
Empty array:
"Addresses": []
-
Array with one address:
"Addresses": ["192.0.2.44/32"]
-
Array with three addresses:
"Addresses": ["192.0.2.44/32", "192.0.2.0/24", "192.0.0.0/16"]
-
INVALID specification:
"Addresses": [""]
INVALID
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .addresses.is_none()
.
An array of key:value pairs to associate with the resource.
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§impl CreateIpSetInput
impl CreateIpSetInput
sourcepub fn builder() -> CreateIpSetInputBuilder
pub fn builder() -> CreateIpSetInputBuilder
Creates a new builder-style object to manufacture CreateIpSetInput
.
Trait Implementations§
source§impl Clone for CreateIpSetInput
impl Clone for CreateIpSetInput
source§fn clone(&self) -> CreateIpSetInput
fn clone(&self) -> CreateIpSetInput
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for CreateIpSetInput
impl Debug for CreateIpSetInput
source§impl PartialEq for CreateIpSetInput
impl PartialEq for CreateIpSetInput
source§fn eq(&self, other: &CreateIpSetInput) -> bool
fn eq(&self, other: &CreateIpSetInput) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for CreateIpSetInput
Auto Trait Implementations§
impl Freeze for CreateIpSetInput
impl RefUnwindSafe for CreateIpSetInput
impl Send for CreateIpSetInput
impl Sync for CreateIpSetInput
impl Unpin for CreateIpSetInput
impl UnwindSafe for CreateIpSetInput
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