AWS SDK for C++  1.9.106
AWS SDK for C++
Public Member Functions | List of all members
Aws::WAF::Model::RateBasedRule Class Reference

#include <RateBasedRule.h>

Public Member Functions

 RateBasedRule ()
 
 RateBasedRule (Aws::Utils::Json::JsonView jsonValue)
 
RateBasedRuleoperator= (Aws::Utils::Json::JsonView jsonValue)
 
Aws::Utils::Json::JsonValue Jsonize () const
 
const Aws::StringGetRuleId () const
 
bool RuleIdHasBeenSet () const
 
void SetRuleId (const Aws::String &value)
 
void SetRuleId (Aws::String &&value)
 
void SetRuleId (const char *value)
 
RateBasedRuleWithRuleId (const Aws::String &value)
 
RateBasedRuleWithRuleId (Aws::String &&value)
 
RateBasedRuleWithRuleId (const char *value)
 
const Aws::StringGetName () const
 
bool NameHasBeenSet () const
 
void SetName (const Aws::String &value)
 
void SetName (Aws::String &&value)
 
void SetName (const char *value)
 
RateBasedRuleWithName (const Aws::String &value)
 
RateBasedRuleWithName (Aws::String &&value)
 
RateBasedRuleWithName (const char *value)
 
const Aws::StringGetMetricName () const
 
bool MetricNameHasBeenSet () const
 
void SetMetricName (const Aws::String &value)
 
void SetMetricName (Aws::String &&value)
 
void SetMetricName (const char *value)
 
RateBasedRuleWithMetricName (const Aws::String &value)
 
RateBasedRuleWithMetricName (Aws::String &&value)
 
RateBasedRuleWithMetricName (const char *value)
 
const Aws::Vector< Predicate > & GetMatchPredicates () const
 
bool MatchPredicatesHasBeenSet () const
 
void SetMatchPredicates (const Aws::Vector< Predicate > &value)
 
void SetMatchPredicates (Aws::Vector< Predicate > &&value)
 
RateBasedRuleWithMatchPredicates (const Aws::Vector< Predicate > &value)
 
RateBasedRuleWithMatchPredicates (Aws::Vector< Predicate > &&value)
 
RateBasedRuleAddMatchPredicates (const Predicate &value)
 
RateBasedRuleAddMatchPredicates (Predicate &&value)
 
const RateKeyGetRateKey () const
 
bool RateKeyHasBeenSet () const
 
void SetRateKey (const RateKey &value)
 
void SetRateKey (RateKey &&value)
 
RateBasedRuleWithRateKey (const RateKey &value)
 
RateBasedRuleWithRateKey (RateKey &&value)
 
long long GetRateLimit () const
 
bool RateLimitHasBeenSet () const
 
void SetRateLimit (long long value)
 
RateBasedRuleWithRateLimit (long long value)
 

Detailed Description

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints for regional and global use.

A RateBasedRule is identical to a regular Rule, with one addition: a RateBasedRule counts the number of requests that arrive from a specified IP address every five minutes. For example, based on recent requests that you've seen from an attacker, you might create a RateBasedRule that includes the following conditions:

In the rule, you also define the rate limit as 1,000.

Requests that meet both of these conditions and exceed 1,000 requests every five minutes trigger the rule's action (block or count), which is defined in the web ACL.

See Also:

AWS API Reference

Definition at line 52 of file RateBasedRule.h.

Constructor & Destructor Documentation

◆ RateBasedRule() [1/2]

Aws::WAF::Model::RateBasedRule::RateBasedRule ( )

◆ RateBasedRule() [2/2]

Aws::WAF::Model::RateBasedRule::RateBasedRule ( Aws::Utils::Json::JsonView  jsonValue)

Member Function Documentation

◆ AddMatchPredicates() [1/2]

RateBasedRule& Aws::WAF::Model::RateBasedRule::AddMatchPredicates ( const Predicate value)
inline

The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.

Definition at line 334 of file RateBasedRule.h.

◆ AddMatchPredicates() [2/2]

RateBasedRule& Aws::WAF::Model::RateBasedRule::AddMatchPredicates ( Predicate &&  value)
inline

The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.

Definition at line 342 of file RateBasedRule.h.

◆ GetMatchPredicates()

const Aws::Vector<Predicate>& Aws::WAF::Model::RateBasedRule::GetMatchPredicates ( ) const
inline

The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.

Definition at line 286 of file RateBasedRule.h.

◆ GetMetricName()

const Aws::String& Aws::WAF::Model::RateBasedRule::GetMetricName ( ) const
inline

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.

Definition at line 207 of file RateBasedRule.h.

◆ GetName()

const Aws::String& Aws::WAF::Model::RateBasedRule::GetName ( ) const
inline

A friendly name or description for a RateBasedRule. You can't change the name of a RateBasedRule after you create it.

Definition at line 154 of file RateBasedRule.h.

◆ GetRateKey()

const RateKey& Aws::WAF::Model::RateBasedRule::GetRateKey ( ) const
inline

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.

Definition at line 352 of file RateBasedRule.h.

◆ GetRateLimit()

long long Aws::WAF::Model::RateBasedRule::GetRateLimit ( ) const
inline

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.

Definition at line 407 of file RateBasedRule.h.

◆ GetRuleId()

const Aws::String& Aws::WAF::Model::RateBasedRule::GetRuleId ( ) const
inline

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).

Definition at line 70 of file RateBasedRule.h.

◆ Jsonize()

Aws::Utils::Json::JsonValue Aws::WAF::Model::RateBasedRule::Jsonize ( ) const

◆ MatchPredicatesHasBeenSet()

bool Aws::WAF::Model::RateBasedRule::MatchPredicatesHasBeenSet ( ) const
inline

The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.

Definition at line 294 of file RateBasedRule.h.

◆ MetricNameHasBeenSet()

bool Aws::WAF::Model::RateBasedRule::MetricNameHasBeenSet ( ) const
inline

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.

Definition at line 217 of file RateBasedRule.h.

◆ NameHasBeenSet()

bool Aws::WAF::Model::RateBasedRule::NameHasBeenSet ( ) const
inline

A friendly name or description for a RateBasedRule. You can't change the name of a RateBasedRule after you create it.

Definition at line 160 of file RateBasedRule.h.

◆ operator=()

RateBasedRule& Aws::WAF::Model::RateBasedRule::operator= ( Aws::Utils::Json::JsonView  jsonValue)

◆ RateKeyHasBeenSet()

bool Aws::WAF::Model::RateBasedRule::RateKeyHasBeenSet ( ) const
inline

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.

Definition at line 361 of file RateBasedRule.h.

◆ RateLimitHasBeenSet()

bool Aws::WAF::Model::RateBasedRule::RateLimitHasBeenSet ( ) const
inline

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.

Definition at line 416 of file RateBasedRule.h.

◆ RuleIdHasBeenSet()

bool Aws::WAF::Model::RateBasedRule::RuleIdHasBeenSet ( ) const
inline

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).

Definition at line 81 of file RateBasedRule.h.

◆ SetMatchPredicates() [1/2]

void Aws::WAF::Model::RateBasedRule::SetMatchPredicates ( Aws::Vector< Predicate > &&  value)
inline

The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.

Definition at line 310 of file RateBasedRule.h.

◆ SetMatchPredicates() [2/2]

void Aws::WAF::Model::RateBasedRule::SetMatchPredicates ( const Aws::Vector< Predicate > &  value)
inline

The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.

Definition at line 302 of file RateBasedRule.h.

◆ SetMetricName() [1/3]

void Aws::WAF::Model::RateBasedRule::SetMetricName ( Aws::String &&  value)
inline

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.

Definition at line 237 of file RateBasedRule.h.

◆ SetMetricName() [2/3]

void Aws::WAF::Model::RateBasedRule::SetMetricName ( const Aws::String value)
inline

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.

Definition at line 227 of file RateBasedRule.h.

◆ SetMetricName() [3/3]

void Aws::WAF::Model::RateBasedRule::SetMetricName ( const char *  value)
inline

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.

Definition at line 247 of file RateBasedRule.h.

◆ SetName() [1/3]

void Aws::WAF::Model::RateBasedRule::SetName ( Aws::String &&  value)
inline

A friendly name or description for a RateBasedRule. You can't change the name of a RateBasedRule after you create it.

Definition at line 172 of file RateBasedRule.h.

◆ SetName() [2/3]

void Aws::WAF::Model::RateBasedRule::SetName ( const Aws::String value)
inline

A friendly name or description for a RateBasedRule. You can't change the name of a RateBasedRule after you create it.

Definition at line 166 of file RateBasedRule.h.

◆ SetName() [3/3]

void Aws::WAF::Model::RateBasedRule::SetName ( const char *  value)
inline

A friendly name or description for a RateBasedRule. You can't change the name of a RateBasedRule after you create it.

Definition at line 178 of file RateBasedRule.h.

◆ SetRateKey() [1/2]

void Aws::WAF::Model::RateBasedRule::SetRateKey ( const RateKey value)
inline

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.

Definition at line 370 of file RateBasedRule.h.

◆ SetRateKey() [2/2]

void Aws::WAF::Model::RateBasedRule::SetRateKey ( RateKey &&  value)
inline

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.

Definition at line 379 of file RateBasedRule.h.

◆ SetRateLimit()

void Aws::WAF::Model::RateBasedRule::SetRateLimit ( long long  value)
inline

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.

Definition at line 425 of file RateBasedRule.h.

◆ SetRuleId() [1/3]

void Aws::WAF::Model::RateBasedRule::SetRuleId ( Aws::String &&  value)
inline

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).

Definition at line 103 of file RateBasedRule.h.

◆ SetRuleId() [2/3]

void Aws::WAF::Model::RateBasedRule::SetRuleId ( const Aws::String value)
inline

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).

Definition at line 92 of file RateBasedRule.h.

◆ SetRuleId() [3/3]

void Aws::WAF::Model::RateBasedRule::SetRuleId ( const char *  value)
inline

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).

Definition at line 114 of file RateBasedRule.h.

◆ WithMatchPredicates() [1/2]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithMatchPredicates ( Aws::Vector< Predicate > &&  value)
inline

The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.

Definition at line 326 of file RateBasedRule.h.

◆ WithMatchPredicates() [2/2]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithMatchPredicates ( const Aws::Vector< Predicate > &  value)
inline

The Predicates object contains one Predicate element for each ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.

Definition at line 318 of file RateBasedRule.h.

◆ WithMetricName() [1/3]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithMetricName ( Aws::String &&  value)
inline

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.

Definition at line 267 of file RateBasedRule.h.

◆ WithMetricName() [2/3]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithMetricName ( const Aws::String value)
inline

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.

Definition at line 257 of file RateBasedRule.h.

◆ WithMetricName() [3/3]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithMetricName ( const char *  value)
inline

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.

Definition at line 277 of file RateBasedRule.h.

◆ WithName() [1/3]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithName ( Aws::String &&  value)
inline

A friendly name or description for a RateBasedRule. You can't change the name of a RateBasedRule after you create it.

Definition at line 190 of file RateBasedRule.h.

◆ WithName() [2/3]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithName ( const Aws::String value)
inline

A friendly name or description for a RateBasedRule. You can't change the name of a RateBasedRule after you create it.

Definition at line 184 of file RateBasedRule.h.

◆ WithName() [3/3]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithName ( const char *  value)
inline

A friendly name or description for a RateBasedRule. You can't change the name of a RateBasedRule after you create it.

Definition at line 196 of file RateBasedRule.h.

◆ WithRateKey() [1/2]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithRateKey ( const RateKey value)
inline

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.

Definition at line 388 of file RateBasedRule.h.

◆ WithRateKey() [2/2]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithRateKey ( RateKey &&  value)
inline

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.

Definition at line 397 of file RateBasedRule.h.

◆ WithRateLimit()

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithRateLimit ( long long  value)
inline

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.

Definition at line 434 of file RateBasedRule.h.

◆ WithRuleId() [1/3]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithRuleId ( Aws::String &&  value)
inline

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).

Definition at line 136 of file RateBasedRule.h.

◆ WithRuleId() [2/3]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithRuleId ( const Aws::String value)
inline

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).

Definition at line 125 of file RateBasedRule.h.

◆ WithRuleId() [3/3]

RateBasedRule& Aws::WAF::Model::RateBasedRule::WithRuleId ( const char *  value)
inline

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).

Definition at line 147 of file RateBasedRule.h.


The documentation for this class was generated from the following file: