/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Details for a rule in an WAF web ACL.See Also:
AWS
* API Reference
Specifies the action that CloudFront or WAF takes when a web request matches * the conditions in the rule.
*/ inline const WafAction& GetAction() const{ return m_action; } /** *Specifies the action that CloudFront or WAF takes when a web request matches * the conditions in the rule.
*/ inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; } /** *Specifies the action that CloudFront or WAF takes when a web request matches * the conditions in the rule.
*/ inline void SetAction(const WafAction& value) { m_actionHasBeenSet = true; m_action = value; } /** *Specifies the action that CloudFront or WAF takes when a web request matches * the conditions in the rule.
*/ inline void SetAction(WafAction&& value) { m_actionHasBeenSet = true; m_action = std::move(value); } /** *Specifies the action that CloudFront or WAF takes when a web request matches * the conditions in the rule.
*/ inline AwsWafWebAclRule& WithAction(const WafAction& value) { SetAction(value); return *this;} /** *Specifies the action that CloudFront or WAF takes when a web request matches * the conditions in the rule.
*/ inline AwsWafWebAclRule& WithAction(WafAction&& value) { SetAction(std::move(value)); return *this;} /** *Rules to exclude from a rule group.
*/ inline const Aws::VectorRules to exclude from a rule group.
*/ inline bool ExcludedRulesHasBeenSet() const { return m_excludedRulesHasBeenSet; } /** *Rules to exclude from a rule group.
*/ inline void SetExcludedRules(const Aws::VectorRules to exclude from a rule group.
*/ inline void SetExcludedRules(Aws::VectorRules to exclude from a rule group.
*/ inline AwsWafWebAclRule& WithExcludedRules(const Aws::VectorRules to exclude from a rule group.
*/ inline AwsWafWebAclRule& WithExcludedRules(Aws::VectorRules to exclude from a rule group.
*/ inline AwsWafWebAclRule& AddExcludedRules(const WafExcludedRule& value) { m_excludedRulesHasBeenSet = true; m_excludedRules.push_back(value); return *this; } /** *Rules to exclude from a rule group.
*/ inline AwsWafWebAclRule& AddExcludedRules(WafExcludedRule&& value) { m_excludedRulesHasBeenSet = true; m_excludedRules.push_back(std::move(value)); return *this; } /** *Use the OverrideAction
to test your RuleGroup
.
Any rule in a RuleGroup
can potentially block a request. If you
* set the OverrideAction
to None
, the
* RuleGroup
blocks a request if any individual rule in the
* RuleGroup
matches the request and is configured to block that
* request.
However, if you first want to test the RuleGroup
,
* set the OverrideAction
to Count
. The
* RuleGroup
then overrides any block action specified by individual
* rules contained within the group. Instead of blocking matching requests, those
* requests are counted.
* ActivatedRule
|OverrideAction
applies only when
* updating or adding a RuleGroup
to a web ACL. In this case you do
* not use ActivatedRule
Action
. For all other update
* requests, ActivatedRule
Action
is used instead of
* ActivatedRule
OverrideAction
.
Use the OverrideAction
to test your RuleGroup
.
Any rule in a RuleGroup
can potentially block a request. If you
* set the OverrideAction
to None
, the
* RuleGroup
blocks a request if any individual rule in the
* RuleGroup
matches the request and is configured to block that
* request.
However, if you first want to test the RuleGroup
,
* set the OverrideAction
to Count
. The
* RuleGroup
then overrides any block action specified by individual
* rules contained within the group. Instead of blocking matching requests, those
* requests are counted.
* ActivatedRule
|OverrideAction
applies only when
* updating or adding a RuleGroup
to a web ACL. In this case you do
* not use ActivatedRule
Action
. For all other update
* requests, ActivatedRule
Action
is used instead of
* ActivatedRule
OverrideAction
.
Use the OverrideAction
to test your RuleGroup
.
Any rule in a RuleGroup
can potentially block a request. If you
* set the OverrideAction
to None
, the
* RuleGroup
blocks a request if any individual rule in the
* RuleGroup
matches the request and is configured to block that
* request.
However, if you first want to test the RuleGroup
,
* set the OverrideAction
to Count
. The
* RuleGroup
then overrides any block action specified by individual
* rules contained within the group. Instead of blocking matching requests, those
* requests are counted.
* ActivatedRule
|OverrideAction
applies only when
* updating or adding a RuleGroup
to a web ACL. In this case you do
* not use ActivatedRule
Action
. For all other update
* requests, ActivatedRule
Action
is used instead of
* ActivatedRule
OverrideAction
.
Use the OverrideAction
to test your RuleGroup
.
Any rule in a RuleGroup
can potentially block a request. If you
* set the OverrideAction
to None
, the
* RuleGroup
blocks a request if any individual rule in the
* RuleGroup
matches the request and is configured to block that
* request.
However, if you first want to test the RuleGroup
,
* set the OverrideAction
to Count
. The
* RuleGroup
then overrides any block action specified by individual
* rules contained within the group. Instead of blocking matching requests, those
* requests are counted.
* ActivatedRule
|OverrideAction
applies only when
* updating or adding a RuleGroup
to a web ACL. In this case you do
* not use ActivatedRule
Action
. For all other update
* requests, ActivatedRule
Action
is used instead of
* ActivatedRule
OverrideAction
.
Use the OverrideAction
to test your RuleGroup
.
Any rule in a RuleGroup
can potentially block a request. If you
* set the OverrideAction
to None
, the
* RuleGroup
blocks a request if any individual rule in the
* RuleGroup
matches the request and is configured to block that
* request.
However, if you first want to test the RuleGroup
,
* set the OverrideAction
to Count
. The
* RuleGroup
then overrides any block action specified by individual
* rules contained within the group. Instead of blocking matching requests, those
* requests are counted.
* ActivatedRule
|OverrideAction
applies only when
* updating or adding a RuleGroup
to a web ACL. In this case you do
* not use ActivatedRule
Action
. For all other update
* requests, ActivatedRule
Action
is used instead of
* ActivatedRule
OverrideAction
.
Use the OverrideAction
to test your RuleGroup
.
Any rule in a RuleGroup
can potentially block a request. If you
* set the OverrideAction
to None
, the
* RuleGroup
blocks a request if any individual rule in the
* RuleGroup
matches the request and is configured to block that
* request.
However, if you first want to test the RuleGroup
,
* set the OverrideAction
to Count
. The
* RuleGroup
then overrides any block action specified by individual
* rules contained within the group. Instead of blocking matching requests, those
* requests are counted.
* ActivatedRule
|OverrideAction
applies only when
* updating or adding a RuleGroup
to a web ACL. In this case you do
* not use ActivatedRule
Action
. For all other update
* requests, ActivatedRule
Action
is used instead of
* ActivatedRule
OverrideAction
.
Specifies the order in which the rules in a web ACL are evaluated. Rules with
* a lower value for Priority
are evaluated before rules with a higher
* value. The value must be a unique integer. If you add multiple rules to a web
* ACL, the values do not need to be consecutive.
Specifies the order in which the rules in a web ACL are evaluated. Rules with
* a lower value for Priority
are evaluated before rules with a higher
* value. The value must be a unique integer. If you add multiple rules to a web
* ACL, the values do not need to be consecutive.
Specifies the order in which the rules in a web ACL are evaluated. Rules with
* a lower value for Priority
are evaluated before rules with a higher
* value. The value must be a unique integer. If you add multiple rules to a web
* ACL, the values do not need to be consecutive.
Specifies the order in which the rules in a web ACL are evaluated. Rules with
* a lower value for Priority
are evaluated before rules with a higher
* value. The value must be a unique integer. If you add multiple rules to a web
* ACL, the values do not need to be consecutive.
The identifier for a rule.
*/ inline const Aws::String& GetRuleId() const{ return m_ruleId; } /** *The identifier for a rule.
*/ inline bool RuleIdHasBeenSet() const { return m_ruleIdHasBeenSet; } /** *The identifier for a rule.
*/ inline void SetRuleId(const Aws::String& value) { m_ruleIdHasBeenSet = true; m_ruleId = value; } /** *The identifier for a rule.
*/ inline void SetRuleId(Aws::String&& value) { m_ruleIdHasBeenSet = true; m_ruleId = std::move(value); } /** *The identifier for a rule.
*/ inline void SetRuleId(const char* value) { m_ruleIdHasBeenSet = true; m_ruleId.assign(value); } /** *The identifier for a rule.
*/ inline AwsWafWebAclRule& WithRuleId(const Aws::String& value) { SetRuleId(value); return *this;} /** *The identifier for a rule.
*/ inline AwsWafWebAclRule& WithRuleId(Aws::String&& value) { SetRuleId(std::move(value)); return *this;} /** *The identifier for a rule.
*/ inline AwsWafWebAclRule& WithRuleId(const char* value) { SetRuleId(value); return *this;} /** *The rule type.
Valid values: REGULAR
|
* RATE_BASED
| GROUP
The default is
* REGULAR
.
The rule type.
Valid values: REGULAR
|
* RATE_BASED
| GROUP
The default is
* REGULAR
.
The rule type.
Valid values: REGULAR
|
* RATE_BASED
| GROUP
The default is
* REGULAR
.
The rule type.
Valid values: REGULAR
|
* RATE_BASED
| GROUP
The default is
* REGULAR
.
The rule type.
Valid values: REGULAR
|
* RATE_BASED
| GROUP
The default is
* REGULAR
.
The rule type.
Valid values: REGULAR
|
* RATE_BASED
| GROUP
The default is
* REGULAR
.
The rule type.
Valid values: REGULAR
|
* RATE_BASED
| GROUP
The default is
* REGULAR
.
The rule type.
Valid values: REGULAR
|
* RATE_BASED
| GROUP
The default is
* REGULAR
.