File Coverage

blib/lib/Paws/WAF/Rule.pm
Criterion Covered Total %
statement 3 3 100.0
branch n/a
condition n/a
subroutine 1 1 100.0
pod n/a
total 4 4 100.0


line stmt bran cond sub pod time code
1             package Paws::WAF::Rule;
2 1     1   551 use Moose;
  1         4  
  1         8  
3             has MetricName => (is => 'ro', isa => 'Str');
4             has Name => (is => 'ro', isa => 'Str');
5             has Predicates => (is => 'ro', isa => 'ArrayRef[Paws::WAF::Predicate]', required => 1);
6             has RuleId => (is => 'ro', isa => 'Str', required => 1);
7             1;
8              
9             ### main pod documentation begin ###
10              
11             =head1 NAME
12              
13             Paws::WAF::Rule
14              
15             =head1 USAGE
16              
17             This class represents one of two things:
18              
19             =head3 Arguments in a call to a service
20              
21             Use the attributes of this class as arguments to methods. You shouldn't make instances of this class.
22             Each attribute should be used as a named argument in the calls that expect this type of object.
23              
24             As an example, if Att1 is expected to be a Paws::WAF::Rule object:
25              
26             $service_obj->Method(Att1 => { MetricName => $value, ..., RuleId => $value });
27              
28             =head3 Results returned from an API call
29              
30             Use accessors for each attribute. If Att1 is expected to be an Paws::WAF::Rule object:
31              
32             $result = $service_obj->Method(...);
33             $result->Att1->MetricName
34              
35             =head1 DESCRIPTION
36              
37             A combination of ByteMatchSet, IPSet, and/or SqlInjectionMatchSet
38             objects that identify the web requests that you want to allow, block,
39             or count. For example, you might create a C<Rule> that includes the
40             following predicates:
41              
42             =over
43              
44             =item *
45              
46             An C<IPSet> that causes AWS WAF to search for web requests that
47             originate from the IP address C<192.0.2.44>
48              
49             =item *
50              
51             A C<ByteMatchSet> that causes AWS WAF to search for web requests for
52             which the value of the C<User-Agent> header is C<BadBot>.
53              
54             =back
55              
56             To match the settings in this C<Rule>, a request must originate from
57             C<192.0.2.44> AND include a C<User-Agent> header for which the value is
58             C<BadBot>.
59              
60             =head1 ATTRIBUTES
61              
62              
63             =head2 MetricName => Str
64              
65             A friendly name or description for the metrics for this C<Rule>. The
66             name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name
67             can't contain whitespace. You can't change C<MetricName> after you
68             create the C<Rule>.
69              
70              
71             =head2 Name => Str
72              
73             The friendly name or description for the C<Rule>. You can't change the
74             name of a C<Rule> after you create it.
75              
76              
77             =head2 B<REQUIRED> Predicates => ArrayRef[L<Paws::WAF::Predicate>]
78              
79             The C<Predicates> object contains one C<Predicate> element for each
80             ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to
81             include in a C<Rule>.
82              
83              
84             =head2 B<REQUIRED> RuleId => Str
85              
86             A unique identifier for a C<Rule>. You use C<RuleId> to get more
87             information about a C<Rule> (see GetRule), update a C<Rule> (see
88             UpdateRule), insert a C<Rule> into a C<WebACL> or delete a one from a
89             C<WebACL> (see UpdateWebACL), or delete a C<Rule> from AWS WAF (see
90             DeleteRule).
91              
92             C<RuleId> is returned by CreateRule and by ListRules.
93              
94              
95              
96             =head1 SEE ALSO
97              
98             This class forms part of L<Paws>, describing an object used in L<Paws::WAF>
99              
100             =head1 BUGS and CONTRIBUTIONS
101              
102             The source code is located here: https://github.com/pplu/aws-sdk-perl
103              
104             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
105              
106             =cut
107