File Coverage

blib/lib/Paws/WAF/WebACL.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::WebACL;
2 1     1   658 use Moose;
  1         18  
  1         12  
3             has DefaultAction => (is => 'ro', isa => 'Paws::WAF::WafAction', required => 1);
4             has MetricName => (is => 'ro', isa => 'Str');
5             has Name => (is => 'ro', isa => 'Str');
6             has Rules => (is => 'ro', isa => 'ArrayRef[Paws::WAF::ActivatedRule]', required => 1);
7             has WebACLId => (is => 'ro', isa => 'Str', required => 1);
8             1;
9              
10             ### main pod documentation begin ###
11              
12             =head1 NAME
13              
14             Paws::WAF::WebACL
15              
16             =head1 USAGE
17              
18             This class represents one of two things:
19              
20             =head3 Arguments in a call to a service
21              
22             Use the attributes of this class as arguments to methods. You shouldn't make instances of this class.
23             Each attribute should be used as a named argument in the calls that expect this type of object.
24              
25             As an example, if Att1 is expected to be a Paws::WAF::WebACL object:
26              
27             $service_obj->Method(Att1 => { DefaultAction => $value, ..., WebACLId => $value });
28              
29             =head3 Results returned from an API call
30              
31             Use accessors for each attribute. If Att1 is expected to be an Paws::WAF::WebACL object:
32              
33             $result = $service_obj->Method(...);
34             $result->Att1->DefaultAction
35              
36             =head1 DESCRIPTION
37              
38             Contains the C<Rules> that identify the requests that you want to
39             allow, block, or count. In a C<WebACL>, you also specify a default
40             action (C<ALLOW> or C<BLOCK>), and the action for each C<Rule> that you
41             add to a C<WebACL>, for example, block requests from specified IP
42             addresses or block requests from specified referrers. You also
43             associate the C<WebACL> with a CloudFront distribution to identify the
44             requests that you want AWS WAF to filter. If you add more than one
45             C<Rule> to a C<WebACL>, a request needs to match only one of the
46             specifications to be allowed, blocked, or counted. For more
47             information, see UpdateWebACL.
48              
49             =head1 ATTRIBUTES
50              
51              
52             =head2 B<REQUIRED> DefaultAction => L<Paws::WAF::WafAction>
53              
54             The action to perform if none of the C<Rules> contained in the
55             C<WebACL> match. The action is specified by the WafAction object.
56              
57              
58             =head2 MetricName => Str
59              
60             A friendly name or description for the metrics for this C<WebACL>. The
61             name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name
62             can't contain whitespace. You can't change C<MetricName> after you
63             create the C<WebACL>.
64              
65              
66             =head2 Name => Str
67              
68             A friendly name or description of the C<WebACL>. You can't change the
69             name of a C<WebACL> after you create it.
70              
71              
72             =head2 B<REQUIRED> Rules => ArrayRef[L<Paws::WAF::ActivatedRule>]
73              
74             An array that contains the action for each C<Rule> in a C<WebACL>, the
75             priority of the C<Rule>, and the ID of the C<Rule>.
76              
77              
78             =head2 B<REQUIRED> WebACLId => Str
79              
80             A unique identifier for a C<WebACL>. You use C<WebACLId> to get
81             information about a C<WebACL> (see GetWebACL), update a C<WebACL> (see
82             UpdateWebACL), and delete a C<WebACL> from AWS WAF (see DeleteWebACL).
83              
84             C<WebACLId> is returned by CreateWebACL and by ListWebACLs.
85              
86              
87              
88             =head1 SEE ALSO
89              
90             This class forms part of L<Paws>, describing an object used in L<Paws::WAF>
91              
92             =head1 BUGS and CONTRIBUTIONS
93              
94             The source code is located here: https://github.com/pplu/aws-sdk-perl
95              
96             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
97              
98             =cut
99