Struct aws_sdk_waf::types::builders::RateBasedRuleBuilder
source · #[non_exhaustive]pub struct RateBasedRuleBuilder { /* private fields */ }Expand description
A builder for RateBasedRule.
Implementations§
source§impl RateBasedRuleBuilder
impl RateBasedRuleBuilder
sourcepub fn rule_id(self, input: impl Into<String>) -> Self
pub fn rule_id(self, input: impl Into<String>) -> Self
A unique identifier for a RateBasedRule. You use RuleId to get more information about a RateBasedRule (see GetRateBasedRule), update a RateBasedRule (see UpdateRateBasedRule), insert a RateBasedRule into a WebACL or delete one from a WebACL (see UpdateWebACL), or delete a RateBasedRule from AWS WAF (see DeleteRateBasedRule).
sourcepub fn set_rule_id(self, input: Option<String>) -> Self
pub fn set_rule_id(self, input: Option<String>) -> Self
A unique identifier for a RateBasedRule. You use RuleId to get more information about a RateBasedRule (see GetRateBasedRule), update a RateBasedRule (see UpdateRateBasedRule), insert a RateBasedRule into a WebACL or delete one from a WebACL (see UpdateWebACL), or delete a RateBasedRule from AWS WAF (see DeleteRateBasedRule).
sourcepub fn get_rule_id(&self) -> &Option<String>
pub fn get_rule_id(&self) -> &Option<String>
A unique identifier for a RateBasedRule. You use RuleId to get more information about a RateBasedRule (see GetRateBasedRule), update a RateBasedRule (see UpdateRateBasedRule), insert a RateBasedRule into a WebACL or delete one from a WebACL (see UpdateWebACL), or delete a RateBasedRule from AWS WAF (see DeleteRateBasedRule).
sourcepub fn name(self, input: impl Into<String>) -> Self
pub fn name(self, input: impl Into<String>) -> Self
A friendly name or description for a RateBasedRule. You can't change the name of a RateBasedRule after you create it.
sourcepub fn set_name(self, input: Option<String>) -> Self
pub fn set_name(self, input: Option<String>) -> Self
A friendly name or description for a RateBasedRule. You can't change the name of a RateBasedRule after you create it.
sourcepub fn get_name(&self) -> &Option<String>
pub fn get_name(&self) -> &Option<String>
A friendly name or description for a RateBasedRule. You can't change the name of a RateBasedRule after you create it.
sourcepub fn metric_name(self, input: impl Into<String>) -> Self
pub fn metric_name(self, input: impl Into<String>) -> Self
A friendly name or description for the metrics for a RateBasedRule. The name can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128 and minimum length one. It can't contain whitespace or metric names reserved for AWS WAF, including "All" and "Default_Action." You can't change the name of the metric after you create the RateBasedRule.
sourcepub fn set_metric_name(self, input: Option<String>) -> Self
pub fn set_metric_name(self, input: Option<String>) -> Self
A friendly name or description for the metrics for a RateBasedRule. The name can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128 and minimum length one. It can't contain whitespace or metric names reserved for AWS WAF, including "All" and "Default_Action." You can't change the name of the metric after you create the RateBasedRule.
sourcepub fn get_metric_name(&self) -> &Option<String>
pub fn get_metric_name(&self) -> &Option<String>
A friendly name or description for the metrics for a RateBasedRule. The name can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128 and minimum length one. It can't contain whitespace or metric names reserved for AWS WAF, including "All" and "Default_Action." You can't change the name of the metric after you create the RateBasedRule.
sourcepub fn match_predicates(self, input: Predicate) -> Self
pub fn match_predicates(self, input: Predicate) -> Self
Appends an item to match_predicates.
To override the contents of this collection use set_match_predicates.
The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.
sourcepub fn set_match_predicates(self, input: Option<Vec<Predicate>>) -> Self
pub fn set_match_predicates(self, input: Option<Vec<Predicate>>) -> Self
The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.
sourcepub fn get_match_predicates(&self) -> &Option<Vec<Predicate>>
pub fn get_match_predicates(&self) -> &Option<Vec<Predicate>>
The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.
sourcepub fn rate_key(self, input: RateKey) -> Self
pub fn rate_key(self, input: RateKey) -> Self
The field that AWS WAF uses to determine if requests are likely arriving from single source and thus subject to rate monitoring. The only valid value for RateKey is IP. IP indicates that requests arriving from the same IP address are subject to the RateLimit that is specified in the RateBasedRule.
sourcepub fn set_rate_key(self, input: Option<RateKey>) -> Self
pub fn set_rate_key(self, input: Option<RateKey>) -> Self
The field that AWS WAF uses to determine if requests are likely arriving from single source and thus subject to rate monitoring. The only valid value for RateKey is IP. IP indicates that requests arriving from the same IP address are subject to the RateLimit that is specified in the RateBasedRule.
sourcepub fn get_rate_key(&self) -> &Option<RateKey>
pub fn get_rate_key(&self) -> &Option<RateKey>
The field that AWS WAF uses to determine if requests are likely arriving from single source and thus subject to rate monitoring. The only valid value for RateKey is IP. IP indicates that requests arriving from the same IP address are subject to the RateLimit that is specified in the RateBasedRule.
sourcepub fn rate_limit(self, input: i64) -> Self
pub fn rate_limit(self, input: i64) -> Self
The maximum number of requests, which have an identical value in the field specified by the RateKey, allowed in a five-minute period. If the number of requests exceeds the RateLimit and the other predicates specified in the rule are also met, AWS WAF triggers the action that is specified for this rule.
sourcepub fn set_rate_limit(self, input: Option<i64>) -> Self
pub fn set_rate_limit(self, input: Option<i64>) -> Self
The maximum number of requests, which have an identical value in the field specified by the RateKey, allowed in a five-minute period. If the number of requests exceeds the RateLimit and the other predicates specified in the rule are also met, AWS WAF triggers the action that is specified for this rule.
sourcepub fn get_rate_limit(&self) -> &Option<i64>
pub fn get_rate_limit(&self) -> &Option<i64>
The maximum number of requests, which have an identical value in the field specified by the RateKey, allowed in a five-minute period. If the number of requests exceeds the RateLimit and the other predicates specified in the rule are also met, AWS WAF triggers the action that is specified for this rule.
sourcepub fn build(self) -> Result<RateBasedRule, BuildError>
pub fn build(self) -> Result<RateBasedRule, BuildError>
Consumes the builder and constructs a RateBasedRule.
This method will fail if any of the following fields are not set:
Trait Implementations§
source§impl Clone for RateBasedRuleBuilder
impl Clone for RateBasedRuleBuilder
source§fn clone(&self) -> RateBasedRuleBuilder
fn clone(&self) -> RateBasedRuleBuilder
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for RateBasedRuleBuilder
impl Debug for RateBasedRuleBuilder
source§impl Default for RateBasedRuleBuilder
impl Default for RateBasedRuleBuilder
source§fn default() -> RateBasedRuleBuilder
fn default() -> RateBasedRuleBuilder
source§impl PartialEq for RateBasedRuleBuilder
impl PartialEq for RateBasedRuleBuilder
impl StructuralPartialEq for RateBasedRuleBuilder
Auto Trait Implementations§
impl Freeze for RateBasedRuleBuilder
impl RefUnwindSafe for RateBasedRuleBuilder
impl Send for RateBasedRuleBuilder
impl Sync for RateBasedRuleBuilder
impl Unpin for RateBasedRuleBuilder
impl UnwindSafe for RateBasedRuleBuilder
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)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