You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Aws::WAFRegional::Types::ActivatedRule

Inherits:
Struct
  • Object
show all
Defined in:
(unknown)

Overview

Note:

When passing ActivatedRule as input to an Aws::Client method, you can use a vanilla Hash:

{
  priority: 1, # required
  rule_id: "ResourceId", # required
  action: {
    type: "BLOCK", # required, accepts BLOCK, ALLOW, COUNT
  },
  override_action: {
    type: "NONE", # required, accepts NONE, COUNT
  },
  type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
}

The ActivatedRule object in an UpdateWebACL request specifies a Rule that you want to insert or delete, the priority of the Rule in the WebACL, and the action that you want AWS WAF to take when a web request matches the Rule (ALLOW, BLOCK, or COUNT).

To specify whether to insert or delete a Rule, use the Action parameter in the WebACLUpdate data type.

Returned by:

Instance Attribute Summary collapse

Instance Attribute Details

#actionTypes::WafAction

Specifies the action that CloudFront or AWS WAF takes when a web request matches the conditions in the Rule. Valid values for Action include the following:

  • ALLOW: CloudFront responds with the requested object.

  • BLOCK: CloudFront responds with an HTTP 403 (Forbidden) status code.

  • COUNT: AWS WAF increments a counter of requests that match the conditions in the rule and then continues to inspect the web request based on the remaining rules in the web ACL.

The Action data type within ActivatedRule is used only when submitting an UpdateWebACL request. ActivatedRule|Action is not applicable and therefore not available for UpdateRuleGroup.

Returns:

  • (Types::WafAction)

    Specifies the action that CloudFront or AWS WAF takes when a web request matches the conditions in the Rule.

#override_actionTypes::WafOverrideAction

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 will block 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 will then override any block action specified by individual rules contained within the group. Instead of blocking matching requests, those requests will be counted. You can view a record of counted requests using GetSampledRequests.

The OverrideAction data type within ActivatedRule is used only when submitting an UpdateRuleGroup request. ActivatedRule|OverrideAction is not applicable and therefore not available for UpdateWebACL.

Returns:

#priorityInteger

Specifies the order in which the Rules in a WebACL 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 WebACL, the values don\'t need to be consecutive.

Returns:

  • (Integer)

    Specifies the order in which the Rules in a WebACL are evaluated.

#rule_idString

The RuleId for a Rule. You use RuleId to get more information about a Rule (see GetRule), update a Rule (see UpdateRule), insert a Rule into a WebACL or delete a one from a WebACL (see UpdateWebACL), or delete a Rule from AWS WAF (see DeleteRule).

RuleId is returned by CreateRule and by ListRules.

Returns:

  • (String)

    The RuleId for a Rule.

#typeString

The rule type, either REGULAR, as defined by Rule, RATE_BASED, as defined by RateBasedRule, or GROUP, as defined by RuleGroup. The default is REGULAR. Although this field is optional, be aware that if you try to add a RATE_BASED rule to a web ACL without setting the type, the UpdateWebACL request will fail because the request tries to add a REGULAR rule with the specified ID, which does not exist.

Possible values:

  • REGULAR
  • RATE_BASED
  • GROUP

Returns:

  • (String)

    The rule type, either REGULAR, as defined by Rule, RATE_BASED, as defined by RateBasedRule, or GROUP, as defined by RuleGroup.