Struct aws_sdk_wafv2::model::IpSetForwardedIpConfig
source · [−]#[non_exhaustive]pub struct IpSetForwardedIpConfig {
pub header_name: Option<String>,
pub fallback_behavior: Option<FallbackBehavior>,
pub position: Option<ForwardedIpPosition>,
}Expand description
The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, WAF doesn't apply the rule to the web request at all.
This configuration is used only for IPSetReferenceStatement. For GeoMatchStatement and RateBasedStatement, use ForwardedIPConfig instead.
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.header_name: Option<String>The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to X-Forwarded-For.
If the specified header isn't present in the request, WAF doesn't apply the rule to the web request at all.
fallback_behavior: Option<FallbackBehavior>The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
-
MATCH- Treat the web request as matching the rule statement. WAF applies the rule action to the request. -
NO_MATCH- Treat the web request as not matching the rule statement.
position: Option<ForwardedIpPosition>The position in the header to search for the IP address. The header can contain IP addresses of the original client and also of proxies. For example, the header value could be 10.1.1.1, 127.0.0.0, 10.10.10.10 where the first IP address identifies the original client and the rest identify proxies that the request went through.
The options for this setting are the following:
-
FIRST - Inspect the first IP address in the list of IP addresses in the header. This is usually the client's original IP.
-
LAST - Inspect the last IP address in the list of IP addresses in the header.
-
ANY - Inspect all IP addresses in the header for a match. If the header contains more than 10 IP addresses, WAF inspects the last 10.
Implementations
sourceimpl IpSetForwardedIpConfig
impl IpSetForwardedIpConfig
sourcepub fn header_name(&self) -> Option<&str>
pub fn header_name(&self) -> Option<&str>
The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to X-Forwarded-For.
If the specified header isn't present in the request, WAF doesn't apply the rule to the web request at all.
sourcepub fn fallback_behavior(&self) -> Option<&FallbackBehavior>
pub fn fallback_behavior(&self) -> Option<&FallbackBehavior>
The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
-
MATCH- Treat the web request as matching the rule statement. WAF applies the rule action to the request. -
NO_MATCH- Treat the web request as not matching the rule statement.
sourcepub fn position(&self) -> Option<&ForwardedIpPosition>
pub fn position(&self) -> Option<&ForwardedIpPosition>
The position in the header to search for the IP address. The header can contain IP addresses of the original client and also of proxies. For example, the header value could be 10.1.1.1, 127.0.0.0, 10.10.10.10 where the first IP address identifies the original client and the rest identify proxies that the request went through.
The options for this setting are the following:
-
FIRST - Inspect the first IP address in the list of IP addresses in the header. This is usually the client's original IP.
-
LAST - Inspect the last IP address in the list of IP addresses in the header.
-
ANY - Inspect all IP addresses in the header for a match. If the header contains more than 10 IP addresses, WAF inspects the last 10.
sourceimpl IpSetForwardedIpConfig
impl IpSetForwardedIpConfig
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture IpSetForwardedIpConfig
Trait Implementations
sourceimpl Clone for IpSetForwardedIpConfig
impl Clone for IpSetForwardedIpConfig
sourcefn clone(&self) -> IpSetForwardedIpConfig
fn clone(&self) -> IpSetForwardedIpConfig
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more
sourceimpl Debug for IpSetForwardedIpConfig
impl Debug for IpSetForwardedIpConfig
sourceimpl PartialEq<IpSetForwardedIpConfig> for IpSetForwardedIpConfig
impl PartialEq<IpSetForwardedIpConfig> for IpSetForwardedIpConfig
sourcefn eq(&self, other: &IpSetForwardedIpConfig) -> bool
fn eq(&self, other: &IpSetForwardedIpConfig) -> bool
This method tests for self and other values to be equal, and is used
by ==. Read more
sourcefn ne(&self, other: &IpSetForwardedIpConfig) -> bool
fn ne(&self, other: &IpSetForwardedIpConfig) -> bool
This method tests for !=.
impl StructuralPartialEq for IpSetForwardedIpConfig
Auto Trait Implementations
impl RefUnwindSafe for IpSetForwardedIpConfig
impl Send for IpSetForwardedIpConfig
impl Sync for IpSetForwardedIpConfig
impl Unpin for IpSetForwardedIpConfig
impl UnwindSafe for IpSetForwardedIpConfig
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
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
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber to this type, returning a
WithDispatch wrapper. Read more