Class: Aws::WAF::Types::Rule

Inherits:
Struct
  • Object
show all
Includes:
Structure
Defined in:
lib/aws-sdk-waf/types.rb

Overview

<note markdown=“1”> This is **AWS WAF Classic** documentation. For more information, see

AWS WAF Classic][1

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.

</note>

A combination of ByteMatchSet, IPSet, and/or SqlInjectionMatchSet objects that identify the web requests that you want to allow, block, or count. For example, you might create a Rule that includes the following predicates:

  • An IPSet that causes AWS WAF to search for web requests that originate from the IP address 192.0.2.44

  • A ByteMatchSet that causes AWS WAF to search for web requests for which the value of the User-Agent header is BadBot.

To match the settings in this Rule, a request must originate from 192.0.2.44 AND include a User-Agent header for which the value is BadBot.

[1]: docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html [2]: docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#metric_nameString

A friendly name or description for the metrics for this Rule. 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 MetricName after you create the Rule.

Returns:

  • (String)


4194
4195
4196
4197
4198
4199
4200
4201
# File 'lib/aws-sdk-waf/types.rb', line 4194

class Rule < Struct.new(
  :rule_id,
  :name,
  :metric_name,
  :predicates)
  SENSITIVE = []
  include Aws::Structure
end

#nameString

The friendly name or description for the Rule. You can’t change the name of a Rule after you create it.

Returns:

  • (String)


4194
4195
4196
4197
4198
4199
4200
4201
# File 'lib/aws-sdk-waf/types.rb', line 4194

class Rule < Struct.new(
  :rule_id,
  :name,
  :metric_name,
  :predicates)
  SENSITIVE = []
  include Aws::Structure
end

#predicatesArray<Types::Predicate>

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

Returns:



4194
4195
4196
4197
4198
4199
4200
4201
# File 'lib/aws-sdk-waf/types.rb', line 4194

class Rule < Struct.new(
  :rule_id,
  :name,
  :metric_name,
  :predicates)
  SENSITIVE = []
  include Aws::Structure
end

#rule_idString

A unique identifier 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)


4194
4195
4196
4197
4198
4199
4200
4201
# File 'lib/aws-sdk-waf/types.rb', line 4194

class Rule < Struct.new(
  :rule_id,
  :name,
  :metric_name,
  :predicates)
  SENSITIVE = []
  include Aws::Structure
end