aws-sdk-wafv2 1.14.0 → 1.19.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +108 -0
- data/LICENSE.txt +202 -0
- data/VERSION +1 -0
- data/lib/aws-sdk-wafv2.rb +2 -2
- data/lib/aws-sdk-wafv2/client.rb +732 -416
- data/lib/aws-sdk-wafv2/client_api.rb +65 -1
- data/lib/aws-sdk-wafv2/errors.rb +1 -1
- data/lib/aws-sdk-wafv2/resource.rb +1 -1
- data/lib/aws-sdk-wafv2/types.rb +1695 -663
- metadata +10 -7
@@ -3,7 +3,7 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
@@ -14,6 +14,7 @@ module Aws::WAFV2
|
|
14
14
|
include Seahorse::Model
|
15
15
|
|
16
16
|
Action = Shapes::StringShape.new(name: 'Action')
|
17
|
+
All = Shapes::StructureShape.new(name: 'All')
|
17
18
|
AllQueryArguments = Shapes::StructureShape.new(name: 'AllQueryArguments')
|
18
19
|
AllowAction = Shapes::StructureShape.new(name: 'AllowAction')
|
19
20
|
AndStatement = Shapes::StructureShape.new(name: 'AndStatement')
|
@@ -21,6 +22,7 @@ module Aws::WAFV2
|
|
21
22
|
AssociateWebACLResponse = Shapes::StructureShape.new(name: 'AssociateWebACLResponse')
|
22
23
|
BlockAction = Shapes::StructureShape.new(name: 'BlockAction')
|
23
24
|
Body = Shapes::StructureShape.new(name: 'Body')
|
25
|
+
BodyParsingFallbackBehavior = Shapes::StringShape.new(name: 'BodyParsingFallbackBehavior')
|
24
26
|
Boolean = Shapes::BooleanShape.new(name: 'Boolean')
|
25
27
|
ByteMatchStatement = Shapes::StructureShape.new(name: 'ByteMatchStatement')
|
26
28
|
CapacityUnit = Shapes::IntegerShape.new(name: 'CapacityUnit')
|
@@ -40,6 +42,14 @@ module Aws::WAFV2
|
|
40
42
|
CreateRuleGroupResponse = Shapes::StructureShape.new(name: 'CreateRuleGroupResponse')
|
41
43
|
CreateWebACLRequest = Shapes::StructureShape.new(name: 'CreateWebACLRequest')
|
42
44
|
CreateWebACLResponse = Shapes::StructureShape.new(name: 'CreateWebACLResponse')
|
45
|
+
CustomHTTPHeader = Shapes::StructureShape.new(name: 'CustomHTTPHeader')
|
46
|
+
CustomHTTPHeaderName = Shapes::StringShape.new(name: 'CustomHTTPHeaderName')
|
47
|
+
CustomHTTPHeaderValue = Shapes::StringShape.new(name: 'CustomHTTPHeaderValue')
|
48
|
+
CustomHTTPHeaders = Shapes::ListShape.new(name: 'CustomHTTPHeaders')
|
49
|
+
CustomRequestHandling = Shapes::StructureShape.new(name: 'CustomRequestHandling')
|
50
|
+
CustomResponse = Shapes::StructureShape.new(name: 'CustomResponse')
|
51
|
+
CustomResponseBodies = Shapes::MapShape.new(name: 'CustomResponseBodies')
|
52
|
+
CustomResponseBody = Shapes::StructureShape.new(name: 'CustomResponseBody')
|
43
53
|
DefaultAction = Shapes::StructureShape.new(name: 'DefaultAction')
|
44
54
|
DeleteFirewallManagerRuleGroupsRequest = Shapes::StructureShape.new(name: 'DeleteFirewallManagerRuleGroupsRequest')
|
45
55
|
DeleteFirewallManagerRuleGroupsResponse = Shapes::StructureShape.new(name: 'DeleteFirewallManagerRuleGroupsResponse')
|
@@ -110,6 +120,11 @@ module Aws::WAFV2
|
|
110
120
|
IPSetSummaries = Shapes::ListShape.new(name: 'IPSetSummaries')
|
111
121
|
IPSetSummary = Shapes::StructureShape.new(name: 'IPSetSummary')
|
112
122
|
IPString = Shapes::StringShape.new(name: 'IPString')
|
123
|
+
JsonBody = Shapes::StructureShape.new(name: 'JsonBody')
|
124
|
+
JsonMatchPattern = Shapes::StructureShape.new(name: 'JsonMatchPattern')
|
125
|
+
JsonMatchScope = Shapes::StringShape.new(name: 'JsonMatchScope')
|
126
|
+
JsonPointerPath = Shapes::StringShape.new(name: 'JsonPointerPath')
|
127
|
+
JsonPointerPaths = Shapes::ListShape.new(name: 'JsonPointerPaths')
|
113
128
|
ListAvailableManagedRuleGroupsRequest = Shapes::StructureShape.new(name: 'ListAvailableManagedRuleGroupsRequest')
|
114
129
|
ListAvailableManagedRuleGroupsResponse = Shapes::StructureShape.new(name: 'ListAvailableManagedRuleGroupsResponse')
|
115
130
|
ListIPSetsRequest = Shapes::StructureShape.new(name: 'ListIPSetsRequest')
|
@@ -167,6 +182,9 @@ module Aws::WAFV2
|
|
167
182
|
ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
|
168
183
|
ResourceArns = Shapes::ListShape.new(name: 'ResourceArns')
|
169
184
|
ResourceType = Shapes::StringShape.new(name: 'ResourceType')
|
185
|
+
ResponseContent = Shapes::StringShape.new(name: 'ResponseContent')
|
186
|
+
ResponseContentType = Shapes::StringShape.new(name: 'ResponseContentType')
|
187
|
+
ResponseStatusCode = Shapes::IntegerShape.new(name: 'ResponseStatusCode')
|
170
188
|
Rule = Shapes::StructureShape.new(name: 'Rule')
|
171
189
|
RuleAction = Shapes::StructureShape.new(name: 'RuleAction')
|
172
190
|
RuleGroup = Shapes::StructureShape.new(name: 'RuleGroup')
|
@@ -237,8 +255,11 @@ module Aws::WAFV2
|
|
237
255
|
WebACLSummary = Shapes::StructureShape.new(name: 'WebACLSummary')
|
238
256
|
XssMatchStatement = Shapes::StructureShape.new(name: 'XssMatchStatement')
|
239
257
|
|
258
|
+
All.struct_class = Types::All
|
259
|
+
|
240
260
|
AllQueryArguments.struct_class = Types::AllQueryArguments
|
241
261
|
|
262
|
+
AllowAction.add_member(:custom_request_handling, Shapes::ShapeRef.new(shape: CustomRequestHandling, location_name: "CustomRequestHandling"))
|
242
263
|
AllowAction.struct_class = Types::AllowAction
|
243
264
|
|
244
265
|
AndStatement.add_member(:statements, Shapes::ShapeRef.new(shape: Statements, required: true, location_name: "Statements"))
|
@@ -250,6 +271,7 @@ module Aws::WAFV2
|
|
250
271
|
|
251
272
|
AssociateWebACLResponse.struct_class = Types::AssociateWebACLResponse
|
252
273
|
|
274
|
+
BlockAction.add_member(:custom_response, Shapes::ShapeRef.new(shape: CustomResponse, location_name: "CustomResponse"))
|
253
275
|
BlockAction.struct_class = Types::BlockAction
|
254
276
|
|
255
277
|
Body.struct_class = Types::Body
|
@@ -267,6 +289,7 @@ module Aws::WAFV2
|
|
267
289
|
CheckCapacityResponse.add_member(:capacity, Shapes::ShapeRef.new(shape: ConsumedCapacity, location_name: "Capacity"))
|
268
290
|
CheckCapacityResponse.struct_class = Types::CheckCapacityResponse
|
269
291
|
|
292
|
+
CountAction.add_member(:custom_request_handling, Shapes::ShapeRef.new(shape: CustomRequestHandling, location_name: "CustomRequestHandling"))
|
270
293
|
CountAction.struct_class = Types::CountAction
|
271
294
|
|
272
295
|
CountryCodes.member = Shapes::ShapeRef.new(shape: CountryCode)
|
@@ -299,6 +322,7 @@ module Aws::WAFV2
|
|
299
322
|
CreateRuleGroupRequest.add_member(:rules, Shapes::ShapeRef.new(shape: Rules, location_name: "Rules"))
|
300
323
|
CreateRuleGroupRequest.add_member(:visibility_config, Shapes::ShapeRef.new(shape: VisibilityConfig, required: true, location_name: "VisibilityConfig"))
|
301
324
|
CreateRuleGroupRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
|
325
|
+
CreateRuleGroupRequest.add_member(:custom_response_bodies, Shapes::ShapeRef.new(shape: CustomResponseBodies, location_name: "CustomResponseBodies"))
|
302
326
|
CreateRuleGroupRequest.struct_class = Types::CreateRuleGroupRequest
|
303
327
|
|
304
328
|
CreateRuleGroupResponse.add_member(:summary, Shapes::ShapeRef.new(shape: RuleGroupSummary, location_name: "Summary"))
|
@@ -311,11 +335,33 @@ module Aws::WAFV2
|
|
311
335
|
CreateWebACLRequest.add_member(:rules, Shapes::ShapeRef.new(shape: Rules, location_name: "Rules"))
|
312
336
|
CreateWebACLRequest.add_member(:visibility_config, Shapes::ShapeRef.new(shape: VisibilityConfig, required: true, location_name: "VisibilityConfig"))
|
313
337
|
CreateWebACLRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
|
338
|
+
CreateWebACLRequest.add_member(:custom_response_bodies, Shapes::ShapeRef.new(shape: CustomResponseBodies, location_name: "CustomResponseBodies"))
|
314
339
|
CreateWebACLRequest.struct_class = Types::CreateWebACLRequest
|
315
340
|
|
316
341
|
CreateWebACLResponse.add_member(:summary, Shapes::ShapeRef.new(shape: WebACLSummary, location_name: "Summary"))
|
317
342
|
CreateWebACLResponse.struct_class = Types::CreateWebACLResponse
|
318
343
|
|
344
|
+
CustomHTTPHeader.add_member(:name, Shapes::ShapeRef.new(shape: CustomHTTPHeaderName, required: true, location_name: "Name"))
|
345
|
+
CustomHTTPHeader.add_member(:value, Shapes::ShapeRef.new(shape: CustomHTTPHeaderValue, required: true, location_name: "Value"))
|
346
|
+
CustomHTTPHeader.struct_class = Types::CustomHTTPHeader
|
347
|
+
|
348
|
+
CustomHTTPHeaders.member = Shapes::ShapeRef.new(shape: CustomHTTPHeader)
|
349
|
+
|
350
|
+
CustomRequestHandling.add_member(:insert_headers, Shapes::ShapeRef.new(shape: CustomHTTPHeaders, required: true, location_name: "InsertHeaders"))
|
351
|
+
CustomRequestHandling.struct_class = Types::CustomRequestHandling
|
352
|
+
|
353
|
+
CustomResponse.add_member(:response_code, Shapes::ShapeRef.new(shape: ResponseStatusCode, required: true, location_name: "ResponseCode"))
|
354
|
+
CustomResponse.add_member(:custom_response_body_key, Shapes::ShapeRef.new(shape: EntityName, location_name: "CustomResponseBodyKey"))
|
355
|
+
CustomResponse.add_member(:response_headers, Shapes::ShapeRef.new(shape: CustomHTTPHeaders, location_name: "ResponseHeaders"))
|
356
|
+
CustomResponse.struct_class = Types::CustomResponse
|
357
|
+
|
358
|
+
CustomResponseBodies.key = Shapes::ShapeRef.new(shape: EntityName)
|
359
|
+
CustomResponseBodies.value = Shapes::ShapeRef.new(shape: CustomResponseBody)
|
360
|
+
|
361
|
+
CustomResponseBody.add_member(:content_type, Shapes::ShapeRef.new(shape: ResponseContentType, required: true, location_name: "ContentType"))
|
362
|
+
CustomResponseBody.add_member(:content, Shapes::ShapeRef.new(shape: ResponseContent, required: true, location_name: "Content"))
|
363
|
+
CustomResponseBody.struct_class = Types::CustomResponseBody
|
364
|
+
|
319
365
|
DefaultAction.add_member(:block, Shapes::ShapeRef.new(shape: BlockAction, location_name: "Block"))
|
320
366
|
DefaultAction.add_member(:allow, Shapes::ShapeRef.new(shape: AllowAction, location_name: "Allow"))
|
321
367
|
DefaultAction.struct_class = Types::DefaultAction
|
@@ -395,6 +441,7 @@ module Aws::WAFV2
|
|
395
441
|
FieldToMatch.add_member(:query_string, Shapes::ShapeRef.new(shape: QueryString, location_name: "QueryString"))
|
396
442
|
FieldToMatch.add_member(:body, Shapes::ShapeRef.new(shape: Body, location_name: "Body"))
|
397
443
|
FieldToMatch.add_member(:method, Shapes::ShapeRef.new(shape: Method, location_name: "Method"))
|
444
|
+
FieldToMatch.add_member(:json_body, Shapes::ShapeRef.new(shape: JsonBody, location_name: "JsonBody"))
|
398
445
|
FieldToMatch.struct_class = Types::FieldToMatch
|
399
446
|
|
400
447
|
FirewallManagerRuleGroup.add_member(:name, Shapes::ShapeRef.new(shape: EntityName, required: true, location_name: "Name"))
|
@@ -536,6 +583,17 @@ module Aws::WAFV2
|
|
536
583
|
IPSetSummary.add_member(:arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "ARN"))
|
537
584
|
IPSetSummary.struct_class = Types::IPSetSummary
|
538
585
|
|
586
|
+
JsonBody.add_member(:match_pattern, Shapes::ShapeRef.new(shape: JsonMatchPattern, required: true, location_name: "MatchPattern"))
|
587
|
+
JsonBody.add_member(:match_scope, Shapes::ShapeRef.new(shape: JsonMatchScope, required: true, location_name: "MatchScope"))
|
588
|
+
JsonBody.add_member(:invalid_fallback_behavior, Shapes::ShapeRef.new(shape: BodyParsingFallbackBehavior, location_name: "InvalidFallbackBehavior"))
|
589
|
+
JsonBody.struct_class = Types::JsonBody
|
590
|
+
|
591
|
+
JsonMatchPattern.add_member(:all, Shapes::ShapeRef.new(shape: All, location_name: "All"))
|
592
|
+
JsonMatchPattern.add_member(:included_paths, Shapes::ShapeRef.new(shape: JsonPointerPaths, location_name: "IncludedPaths"))
|
593
|
+
JsonMatchPattern.struct_class = Types::JsonMatchPattern
|
594
|
+
|
595
|
+
JsonPointerPaths.member = Shapes::ShapeRef.new(shape: JsonPointerPath)
|
596
|
+
|
539
597
|
ListAvailableManagedRuleGroupsRequest.add_member(:scope, Shapes::ShapeRef.new(shape: Scope, required: true, location_name: "Scope"))
|
540
598
|
ListAvailableManagedRuleGroupsRequest.add_member(:next_marker, Shapes::ShapeRef.new(shape: NextMarker, location_name: "NextMarker"))
|
541
599
|
ListAvailableManagedRuleGroupsRequest.add_member(:limit, Shapes::ShapeRef.new(shape: PaginationLimit, location_name: "Limit"))
|
@@ -716,6 +774,7 @@ module Aws::WAFV2
|
|
716
774
|
RuleGroup.add_member(:description, Shapes::ShapeRef.new(shape: EntityDescription, location_name: "Description"))
|
717
775
|
RuleGroup.add_member(:rules, Shapes::ShapeRef.new(shape: Rules, location_name: "Rules"))
|
718
776
|
RuleGroup.add_member(:visibility_config, Shapes::ShapeRef.new(shape: VisibilityConfig, required: true, location_name: "VisibilityConfig"))
|
777
|
+
RuleGroup.add_member(:custom_response_bodies, Shapes::ShapeRef.new(shape: CustomResponseBodies, location_name: "CustomResponseBodies"))
|
719
778
|
RuleGroup.struct_class = Types::RuleGroup
|
720
779
|
|
721
780
|
RuleGroupReferenceStatement.add_member(:arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ARN"))
|
@@ -744,6 +803,8 @@ module Aws::WAFV2
|
|
744
803
|
SampledHTTPRequest.add_member(:timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "Timestamp"))
|
745
804
|
SampledHTTPRequest.add_member(:action, Shapes::ShapeRef.new(shape: Action, location_name: "Action"))
|
746
805
|
SampledHTTPRequest.add_member(:rule_name_within_rule_group, Shapes::ShapeRef.new(shape: EntityName, location_name: "RuleNameWithinRuleGroup"))
|
806
|
+
SampledHTTPRequest.add_member(:request_headers_inserted, Shapes::ShapeRef.new(shape: HTTPHeaders, location_name: "RequestHeadersInserted"))
|
807
|
+
SampledHTTPRequest.add_member(:response_code_sent, Shapes::ShapeRef.new(shape: ResponseStatusCode, location_name: "ResponseCodeSent"))
|
747
808
|
SampledHTTPRequest.struct_class = Types::SampledHTTPRequest
|
748
809
|
|
749
810
|
SampledHTTPRequests.member = Shapes::ShapeRef.new(shape: SampledHTTPRequest)
|
@@ -844,6 +905,7 @@ module Aws::WAFV2
|
|
844
905
|
UpdateRuleGroupRequest.add_member(:rules, Shapes::ShapeRef.new(shape: Rules, location_name: "Rules"))
|
845
906
|
UpdateRuleGroupRequest.add_member(:visibility_config, Shapes::ShapeRef.new(shape: VisibilityConfig, required: true, location_name: "VisibilityConfig"))
|
846
907
|
UpdateRuleGroupRequest.add_member(:lock_token, Shapes::ShapeRef.new(shape: LockToken, required: true, location_name: "LockToken"))
|
908
|
+
UpdateRuleGroupRequest.add_member(:custom_response_bodies, Shapes::ShapeRef.new(shape: CustomResponseBodies, location_name: "CustomResponseBodies"))
|
847
909
|
UpdateRuleGroupRequest.struct_class = Types::UpdateRuleGroupRequest
|
848
910
|
|
849
911
|
UpdateRuleGroupResponse.add_member(:next_lock_token, Shapes::ShapeRef.new(shape: LockToken, location_name: "NextLockToken"))
|
@@ -857,6 +919,7 @@ module Aws::WAFV2
|
|
857
919
|
UpdateWebACLRequest.add_member(:rules, Shapes::ShapeRef.new(shape: Rules, location_name: "Rules"))
|
858
920
|
UpdateWebACLRequest.add_member(:visibility_config, Shapes::ShapeRef.new(shape: VisibilityConfig, required: true, location_name: "VisibilityConfig"))
|
859
921
|
UpdateWebACLRequest.add_member(:lock_token, Shapes::ShapeRef.new(shape: LockToken, required: true, location_name: "LockToken"))
|
922
|
+
UpdateWebACLRequest.add_member(:custom_response_bodies, Shapes::ShapeRef.new(shape: CustomResponseBodies, location_name: "CustomResponseBodies"))
|
860
923
|
UpdateWebACLRequest.struct_class = Types::UpdateWebACLRequest
|
861
924
|
|
862
925
|
UpdateWebACLResponse.add_member(:next_lock_token, Shapes::ShapeRef.new(shape: LockToken, location_name: "NextLockToken"))
|
@@ -928,6 +991,7 @@ module Aws::WAFV2
|
|
928
991
|
WebACL.add_member(:pre_process_firewall_manager_rule_groups, Shapes::ShapeRef.new(shape: FirewallManagerRuleGroups, location_name: "PreProcessFirewallManagerRuleGroups"))
|
929
992
|
WebACL.add_member(:post_process_firewall_manager_rule_groups, Shapes::ShapeRef.new(shape: FirewallManagerRuleGroups, location_name: "PostProcessFirewallManagerRuleGroups"))
|
930
993
|
WebACL.add_member(:managed_by_firewall_manager, Shapes::ShapeRef.new(shape: Boolean, location_name: "ManagedByFirewallManager"))
|
994
|
+
WebACL.add_member(:custom_response_bodies, Shapes::ShapeRef.new(shape: CustomResponseBodies, location_name: "CustomResponseBodies"))
|
931
995
|
WebACL.struct_class = Types::WebACL
|
932
996
|
|
933
997
|
WebACLSummaries.member = Shapes::ShapeRef.new(shape: WebACLSummary)
|
data/lib/aws-sdk-wafv2/errors.rb
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
data/lib/aws-sdk-wafv2/types.rb
CHANGED
@@ -3,28 +3,30 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
10
10
|
module Aws::WAFV2
|
11
11
|
module Types
|
12
12
|
|
13
|
-
#
|
14
|
-
#
|
15
|
-
#
|
16
|
-
# Guide][1].
|
17
|
-
#
|
18
|
-
# </note>
|
19
|
-
#
|
20
|
-
# All query arguments of a web request.
|
13
|
+
# Inspect all of the elements that AWS WAF has parsed and extracted from
|
14
|
+
# the web request JSON body that are within the JsonBody `MatchScope`.
|
15
|
+
# This is used with the FieldToMatch option `JsonBody`.
|
21
16
|
#
|
22
17
|
# This is used only to indicate the web request component for AWS WAF to
|
23
18
|
# inspect, in the FieldToMatch specification.
|
24
19
|
#
|
20
|
+
# @api private
|
21
|
+
#
|
22
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/All AWS API Documentation
|
25
23
|
#
|
24
|
+
class All < Aws::EmptyStructure; end
|
25
|
+
|
26
|
+
# All query arguments of a web request.
|
26
27
|
#
|
27
|
-
#
|
28
|
+
# This is used only to indicate the web request component for AWS WAF to
|
29
|
+
# inspect, in the FieldToMatch specification.
|
28
30
|
#
|
29
31
|
# @api private
|
30
32
|
#
|
@@ -32,43 +34,51 @@ module Aws::WAFV2
|
|
32
34
|
#
|
33
35
|
class AllQueryArguments < Aws::EmptyStructure; end
|
34
36
|
|
35
|
-
#
|
36
|
-
#
|
37
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
38
|
-
# Guide][1].
|
37
|
+
# Specifies that AWS WAF should allow the request and optionally defines
|
38
|
+
# additional custom handling for the request.
|
39
39
|
#
|
40
|
-
#
|
40
|
+
# This is used in the context of other settings, for example to specify
|
41
|
+
# values for RuleAction and web ACL DefaultAction.
|
41
42
|
#
|
42
|
-
#
|
43
|
+
# @note When making an API call, you may pass AllowAction
|
44
|
+
# data as a hash:
|
43
45
|
#
|
44
|
-
#
|
45
|
-
#
|
46
|
+
# {
|
47
|
+
# custom_request_handling: {
|
48
|
+
# insert_headers: [ # required
|
49
|
+
# {
|
50
|
+
# name: "CustomHTTPHeaderName", # required
|
51
|
+
# value: "CustomHTTPHeaderValue", # required
|
52
|
+
# },
|
53
|
+
# ],
|
54
|
+
# },
|
55
|
+
# }
|
46
56
|
#
|
57
|
+
# @!attribute [rw] custom_request_handling
|
58
|
+
# Defines custom handling for the web request.
|
47
59
|
#
|
60
|
+
# For information about customizing web requests and responses, see
|
61
|
+
# [Customizing web requests and responses in AWS WAF][1] in the [AWS
|
62
|
+
# WAF Developer Guide][2].
|
48
63
|
#
|
49
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
50
64
|
#
|
51
|
-
#
|
65
|
+
#
|
66
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html
|
67
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
68
|
+
# @return [Types::CustomRequestHandling]
|
52
69
|
#
|
53
70
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/AllowAction AWS API Documentation
|
54
71
|
#
|
55
|
-
class AllowAction <
|
72
|
+
class AllowAction < Struct.new(
|
73
|
+
:custom_request_handling)
|
74
|
+
SENSITIVE = []
|
75
|
+
include Aws::Structure
|
76
|
+
end
|
56
77
|
|
57
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
58
|
-
# in November, 2019. For information, including how to migrate your AWS
|
59
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
60
|
-
# Guide][1].
|
61
|
-
#
|
62
|
-
# </note>
|
63
|
-
#
|
64
78
|
# A logical rule statement used to combine other rule statements with
|
65
79
|
# AND logic. You provide more than one Statement within the
|
66
80
|
# `AndStatement`.
|
67
81
|
#
|
68
|
-
#
|
69
|
-
#
|
70
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
71
|
-
#
|
72
82
|
# @note When making an API call, you may pass AndStatement
|
73
83
|
# data as a hash:
|
74
84
|
#
|
@@ -94,6 +104,15 @@ module Aws::WAFV2
|
|
94
104
|
# },
|
95
105
|
# method: {
|
96
106
|
# },
|
107
|
+
# json_body: {
|
108
|
+
# match_pattern: { # required
|
109
|
+
# all: {
|
110
|
+
# },
|
111
|
+
# included_paths: ["JsonPointerPath"],
|
112
|
+
# },
|
113
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
114
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
115
|
+
# },
|
97
116
|
# },
|
98
117
|
# text_transformations: [ # required
|
99
118
|
# {
|
@@ -121,6 +140,15 @@ module Aws::WAFV2
|
|
121
140
|
# },
|
122
141
|
# method: {
|
123
142
|
# },
|
143
|
+
# json_body: {
|
144
|
+
# match_pattern: { # required
|
145
|
+
# all: {
|
146
|
+
# },
|
147
|
+
# included_paths: ["JsonPointerPath"],
|
148
|
+
# },
|
149
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
150
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
151
|
+
# },
|
124
152
|
# },
|
125
153
|
# text_transformations: [ # required
|
126
154
|
# {
|
@@ -147,6 +175,15 @@ module Aws::WAFV2
|
|
147
175
|
# },
|
148
176
|
# method: {
|
149
177
|
# },
|
178
|
+
# json_body: {
|
179
|
+
# match_pattern: { # required
|
180
|
+
# all: {
|
181
|
+
# },
|
182
|
+
# included_paths: ["JsonPointerPath"],
|
183
|
+
# },
|
184
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
185
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
186
|
+
# },
|
150
187
|
# },
|
151
188
|
# text_transformations: [ # required
|
152
189
|
# {
|
@@ -173,6 +210,15 @@ module Aws::WAFV2
|
|
173
210
|
# },
|
174
211
|
# method: {
|
175
212
|
# },
|
213
|
+
# json_body: {
|
214
|
+
# match_pattern: { # required
|
215
|
+
# all: {
|
216
|
+
# },
|
217
|
+
# included_paths: ["JsonPointerPath"],
|
218
|
+
# },
|
219
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
220
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
221
|
+
# },
|
176
222
|
# },
|
177
223
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
178
224
|
# size: 1, # required
|
@@ -225,6 +271,15 @@ module Aws::WAFV2
|
|
225
271
|
# },
|
226
272
|
# method: {
|
227
273
|
# },
|
274
|
+
# json_body: {
|
275
|
+
# match_pattern: { # required
|
276
|
+
# all: {
|
277
|
+
# },
|
278
|
+
# included_paths: ["JsonPointerPath"],
|
279
|
+
# },
|
280
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
281
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
282
|
+
# },
|
228
283
|
# },
|
229
284
|
# text_transformations: [ # required
|
230
285
|
# {
|
@@ -328,58 +383,61 @@ module Aws::WAFV2
|
|
328
383
|
#
|
329
384
|
class AssociateWebACLResponse < Aws::EmptyStructure; end
|
330
385
|
|
331
|
-
#
|
332
|
-
#
|
333
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
334
|
-
# Guide][1].
|
386
|
+
# Specifies that AWS WAF should block the request and optionally defines
|
387
|
+
# additional custom handling for the response to the web request.
|
335
388
|
#
|
336
|
-
#
|
389
|
+
# This is used in the context of other settings, for example to specify
|
390
|
+
# values for RuleAction and web ACL DefaultAction.
|
391
|
+
#
|
392
|
+
# @note When making an API call, you may pass BlockAction
|
393
|
+
# data as a hash:
|
337
394
|
#
|
338
|
-
#
|
395
|
+
# {
|
396
|
+
# custom_response: {
|
397
|
+
# response_code: 1, # required
|
398
|
+
# custom_response_body_key: "EntityName",
|
399
|
+
# response_headers: [
|
400
|
+
# {
|
401
|
+
# name: "CustomHTTPHeaderName", # required
|
402
|
+
# value: "CustomHTTPHeaderValue", # required
|
403
|
+
# },
|
404
|
+
# ],
|
405
|
+
# },
|
406
|
+
# }
|
339
407
|
#
|
340
|
-
#
|
341
|
-
#
|
408
|
+
# @!attribute [rw] custom_response
|
409
|
+
# Defines a custom response for the web request.
|
342
410
|
#
|
411
|
+
# For information about customizing web requests and responses, see
|
412
|
+
# [Customizing web requests and responses in AWS WAF][1] in the [AWS
|
413
|
+
# WAF Developer Guide][2].
|
343
414
|
#
|
344
415
|
#
|
345
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
346
416
|
#
|
347
|
-
#
|
417
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html
|
418
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
419
|
+
# @return [Types::CustomResponse]
|
348
420
|
#
|
349
421
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/BlockAction AWS API Documentation
|
350
422
|
#
|
351
|
-
class BlockAction <
|
423
|
+
class BlockAction < Struct.new(
|
424
|
+
:custom_response)
|
425
|
+
SENSITIVE = []
|
426
|
+
include Aws::Structure
|
427
|
+
end
|
352
428
|
|
353
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
354
|
-
# in November, 2019. For information, including how to migrate your AWS
|
355
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
356
|
-
# Guide][1].
|
357
|
-
#
|
358
|
-
# </note>
|
359
|
-
#
|
360
429
|
# The body of a web request. This immediately follows the request
|
361
430
|
# headers.
|
362
431
|
#
|
363
432
|
# This is used only to indicate the web request component for AWS WAF to
|
364
433
|
# inspect, in the FieldToMatch specification.
|
365
434
|
#
|
366
|
-
#
|
367
|
-
#
|
368
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
369
|
-
#
|
370
435
|
# @api private
|
371
436
|
#
|
372
437
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/Body AWS API Documentation
|
373
438
|
#
|
374
439
|
class Body < Aws::EmptyStructure; end
|
375
440
|
|
376
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
377
|
-
# in November, 2019. For information, including how to migrate your AWS
|
378
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
379
|
-
# Guide][1].
|
380
|
-
#
|
381
|
-
# </note>
|
382
|
-
#
|
383
441
|
# A rule statement that defines a string match search for AWS WAF to
|
384
442
|
# apply to web requests. The byte match statement provides the bytes to
|
385
443
|
# search for, the location in requests that you want AWS WAF to search,
|
@@ -387,10 +445,6 @@ module Aws::WAFV2
|
|
387
445
|
# that corresponds with ASCII characters. In the AWS WAF console and the
|
388
446
|
# developer guide, this is refered to as a string match statement.
|
389
447
|
#
|
390
|
-
#
|
391
|
-
#
|
392
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
393
|
-
#
|
394
448
|
# @note When making an API call, you may pass ByteMatchStatement
|
395
449
|
# data as a hash:
|
396
450
|
#
|
@@ -413,6 +467,15 @@ module Aws::WAFV2
|
|
413
467
|
# },
|
414
468
|
# method: {
|
415
469
|
# },
|
470
|
+
# json_body: {
|
471
|
+
# match_pattern: { # required
|
472
|
+
# all: {
|
473
|
+
# },
|
474
|
+
# included_paths: ["JsonPointerPath"],
|
475
|
+
# },
|
476
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
477
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
478
|
+
# },
|
416
479
|
# },
|
417
480
|
# text_transformations: [ # required
|
418
481
|
# {
|
@@ -554,6 +617,15 @@ module Aws::WAFV2
|
|
554
617
|
# },
|
555
618
|
# method: {
|
556
619
|
# },
|
620
|
+
# json_body: {
|
621
|
+
# match_pattern: { # required
|
622
|
+
# all: {
|
623
|
+
# },
|
624
|
+
# included_paths: ["JsonPointerPath"],
|
625
|
+
# },
|
626
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
627
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
628
|
+
# },
|
557
629
|
# },
|
558
630
|
# text_transformations: [ # required
|
559
631
|
# {
|
@@ -581,6 +653,15 @@ module Aws::WAFV2
|
|
581
653
|
# },
|
582
654
|
# method: {
|
583
655
|
# },
|
656
|
+
# json_body: {
|
657
|
+
# match_pattern: { # required
|
658
|
+
# all: {
|
659
|
+
# },
|
660
|
+
# included_paths: ["JsonPointerPath"],
|
661
|
+
# },
|
662
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
663
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
664
|
+
# },
|
584
665
|
# },
|
585
666
|
# text_transformations: [ # required
|
586
667
|
# {
|
@@ -607,6 +688,15 @@ module Aws::WAFV2
|
|
607
688
|
# },
|
608
689
|
# method: {
|
609
690
|
# },
|
691
|
+
# json_body: {
|
692
|
+
# match_pattern: { # required
|
693
|
+
# all: {
|
694
|
+
# },
|
695
|
+
# included_paths: ["JsonPointerPath"],
|
696
|
+
# },
|
697
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
698
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
699
|
+
# },
|
610
700
|
# },
|
611
701
|
# text_transformations: [ # required
|
612
702
|
# {
|
@@ -633,6 +723,15 @@ module Aws::WAFV2
|
|
633
723
|
# },
|
634
724
|
# method: {
|
635
725
|
# },
|
726
|
+
# json_body: {
|
727
|
+
# match_pattern: { # required
|
728
|
+
# all: {
|
729
|
+
# },
|
730
|
+
# included_paths: ["JsonPointerPath"],
|
731
|
+
# },
|
732
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
733
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
734
|
+
# },
|
636
735
|
# },
|
637
736
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
638
737
|
# size: 1, # required
|
@@ -685,6 +784,15 @@ module Aws::WAFV2
|
|
685
784
|
# },
|
686
785
|
# method: {
|
687
786
|
# },
|
787
|
+
# json_body: {
|
788
|
+
# match_pattern: { # required
|
789
|
+
# all: {
|
790
|
+
# },
|
791
|
+
# included_paths: ["JsonPointerPath"],
|
792
|
+
# },
|
793
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
794
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
795
|
+
# },
|
688
796
|
# },
|
689
797
|
# text_transformations: [ # required
|
690
798
|
# {
|
@@ -735,14 +843,48 @@ module Aws::WAFV2
|
|
735
843
|
# },
|
736
844
|
# action: {
|
737
845
|
# block: {
|
846
|
+
# custom_response: {
|
847
|
+
# response_code: 1, # required
|
848
|
+
# custom_response_body_key: "EntityName",
|
849
|
+
# response_headers: [
|
850
|
+
# {
|
851
|
+
# name: "CustomHTTPHeaderName", # required
|
852
|
+
# value: "CustomHTTPHeaderValue", # required
|
853
|
+
# },
|
854
|
+
# ],
|
855
|
+
# },
|
738
856
|
# },
|
739
857
|
# allow: {
|
858
|
+
# custom_request_handling: {
|
859
|
+
# insert_headers: [ # required
|
860
|
+
# {
|
861
|
+
# name: "CustomHTTPHeaderName", # required
|
862
|
+
# value: "CustomHTTPHeaderValue", # required
|
863
|
+
# },
|
864
|
+
# ],
|
865
|
+
# },
|
740
866
|
# },
|
741
867
|
# count: {
|
868
|
+
# custom_request_handling: {
|
869
|
+
# insert_headers: [ # required
|
870
|
+
# {
|
871
|
+
# name: "CustomHTTPHeaderName", # required
|
872
|
+
# value: "CustomHTTPHeaderValue", # required
|
873
|
+
# },
|
874
|
+
# ],
|
875
|
+
# },
|
742
876
|
# },
|
743
877
|
# },
|
744
878
|
# override_action: {
|
745
879
|
# count: {
|
880
|
+
# custom_request_handling: {
|
881
|
+
# insert_headers: [ # required
|
882
|
+
# {
|
883
|
+
# name: "CustomHTTPHeaderName", # required
|
884
|
+
# value: "CustomHTTPHeaderValue", # required
|
885
|
+
# },
|
886
|
+
# ],
|
887
|
+
# },
|
746
888
|
# },
|
747
889
|
# none: {
|
748
890
|
# },
|
@@ -797,27 +939,46 @@ module Aws::WAFV2
|
|
797
939
|
include Aws::Structure
|
798
940
|
end
|
799
941
|
|
800
|
-
#
|
801
|
-
#
|
802
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
803
|
-
# Guide][1].
|
942
|
+
# Specifies that AWS WAF should count the request. Optionally defines
|
943
|
+
# additional custom handling for the request.
|
804
944
|
#
|
805
|
-
#
|
945
|
+
# This is used in the context of other settings, for example to specify
|
946
|
+
# values for RuleAction and web ACL DefaultAction.
|
806
947
|
#
|
807
|
-
#
|
948
|
+
# @note When making an API call, you may pass CountAction
|
949
|
+
# data as a hash:
|
950
|
+
#
|
951
|
+
# {
|
952
|
+
# custom_request_handling: {
|
953
|
+
# insert_headers: [ # required
|
954
|
+
# {
|
955
|
+
# name: "CustomHTTPHeaderName", # required
|
956
|
+
# value: "CustomHTTPHeaderValue", # required
|
957
|
+
# },
|
958
|
+
# ],
|
959
|
+
# },
|
960
|
+
# }
|
808
961
|
#
|
809
|
-
#
|
810
|
-
#
|
962
|
+
# @!attribute [rw] custom_request_handling
|
963
|
+
# Defines custom handling for the web request.
|
811
964
|
#
|
965
|
+
# For information about customizing web requests and responses, see
|
966
|
+
# [Customizing web requests and responses in AWS WAF][1] in the [AWS
|
967
|
+
# WAF Developer Guide][2].
|
812
968
|
#
|
813
969
|
#
|
814
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
815
970
|
#
|
816
|
-
#
|
971
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html
|
972
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
973
|
+
# @return [Types::CustomRequestHandling]
|
817
974
|
#
|
818
975
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/CountAction AWS API Documentation
|
819
976
|
#
|
820
|
-
class CountAction <
|
977
|
+
class CountAction < Struct.new(
|
978
|
+
:custom_request_handling)
|
979
|
+
SENSITIVE = []
|
980
|
+
include Aws::Structure
|
981
|
+
end
|
821
982
|
|
822
983
|
# @note When making an API call, you may pass CreateIPSetRequest
|
823
984
|
# data as a hash:
|
@@ -857,8 +1018,7 @@ module Aws::WAFV2
|
|
857
1018
|
# @return [String]
|
858
1019
|
#
|
859
1020
|
# @!attribute [rw] description
|
860
|
-
# A description of the IP set that helps with identification.
|
861
|
-
# cannot change the description of an IP set after you create it.
|
1021
|
+
# A description of the IP set that helps with identification.
|
862
1022
|
# @return [String]
|
863
1023
|
#
|
864
1024
|
# @!attribute [rw] ip_address_version
|
@@ -868,8 +1028,8 @@ module Aws::WAFV2
|
|
868
1028
|
# @!attribute [rw] addresses
|
869
1029
|
# Contains an array of strings that specify one or more IP addresses
|
870
1030
|
# or blocks of IP addresses in Classless Inter-Domain Routing (CIDR)
|
871
|
-
# notation. AWS WAF supports all
|
872
|
-
#
|
1031
|
+
# notation. AWS WAF supports all IPv4 and IPv6 CIDR ranges except for
|
1032
|
+
# /0.
|
873
1033
|
#
|
874
1034
|
# Examples:
|
875
1035
|
#
|
@@ -973,8 +1133,7 @@ module Aws::WAFV2
|
|
973
1133
|
# @return [String]
|
974
1134
|
#
|
975
1135
|
# @!attribute [rw] description
|
976
|
-
# A description of the set that helps with identification.
|
977
|
-
# change the description of a set after you create it.
|
1136
|
+
# A description of the set that helps with identification.
|
978
1137
|
# @return [String]
|
979
1138
|
#
|
980
1139
|
# @!attribute [rw] regular_expression_list
|
@@ -1045,6 +1204,15 @@ module Aws::WAFV2
|
|
1045
1204
|
# },
|
1046
1205
|
# method: {
|
1047
1206
|
# },
|
1207
|
+
# json_body: {
|
1208
|
+
# match_pattern: { # required
|
1209
|
+
# all: {
|
1210
|
+
# },
|
1211
|
+
# included_paths: ["JsonPointerPath"],
|
1212
|
+
# },
|
1213
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
1214
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
1215
|
+
# },
|
1048
1216
|
# },
|
1049
1217
|
# text_transformations: [ # required
|
1050
1218
|
# {
|
@@ -1072,6 +1240,15 @@ module Aws::WAFV2
|
|
1072
1240
|
# },
|
1073
1241
|
# method: {
|
1074
1242
|
# },
|
1243
|
+
# json_body: {
|
1244
|
+
# match_pattern: { # required
|
1245
|
+
# all: {
|
1246
|
+
# },
|
1247
|
+
# included_paths: ["JsonPointerPath"],
|
1248
|
+
# },
|
1249
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
1250
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
1251
|
+
# },
|
1075
1252
|
# },
|
1076
1253
|
# text_transformations: [ # required
|
1077
1254
|
# {
|
@@ -1098,6 +1275,15 @@ module Aws::WAFV2
|
|
1098
1275
|
# },
|
1099
1276
|
# method: {
|
1100
1277
|
# },
|
1278
|
+
# json_body: {
|
1279
|
+
# match_pattern: { # required
|
1280
|
+
# all: {
|
1281
|
+
# },
|
1282
|
+
# included_paths: ["JsonPointerPath"],
|
1283
|
+
# },
|
1284
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
1285
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
1286
|
+
# },
|
1101
1287
|
# },
|
1102
1288
|
# text_transformations: [ # required
|
1103
1289
|
# {
|
@@ -1124,6 +1310,15 @@ module Aws::WAFV2
|
|
1124
1310
|
# },
|
1125
1311
|
# method: {
|
1126
1312
|
# },
|
1313
|
+
# json_body: {
|
1314
|
+
# match_pattern: { # required
|
1315
|
+
# all: {
|
1316
|
+
# },
|
1317
|
+
# included_paths: ["JsonPointerPath"],
|
1318
|
+
# },
|
1319
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
1320
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
1321
|
+
# },
|
1127
1322
|
# },
|
1128
1323
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
1129
1324
|
# size: 1, # required
|
@@ -1176,6 +1371,15 @@ module Aws::WAFV2
|
|
1176
1371
|
# },
|
1177
1372
|
# method: {
|
1178
1373
|
# },
|
1374
|
+
# json_body: {
|
1375
|
+
# match_pattern: { # required
|
1376
|
+
# all: {
|
1377
|
+
# },
|
1378
|
+
# included_paths: ["JsonPointerPath"],
|
1379
|
+
# },
|
1380
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
1381
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
1382
|
+
# },
|
1179
1383
|
# },
|
1180
1384
|
# text_transformations: [ # required
|
1181
1385
|
# {
|
@@ -1226,14 +1430,48 @@ module Aws::WAFV2
|
|
1226
1430
|
# },
|
1227
1431
|
# action: {
|
1228
1432
|
# block: {
|
1433
|
+
# custom_response: {
|
1434
|
+
# response_code: 1, # required
|
1435
|
+
# custom_response_body_key: "EntityName",
|
1436
|
+
# response_headers: [
|
1437
|
+
# {
|
1438
|
+
# name: "CustomHTTPHeaderName", # required
|
1439
|
+
# value: "CustomHTTPHeaderValue", # required
|
1440
|
+
# },
|
1441
|
+
# ],
|
1442
|
+
# },
|
1229
1443
|
# },
|
1230
1444
|
# allow: {
|
1445
|
+
# custom_request_handling: {
|
1446
|
+
# insert_headers: [ # required
|
1447
|
+
# {
|
1448
|
+
# name: "CustomHTTPHeaderName", # required
|
1449
|
+
# value: "CustomHTTPHeaderValue", # required
|
1450
|
+
# },
|
1451
|
+
# ],
|
1452
|
+
# },
|
1231
1453
|
# },
|
1232
1454
|
# count: {
|
1455
|
+
# custom_request_handling: {
|
1456
|
+
# insert_headers: [ # required
|
1457
|
+
# {
|
1458
|
+
# name: "CustomHTTPHeaderName", # required
|
1459
|
+
# value: "CustomHTTPHeaderValue", # required
|
1460
|
+
# },
|
1461
|
+
# ],
|
1462
|
+
# },
|
1233
1463
|
# },
|
1234
1464
|
# },
|
1235
1465
|
# override_action: {
|
1236
1466
|
# count: {
|
1467
|
+
# custom_request_handling: {
|
1468
|
+
# insert_headers: [ # required
|
1469
|
+
# {
|
1470
|
+
# name: "CustomHTTPHeaderName", # required
|
1471
|
+
# value: "CustomHTTPHeaderValue", # required
|
1472
|
+
# },
|
1473
|
+
# ],
|
1474
|
+
# },
|
1237
1475
|
# },
|
1238
1476
|
# none: {
|
1239
1477
|
# },
|
@@ -1256,6 +1494,12 @@ module Aws::WAFV2
|
|
1256
1494
|
# value: "TagValue", # required
|
1257
1495
|
# },
|
1258
1496
|
# ],
|
1497
|
+
# custom_response_bodies: {
|
1498
|
+
# "EntityName" => {
|
1499
|
+
# content_type: "TEXT_PLAIN", # required, accepts TEXT_PLAIN, TEXT_HTML, APPLICATION_JSON
|
1500
|
+
# content: "ResponseContent", # required
|
1501
|
+
# },
|
1502
|
+
# },
|
1259
1503
|
# }
|
1260
1504
|
#
|
1261
1505
|
# @!attribute [rw] name
|
@@ -1297,8 +1541,7 @@ module Aws::WAFV2
|
|
1297
1541
|
# @return [Integer]
|
1298
1542
|
#
|
1299
1543
|
# @!attribute [rw] description
|
1300
|
-
# A description of the rule group that helps with identification.
|
1301
|
-
# cannot change the description of a rule group after you create it.
|
1544
|
+
# A description of the rule group that helps with identification.
|
1302
1545
|
# @return [String]
|
1303
1546
|
#
|
1304
1547
|
# @!attribute [rw] rules
|
@@ -1317,6 +1560,27 @@ module Aws::WAFV2
|
|
1317
1560
|
# An array of key:value pairs to associate with the resource.
|
1318
1561
|
# @return [Array<Types::Tag>]
|
1319
1562
|
#
|
1563
|
+
# @!attribute [rw] custom_response_bodies
|
1564
|
+
# A map of custom response keys and content bodies. When you create a
|
1565
|
+
# rule with a block action, you can send a custom response to the web
|
1566
|
+
# request. You define these for the rule group, and then use them in
|
1567
|
+
# the rules that you define in the rule group.
|
1568
|
+
#
|
1569
|
+
# For information about customizing web requests and responses, see
|
1570
|
+
# [Customizing web requests and responses in AWS WAF][1] in the [AWS
|
1571
|
+
# WAF Developer Guide][2].
|
1572
|
+
#
|
1573
|
+
# For information about the limits on count and size for custom
|
1574
|
+
# request and response settings, see [AWS WAF quotas][3] in the [AWS
|
1575
|
+
# WAF Developer Guide][2].
|
1576
|
+
#
|
1577
|
+
#
|
1578
|
+
#
|
1579
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html
|
1580
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
1581
|
+
# [3]: https://docs.aws.amazon.com/waf/latest/developerguide/limits.html
|
1582
|
+
# @return [Hash<String,Types::CustomResponseBody>]
|
1583
|
+
#
|
1320
1584
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/CreateRuleGroupRequest AWS API Documentation
|
1321
1585
|
#
|
1322
1586
|
class CreateRuleGroupRequest < Struct.new(
|
@@ -1326,7 +1590,8 @@ module Aws::WAFV2
|
|
1326
1590
|
:description,
|
1327
1591
|
:rules,
|
1328
1592
|
:visibility_config,
|
1329
|
-
:tags
|
1593
|
+
:tags,
|
1594
|
+
:custom_response_bodies)
|
1330
1595
|
SENSITIVE = []
|
1331
1596
|
include Aws::Structure
|
1332
1597
|
end
|
@@ -1355,8 +1620,26 @@ module Aws::WAFV2
|
|
1355
1620
|
# scope: "CLOUDFRONT", # required, accepts CLOUDFRONT, REGIONAL
|
1356
1621
|
# default_action: { # required
|
1357
1622
|
# block: {
|
1623
|
+
# custom_response: {
|
1624
|
+
# response_code: 1, # required
|
1625
|
+
# custom_response_body_key: "EntityName",
|
1626
|
+
# response_headers: [
|
1627
|
+
# {
|
1628
|
+
# name: "CustomHTTPHeaderName", # required
|
1629
|
+
# value: "CustomHTTPHeaderValue", # required
|
1630
|
+
# },
|
1631
|
+
# ],
|
1632
|
+
# },
|
1358
1633
|
# },
|
1359
1634
|
# allow: {
|
1635
|
+
# custom_request_handling: {
|
1636
|
+
# insert_headers: [ # required
|
1637
|
+
# {
|
1638
|
+
# name: "CustomHTTPHeaderName", # required
|
1639
|
+
# value: "CustomHTTPHeaderValue", # required
|
1640
|
+
# },
|
1641
|
+
# ],
|
1642
|
+
# },
|
1360
1643
|
# },
|
1361
1644
|
# },
|
1362
1645
|
# description: "EntityDescription",
|
@@ -1384,6 +1667,15 @@ module Aws::WAFV2
|
|
1384
1667
|
# },
|
1385
1668
|
# method: {
|
1386
1669
|
# },
|
1670
|
+
# json_body: {
|
1671
|
+
# match_pattern: { # required
|
1672
|
+
# all: {
|
1673
|
+
# },
|
1674
|
+
# included_paths: ["JsonPointerPath"],
|
1675
|
+
# },
|
1676
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
1677
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
1678
|
+
# },
|
1387
1679
|
# },
|
1388
1680
|
# text_transformations: [ # required
|
1389
1681
|
# {
|
@@ -1411,6 +1703,15 @@ module Aws::WAFV2
|
|
1411
1703
|
# },
|
1412
1704
|
# method: {
|
1413
1705
|
# },
|
1706
|
+
# json_body: {
|
1707
|
+
# match_pattern: { # required
|
1708
|
+
# all: {
|
1709
|
+
# },
|
1710
|
+
# included_paths: ["JsonPointerPath"],
|
1711
|
+
# },
|
1712
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
1713
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
1714
|
+
# },
|
1414
1715
|
# },
|
1415
1716
|
# text_transformations: [ # required
|
1416
1717
|
# {
|
@@ -1437,6 +1738,15 @@ module Aws::WAFV2
|
|
1437
1738
|
# },
|
1438
1739
|
# method: {
|
1439
1740
|
# },
|
1741
|
+
# json_body: {
|
1742
|
+
# match_pattern: { # required
|
1743
|
+
# all: {
|
1744
|
+
# },
|
1745
|
+
# included_paths: ["JsonPointerPath"],
|
1746
|
+
# },
|
1747
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
1748
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
1749
|
+
# },
|
1440
1750
|
# },
|
1441
1751
|
# text_transformations: [ # required
|
1442
1752
|
# {
|
@@ -1463,6 +1773,15 @@ module Aws::WAFV2
|
|
1463
1773
|
# },
|
1464
1774
|
# method: {
|
1465
1775
|
# },
|
1776
|
+
# json_body: {
|
1777
|
+
# match_pattern: { # required
|
1778
|
+
# all: {
|
1779
|
+
# },
|
1780
|
+
# included_paths: ["JsonPointerPath"],
|
1781
|
+
# },
|
1782
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
1783
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
1784
|
+
# },
|
1466
1785
|
# },
|
1467
1786
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
1468
1787
|
# size: 1, # required
|
@@ -1515,6 +1834,15 @@ module Aws::WAFV2
|
|
1515
1834
|
# },
|
1516
1835
|
# method: {
|
1517
1836
|
# },
|
1837
|
+
# json_body: {
|
1838
|
+
# match_pattern: { # required
|
1839
|
+
# all: {
|
1840
|
+
# },
|
1841
|
+
# included_paths: ["JsonPointerPath"],
|
1842
|
+
# },
|
1843
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
1844
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
1845
|
+
# },
|
1518
1846
|
# },
|
1519
1847
|
# text_transformations: [ # required
|
1520
1848
|
# {
|
@@ -1565,14 +1893,48 @@ module Aws::WAFV2
|
|
1565
1893
|
# },
|
1566
1894
|
# action: {
|
1567
1895
|
# block: {
|
1896
|
+
# custom_response: {
|
1897
|
+
# response_code: 1, # required
|
1898
|
+
# custom_response_body_key: "EntityName",
|
1899
|
+
# response_headers: [
|
1900
|
+
# {
|
1901
|
+
# name: "CustomHTTPHeaderName", # required
|
1902
|
+
# value: "CustomHTTPHeaderValue", # required
|
1903
|
+
# },
|
1904
|
+
# ],
|
1905
|
+
# },
|
1568
1906
|
# },
|
1569
1907
|
# allow: {
|
1908
|
+
# custom_request_handling: {
|
1909
|
+
# insert_headers: [ # required
|
1910
|
+
# {
|
1911
|
+
# name: "CustomHTTPHeaderName", # required
|
1912
|
+
# value: "CustomHTTPHeaderValue", # required
|
1913
|
+
# },
|
1914
|
+
# ],
|
1915
|
+
# },
|
1570
1916
|
# },
|
1571
1917
|
# count: {
|
1918
|
+
# custom_request_handling: {
|
1919
|
+
# insert_headers: [ # required
|
1920
|
+
# {
|
1921
|
+
# name: "CustomHTTPHeaderName", # required
|
1922
|
+
# value: "CustomHTTPHeaderValue", # required
|
1923
|
+
# },
|
1924
|
+
# ],
|
1925
|
+
# },
|
1572
1926
|
# },
|
1573
1927
|
# },
|
1574
1928
|
# override_action: {
|
1575
1929
|
# count: {
|
1930
|
+
# custom_request_handling: {
|
1931
|
+
# insert_headers: [ # required
|
1932
|
+
# {
|
1933
|
+
# name: "CustomHTTPHeaderName", # required
|
1934
|
+
# value: "CustomHTTPHeaderValue", # required
|
1935
|
+
# },
|
1936
|
+
# ],
|
1937
|
+
# },
|
1576
1938
|
# },
|
1577
1939
|
# none: {
|
1578
1940
|
# },
|
@@ -1595,6 +1957,12 @@ module Aws::WAFV2
|
|
1595
1957
|
# value: "TagValue", # required
|
1596
1958
|
# },
|
1597
1959
|
# ],
|
1960
|
+
# custom_response_bodies: {
|
1961
|
+
# "EntityName" => {
|
1962
|
+
# content_type: "TEXT_PLAIN", # required, accepts TEXT_PLAIN, TEXT_HTML, APPLICATION_JSON
|
1963
|
+
# content: "ResponseContent", # required
|
1964
|
+
# },
|
1965
|
+
# },
|
1598
1966
|
# }
|
1599
1967
|
#
|
1600
1968
|
# @!attribute [rw] name
|
@@ -1623,8 +1991,7 @@ module Aws::WAFV2
|
|
1623
1991
|
# @return [Types::DefaultAction]
|
1624
1992
|
#
|
1625
1993
|
# @!attribute [rw] description
|
1626
|
-
# A description of the Web ACL that helps with identification.
|
1627
|
-
# cannot change the description of a Web ACL after you create it.
|
1994
|
+
# A description of the Web ACL that helps with identification.
|
1628
1995
|
# @return [String]
|
1629
1996
|
#
|
1630
1997
|
# @!attribute [rw] rules
|
@@ -1643,6 +2010,27 @@ module Aws::WAFV2
|
|
1643
2010
|
# An array of key:value pairs to associate with the resource.
|
1644
2011
|
# @return [Array<Types::Tag>]
|
1645
2012
|
#
|
2013
|
+
# @!attribute [rw] custom_response_bodies
|
2014
|
+
# A map of custom response keys and content bodies. When you create a
|
2015
|
+
# rule with a block action, you can send a custom response to the web
|
2016
|
+
# request. You define these for the web ACL, and then use them in the
|
2017
|
+
# rules and default actions that you define in the web ACL.
|
2018
|
+
#
|
2019
|
+
# For information about customizing web requests and responses, see
|
2020
|
+
# [Customizing web requests and responses in AWS WAF][1] in the [AWS
|
2021
|
+
# WAF Developer Guide][2].
|
2022
|
+
#
|
2023
|
+
# For information about the limits on count and size for custom
|
2024
|
+
# request and response settings, see [AWS WAF quotas][3] in the [AWS
|
2025
|
+
# WAF Developer Guide][2].
|
2026
|
+
#
|
2027
|
+
#
|
2028
|
+
#
|
2029
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html
|
2030
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2031
|
+
# [3]: https://docs.aws.amazon.com/waf/latest/developerguide/limits.html
|
2032
|
+
# @return [Hash<String,Types::CustomResponseBody>]
|
2033
|
+
#
|
1646
2034
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/CreateWebACLRequest AWS API Documentation
|
1647
2035
|
#
|
1648
2036
|
class CreateWebACLRequest < Struct.new(
|
@@ -1652,7 +2040,8 @@ module Aws::WAFV2
|
|
1652
2040
|
:description,
|
1653
2041
|
:rules,
|
1654
2042
|
:visibility_config,
|
1655
|
-
:tags
|
2043
|
+
:tags,
|
2044
|
+
:custom_response_bodies)
|
1656
2045
|
SENSITIVE = []
|
1657
2046
|
include Aws::Structure
|
1658
2047
|
end
|
@@ -1672,28 +2061,232 @@ module Aws::WAFV2
|
|
1672
2061
|
include Aws::Structure
|
1673
2062
|
end
|
1674
2063
|
|
1675
|
-
#
|
1676
|
-
# in
|
1677
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
1678
|
-
# Guide][1].
|
2064
|
+
# A custom header for custom request and response handling. This is used
|
2065
|
+
# in CustomResponse and CustomRequestHandling.
|
1679
2066
|
#
|
1680
|
-
#
|
2067
|
+
# @note When making an API call, you may pass CustomHTTPHeader
|
2068
|
+
# data as a hash:
|
1681
2069
|
#
|
1682
|
-
#
|
1683
|
-
#
|
1684
|
-
#
|
2070
|
+
# {
|
2071
|
+
# name: "CustomHTTPHeaderName", # required
|
2072
|
+
# value: "CustomHTTPHeaderValue", # required
|
2073
|
+
# }
|
1685
2074
|
#
|
2075
|
+
# @!attribute [rw] name
|
2076
|
+
# The name of the custom header.
|
1686
2077
|
#
|
2078
|
+
# For custom request header insertion, when AWS WAF inserts the header
|
2079
|
+
# into the request, it prefixes this name `x-amzn-waf-`, to avoid
|
2080
|
+
# confusion with the headers that are already in the request. For
|
2081
|
+
# example, for the header name `sample`, AWS WAF inserts the header
|
2082
|
+
# `x-amzn-waf-sample`.
|
2083
|
+
# @return [String]
|
1687
2084
|
#
|
1688
|
-
# [
|
2085
|
+
# @!attribute [rw] value
|
2086
|
+
# The value of the custom header.
|
2087
|
+
# @return [String]
|
2088
|
+
#
|
2089
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/CustomHTTPHeader AWS API Documentation
|
2090
|
+
#
|
2091
|
+
class CustomHTTPHeader < Struct.new(
|
2092
|
+
:name,
|
2093
|
+
:value)
|
2094
|
+
SENSITIVE = []
|
2095
|
+
include Aws::Structure
|
2096
|
+
end
|
2097
|
+
|
2098
|
+
# Custom request handling behavior that inserts custom headers into a
|
2099
|
+
# web request. You can add custom request handling for the rule actions
|
2100
|
+
# allow and count.
|
2101
|
+
#
|
2102
|
+
# For information about customizing web requests and responses, see
|
2103
|
+
# [Customizing web requests and responses in AWS WAF][1] in the [AWS WAF
|
2104
|
+
# Developer Guide][2].
|
2105
|
+
#
|
2106
|
+
#
|
2107
|
+
#
|
2108
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html
|
2109
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2110
|
+
#
|
2111
|
+
# @note When making an API call, you may pass CustomRequestHandling
|
2112
|
+
# data as a hash:
|
2113
|
+
#
|
2114
|
+
# {
|
2115
|
+
# insert_headers: [ # required
|
2116
|
+
# {
|
2117
|
+
# name: "CustomHTTPHeaderName", # required
|
2118
|
+
# value: "CustomHTTPHeaderValue", # required
|
2119
|
+
# },
|
2120
|
+
# ],
|
2121
|
+
# }
|
2122
|
+
#
|
2123
|
+
# @!attribute [rw] insert_headers
|
2124
|
+
# The HTTP headers to insert into the request. Duplicate header names
|
2125
|
+
# are not allowed.
|
2126
|
+
#
|
2127
|
+
# For information about the limits on count and size for custom
|
2128
|
+
# request and response settings, see [AWS WAF quotas][1] in the [AWS
|
2129
|
+
# WAF Developer Guide][2].
|
2130
|
+
#
|
2131
|
+
#
|
2132
|
+
#
|
2133
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/limits.html
|
2134
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2135
|
+
# @return [Array<Types::CustomHTTPHeader>]
|
2136
|
+
#
|
2137
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/CustomRequestHandling AWS API Documentation
|
2138
|
+
#
|
2139
|
+
class CustomRequestHandling < Struct.new(
|
2140
|
+
:insert_headers)
|
2141
|
+
SENSITIVE = []
|
2142
|
+
include Aws::Structure
|
2143
|
+
end
|
2144
|
+
|
2145
|
+
# A custom response to send to the client. You can define a custom
|
2146
|
+
# response for rule actions and default web ACL actions that are set to
|
2147
|
+
# BlockAction.
|
2148
|
+
#
|
2149
|
+
# For information about customizing web requests and responses, see
|
2150
|
+
# [Customizing web requests and responses in AWS WAF][1] in the [AWS WAF
|
2151
|
+
# Developer Guide][2].
|
2152
|
+
#
|
2153
|
+
#
|
2154
|
+
#
|
2155
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html
|
2156
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2157
|
+
#
|
2158
|
+
# @note When making an API call, you may pass CustomResponse
|
2159
|
+
# data as a hash:
|
2160
|
+
#
|
2161
|
+
# {
|
2162
|
+
# response_code: 1, # required
|
2163
|
+
# custom_response_body_key: "EntityName",
|
2164
|
+
# response_headers: [
|
2165
|
+
# {
|
2166
|
+
# name: "CustomHTTPHeaderName", # required
|
2167
|
+
# value: "CustomHTTPHeaderValue", # required
|
2168
|
+
# },
|
2169
|
+
# ],
|
2170
|
+
# }
|
2171
|
+
#
|
2172
|
+
# @!attribute [rw] response_code
|
2173
|
+
# The HTTP status code to return to the client.
|
2174
|
+
#
|
2175
|
+
# For a list of status codes that you can use in your custom
|
2176
|
+
# reqponses, see [Supported status codes for custom response][1] in
|
2177
|
+
# the [AWS WAF Developer Guide][2].
|
2178
|
+
#
|
2179
|
+
#
|
2180
|
+
#
|
2181
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/customizing-the-response-status-codes.html
|
2182
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2183
|
+
# @return [Integer]
|
2184
|
+
#
|
2185
|
+
# @!attribute [rw] custom_response_body_key
|
2186
|
+
# References the response body that you want AWS WAF to return to the
|
2187
|
+
# web request client. You can define a custom response for a rule
|
2188
|
+
# action or a default web ACL action that is set to block. To do this,
|
2189
|
+
# you first define the response body key and value in the
|
2190
|
+
# `CustomResponseBodies` setting for the WebACL or RuleGroup where you
|
2191
|
+
# want to use it. Then, in the rule action or web ACL default action
|
2192
|
+
# `BlockAction` setting, you reference the response body using this
|
2193
|
+
# key.
|
2194
|
+
# @return [String]
|
2195
|
+
#
|
2196
|
+
# @!attribute [rw] response_headers
|
2197
|
+
# The HTTP headers to use in the response. Duplicate header names are
|
2198
|
+
# not allowed.
|
2199
|
+
#
|
2200
|
+
# For information about the limits on count and size for custom
|
2201
|
+
# request and response settings, see [AWS WAF quotas][1] in the [AWS
|
2202
|
+
# WAF Developer Guide][2].
|
2203
|
+
#
|
2204
|
+
#
|
2205
|
+
#
|
2206
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/limits.html
|
2207
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2208
|
+
# @return [Array<Types::CustomHTTPHeader>]
|
2209
|
+
#
|
2210
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/CustomResponse AWS API Documentation
|
2211
|
+
#
|
2212
|
+
class CustomResponse < Struct.new(
|
2213
|
+
:response_code,
|
2214
|
+
:custom_response_body_key,
|
2215
|
+
:response_headers)
|
2216
|
+
SENSITIVE = []
|
2217
|
+
include Aws::Structure
|
2218
|
+
end
|
2219
|
+
|
2220
|
+
# The response body to use in a custom response to a web request. This
|
2221
|
+
# is referenced by key from CustomResponse `CustomResponseBodyKey`.
|
2222
|
+
#
|
2223
|
+
# @note When making an API call, you may pass CustomResponseBody
|
2224
|
+
# data as a hash:
|
2225
|
+
#
|
2226
|
+
# {
|
2227
|
+
# content_type: "TEXT_PLAIN", # required, accepts TEXT_PLAIN, TEXT_HTML, APPLICATION_JSON
|
2228
|
+
# content: "ResponseContent", # required
|
2229
|
+
# }
|
2230
|
+
#
|
2231
|
+
# @!attribute [rw] content_type
|
2232
|
+
# The type of content in the payload that you are defining in the
|
2233
|
+
# `Content` string.
|
2234
|
+
# @return [String]
|
2235
|
+
#
|
2236
|
+
# @!attribute [rw] content
|
2237
|
+
# The payload of the custom response.
|
2238
|
+
#
|
2239
|
+
# You can use JSON escape strings in JSON content. To do this, you
|
2240
|
+
# must specify JSON content in the `ContentType` setting.
|
2241
|
+
#
|
2242
|
+
# For information about the limits on count and size for custom
|
2243
|
+
# request and response settings, see [AWS WAF quotas][1] in the [AWS
|
2244
|
+
# WAF Developer Guide][2].
|
2245
|
+
#
|
2246
|
+
#
|
2247
|
+
#
|
2248
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/limits.html
|
2249
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2250
|
+
# @return [String]
|
2251
|
+
#
|
2252
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/CustomResponseBody AWS API Documentation
|
2253
|
+
#
|
2254
|
+
class CustomResponseBody < Struct.new(
|
2255
|
+
:content_type,
|
2256
|
+
:content)
|
2257
|
+
SENSITIVE = []
|
2258
|
+
include Aws::Structure
|
2259
|
+
end
|
2260
|
+
|
2261
|
+
# In a WebACL, this is the action that you want AWS WAF to perform when
|
2262
|
+
# a web request doesn't match any of the rules in the `WebACL`. The
|
2263
|
+
# default action must be a terminating action, so you can't use count.
|
1689
2264
|
#
|
1690
2265
|
# @note When making an API call, you may pass DefaultAction
|
1691
2266
|
# data as a hash:
|
1692
2267
|
#
|
1693
2268
|
# {
|
1694
2269
|
# block: {
|
2270
|
+
# custom_response: {
|
2271
|
+
# response_code: 1, # required
|
2272
|
+
# custom_response_body_key: "EntityName",
|
2273
|
+
# response_headers: [
|
2274
|
+
# {
|
2275
|
+
# name: "CustomHTTPHeaderName", # required
|
2276
|
+
# value: "CustomHTTPHeaderValue", # required
|
2277
|
+
# },
|
2278
|
+
# ],
|
2279
|
+
# },
|
1695
2280
|
# },
|
1696
2281
|
# allow: {
|
2282
|
+
# custom_request_handling: {
|
2283
|
+
# insert_headers: [ # required
|
2284
|
+
# {
|
2285
|
+
# name: "CustomHTTPHeaderName", # required
|
2286
|
+
# value: "CustomHTTPHeaderValue", # required
|
2287
|
+
# },
|
2288
|
+
# ],
|
2289
|
+
# },
|
1697
2290
|
# },
|
1698
2291
|
# }
|
1699
2292
|
#
|
@@ -2171,22 +2764,11 @@ module Aws::WAFV2
|
|
2171
2764
|
#
|
2172
2765
|
class DisassociateWebACLResponse < Aws::EmptyStructure; end
|
2173
2766
|
|
2174
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
2175
|
-
# in November, 2019. For information, including how to migrate your AWS
|
2176
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
2177
|
-
# Guide][1].
|
2178
|
-
#
|
2179
|
-
# </note>
|
2180
|
-
#
|
2181
2767
|
# Specifies a single rule to exclude from the rule group. Excluding a
|
2182
2768
|
# rule overrides its action setting for the rule group in the web ACL,
|
2183
2769
|
# setting it to `COUNT`. This effectively excludes the rule from acting
|
2184
2770
|
# on web requests.
|
2185
2771
|
#
|
2186
|
-
#
|
2187
|
-
#
|
2188
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2189
|
-
#
|
2190
2772
|
# @note When making an API call, you may pass ExcludedRule
|
2191
2773
|
# data as a hash:
|
2192
2774
|
#
|
@@ -2206,13 +2788,6 @@ module Aws::WAFV2
|
|
2206
2788
|
include Aws::Structure
|
2207
2789
|
end
|
2208
2790
|
|
2209
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
2210
|
-
# in November, 2019. For information, including how to migrate your AWS
|
2211
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
2212
|
-
# Guide][1].
|
2213
|
-
#
|
2214
|
-
# </note>
|
2215
|
-
#
|
2216
2791
|
# The part of a web request that you want AWS WAF to inspect. Include
|
2217
2792
|
# the single `FieldToMatch` type that you want to inspect, with
|
2218
2793
|
# additional specifications as needed, according to the type. You
|
@@ -2220,10 +2795,6 @@ module Aws::WAFV2
|
|
2220
2795
|
# statement that requires it. To inspect more than one component of a
|
2221
2796
|
# web request, create a separate rule statement for each component.
|
2222
2797
|
#
|
2223
|
-
#
|
2224
|
-
#
|
2225
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2226
|
-
#
|
2227
2798
|
# @note When making an API call, you may pass FieldToMatch
|
2228
2799
|
# data as a hash:
|
2229
2800
|
#
|
@@ -2244,12 +2815,23 @@ module Aws::WAFV2
|
|
2244
2815
|
# },
|
2245
2816
|
# method: {
|
2246
2817
|
# },
|
2818
|
+
# json_body: {
|
2819
|
+
# match_pattern: { # required
|
2820
|
+
# all: {
|
2821
|
+
# },
|
2822
|
+
# included_paths: ["JsonPointerPath"],
|
2823
|
+
# },
|
2824
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
2825
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
2826
|
+
# },
|
2247
2827
|
# }
|
2248
2828
|
#
|
2249
2829
|
# @!attribute [rw] single_header
|
2250
2830
|
# Inspect a single header. Provide the name of the header to inspect,
|
2251
2831
|
# for example, `User-Agent` or `Referer`. This setting isn't case
|
2252
2832
|
# sensitive.
|
2833
|
+
#
|
2834
|
+
# Example JSON: `"SingleHeader": \{ "Name": "haystack" \}`
|
2253
2835
|
# @return [Types::SingleHeader]
|
2254
2836
|
#
|
2255
2837
|
# @!attribute [rw] single_query_argument
|
@@ -2259,6 +2841,8 @@ module Aws::WAFV2
|
|
2259
2841
|
#
|
2260
2842
|
# This is used only to indicate the web request component for AWS WAF
|
2261
2843
|
# to inspect, in the FieldToMatch specification.
|
2844
|
+
#
|
2845
|
+
# Example JSON: `"SingleQueryArgument": \{ "Name": "myArgument" \}`
|
2262
2846
|
# @return [Types::SingleQueryArgument]
|
2263
2847
|
#
|
2264
2848
|
# @!attribute [rw] all_query_arguments
|
@@ -2276,10 +2860,10 @@ module Aws::WAFV2
|
|
2276
2860
|
# @return [Types::QueryString]
|
2277
2861
|
#
|
2278
2862
|
# @!attribute [rw] body
|
2279
|
-
# Inspect the request body
|
2280
|
-
# headers. This is the part of a request that
|
2281
|
-
# data that you want to send to your web
|
2282
|
-
# body, such as data from a form.
|
2863
|
+
# Inspect the request body as plain text. The request body immediately
|
2864
|
+
# follows the request headers. This is the part of a request that
|
2865
|
+
# contains any additional data that you want to send to your web
|
2866
|
+
# server as the HTTP request body, such as data from a form.
|
2283
2867
|
#
|
2284
2868
|
# Note that only the first 8 KB (8192 bytes) of the request body are
|
2285
2869
|
# forwarded to AWS WAF for inspection by the underlying host service.
|
@@ -2297,6 +2881,23 @@ module Aws::WAFV2
|
|
2297
2881
|
# that the request is asking the origin to perform.
|
2298
2882
|
# @return [Types::Method]
|
2299
2883
|
#
|
2884
|
+
# @!attribute [rw] json_body
|
2885
|
+
# Inspect the request body as JSON. The request body immediately
|
2886
|
+
# follows the request headers. This is the part of a request that
|
2887
|
+
# contains any additional data that you want to send to your web
|
2888
|
+
# server as the HTTP request body, such as data from a form.
|
2889
|
+
#
|
2890
|
+
# Note that only the first 8 KB (8192 bytes) of the request body are
|
2891
|
+
# forwarded to AWS WAF for inspection by the underlying host service.
|
2892
|
+
# If you don't need to inspect more than 8 KB, you can guarantee that
|
2893
|
+
# you don't allow additional bytes in by combining a statement that
|
2894
|
+
# inspects the body of the web request, such as ByteMatchStatement or
|
2895
|
+
# RegexPatternSetReferenceStatement, with a SizeConstraintStatement
|
2896
|
+
# that enforces an 8 KB size limit on the body of the request. AWS WAF
|
2897
|
+
# doesn't support inspecting the entire contents of web requests
|
2898
|
+
# whose bodies exceed the 8 KB limit.
|
2899
|
+
# @return [Types::JsonBody]
|
2900
|
+
#
|
2300
2901
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/FieldToMatch AWS API Documentation
|
2301
2902
|
#
|
2302
2903
|
class FieldToMatch < Struct.new(
|
@@ -2306,7 +2907,8 @@ module Aws::WAFV2
|
|
2306
2907
|
:uri_path,
|
2307
2908
|
:query_string,
|
2308
2909
|
:body,
|
2309
|
-
:method
|
2910
|
+
:method,
|
2911
|
+
:json_body)
|
2310
2912
|
SENSITIVE = []
|
2311
2913
|
include Aws::Structure
|
2312
2914
|
end
|
@@ -2352,19 +2954,8 @@ module Aws::WAFV2
|
|
2352
2954
|
# @return [Types::OverrideAction]
|
2353
2955
|
#
|
2354
2956
|
# @!attribute [rw] visibility_config
|
2355
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
2356
|
-
# in November, 2019. For information, including how to migrate your
|
2357
|
-
# AWS WAF resources from the prior release, see the [AWS WAF Developer
|
2358
|
-
# Guide][1].
|
2359
|
-
#
|
2360
|
-
# </note>
|
2361
|
-
#
|
2362
2957
|
# Defines and enables Amazon CloudWatch metrics and web request sample
|
2363
2958
|
# collection.
|
2364
|
-
#
|
2365
|
-
#
|
2366
|
-
#
|
2367
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2368
2959
|
# @return [Types::VisibilityConfig]
|
2369
2960
|
#
|
2370
2961
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/FirewallManagerRuleGroup AWS API Documentation
|
@@ -2384,13 +2975,6 @@ module Aws::WAFV2
|
|
2384
2975
|
# reference.
|
2385
2976
|
#
|
2386
2977
|
# @!attribute [rw] managed_rule_group_statement
|
2387
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
2388
|
-
# in November, 2019. For information, including how to migrate your
|
2389
|
-
# AWS WAF resources from the prior release, see the [AWS WAF Developer
|
2390
|
-
# Guide][1].
|
2391
|
-
#
|
2392
|
-
# </note>
|
2393
|
-
#
|
2394
2978
|
# A rule statement used to run the rules that are defined in a managed
|
2395
2979
|
# rule group. To use this, provide the vendor name and the name of the
|
2396
2980
|
# rule group in this statement. You can retrieve the required names by
|
@@ -2399,20 +2983,9 @@ module Aws::WAFV2
|
|
2399
2983
|
# You can't nest a `ManagedRuleGroupStatement`, for example for use
|
2400
2984
|
# inside a `NotStatement` or `OrStatement`. It can only be referenced
|
2401
2985
|
# as a top-level statement within a rule.
|
2402
|
-
#
|
2403
|
-
#
|
2404
|
-
#
|
2405
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2406
2986
|
# @return [Types::ManagedRuleGroupStatement]
|
2407
2987
|
#
|
2408
2988
|
# @!attribute [rw] rule_group_reference_statement
|
2409
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
2410
|
-
# in November, 2019. For information, including how to migrate your
|
2411
|
-
# AWS WAF resources from the prior release, see the [AWS WAF Developer
|
2412
|
-
# Guide][1].
|
2413
|
-
#
|
2414
|
-
# </note>
|
2415
|
-
#
|
2416
2989
|
# A rule statement used to run the rules that are defined in a
|
2417
2990
|
# RuleGroup. To use this, create a rule group with your rules, then
|
2418
2991
|
# provide the ARN of the rule group in this statement.
|
@@ -2420,10 +2993,6 @@ module Aws::WAFV2
|
|
2420
2993
|
# You cannot nest a `RuleGroupReferenceStatement`, for example for use
|
2421
2994
|
# inside a `NotStatement` or `OrStatement`. It can only be referenced
|
2422
2995
|
# as a top-level statement within a rule.
|
2423
|
-
#
|
2424
|
-
#
|
2425
|
-
#
|
2426
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2427
2996
|
# @return [Types::RuleGroupReferenceStatement]
|
2428
2997
|
#
|
2429
2998
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/FirewallManagerStatement AWS API Documentation
|
@@ -2482,10 +3051,10 @@ module Aws::WAFV2
|
|
2482
3051
|
#
|
2483
3052
|
# You can specify the following fallback behaviors:
|
2484
3053
|
#
|
2485
|
-
# * MATCH - Treat the web request as matching the rule statement.
|
2486
|
-
# WAF applies the rule action to the request.
|
3054
|
+
# * `MATCH` - Treat the web request as matching the rule statement.
|
3055
|
+
# AWS WAF applies the rule action to the request.
|
2487
3056
|
#
|
2488
|
-
# *
|
3057
|
+
# * `NO_MATCH` - Treat the web request as not matching the rule
|
2489
3058
|
# statement.
|
2490
3059
|
# @return [String]
|
2491
3060
|
#
|
@@ -2498,20 +3067,9 @@ module Aws::WAFV2
|
|
2498
3067
|
include Aws::Structure
|
2499
3068
|
end
|
2500
3069
|
|
2501
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
2502
|
-
# in November, 2019. For information, including how to migrate your AWS
|
2503
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
2504
|
-
# Guide][1].
|
2505
|
-
#
|
2506
|
-
# </note>
|
2507
|
-
#
|
2508
3070
|
# A rule statement used to identify web requests based on country of
|
2509
3071
|
# origin.
|
2510
3072
|
#
|
2511
|
-
#
|
2512
|
-
#
|
2513
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
2514
|
-
#
|
2515
3073
|
# @note When making an API call, you may pass GeoMatchStatement
|
2516
3074
|
# data as a hash:
|
2517
3075
|
#
|
@@ -2934,7 +3492,8 @@ module Aws::WAFV2
|
|
2934
3492
|
# You must specify the times in Coordinated Universal Time (UTC)
|
2935
3493
|
# format. UTC format includes the special designator, `Z`. For
|
2936
3494
|
# example, `"2016-09-27T14:50Z"`. You can specify any time range in
|
2937
|
-
# the previous three hours.
|
3495
|
+
# the previous three hours. If you specify a start time that's
|
3496
|
+
# earlier than three hours ago, AWS WAF sets it to three hours ago.
|
2938
3497
|
# @return [Types::TimeWindow]
|
2939
3498
|
#
|
2940
3499
|
# @!attribute [rw] max_items
|
@@ -3091,22 +3650,11 @@ module Aws::WAFV2
|
|
3091
3650
|
include Aws::Structure
|
3092
3651
|
end
|
3093
3652
|
|
3094
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
3095
|
-
# in November, 2019. For information, including how to migrate your AWS
|
3096
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
3097
|
-
# Guide][1].
|
3098
|
-
#
|
3099
|
-
# </note>
|
3100
|
-
#
|
3101
3653
|
# Part of the response from GetSampledRequests. This is a complex type
|
3102
3654
|
# that appears as `Headers` in the response syntax. `HTTPHeader`
|
3103
3655
|
# contains the names and values of all of the headers that appear in one
|
3104
3656
|
# of the web requests.
|
3105
3657
|
#
|
3106
|
-
#
|
3107
|
-
#
|
3108
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
3109
|
-
#
|
3110
3658
|
# @!attribute [rw] name
|
3111
3659
|
# The name of the HTTP header.
|
3112
3660
|
# @return [String]
|
@@ -3124,21 +3672,10 @@ module Aws::WAFV2
|
|
3124
3672
|
include Aws::Structure
|
3125
3673
|
end
|
3126
3674
|
|
3127
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
3128
|
-
# in November, 2019. For information, including how to migrate your AWS
|
3129
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
3130
|
-
# Guide][1].
|
3131
|
-
#
|
3132
|
-
# </note>
|
3133
|
-
#
|
3134
3675
|
# Part of the response from GetSampledRequests. This is a complex type
|
3135
3676
|
# that appears as `Request` in the response syntax. `HTTPRequest`
|
3136
3677
|
# contains information about one of the web requests.
|
3137
3678
|
#
|
3138
|
-
#
|
3139
|
-
#
|
3140
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
3141
|
-
#
|
3142
3679
|
# @!attribute [rw] client_ip
|
3143
3680
|
# The IP address that the request originated from. If the web ACL is
|
3144
3681
|
# associated with a CloudFront distribution, this is the value of one
|
@@ -3193,17 +3730,11 @@ module Aws::WAFV2
|
|
3193
3730
|
include Aws::Structure
|
3194
3731
|
end
|
3195
3732
|
|
3196
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
3197
|
-
# in November, 2019. For information, including how to migrate your AWS
|
3198
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
3199
|
-
# Guide][1].
|
3200
|
-
#
|
3201
|
-
# </note>
|
3202
|
-
#
|
3203
3733
|
# Contains one or more IP addresses or blocks of IP addresses specified
|
3204
3734
|
# in Classless Inter-Domain Routing (CIDR) notation. AWS WAF supports
|
3205
|
-
#
|
3206
|
-
# entry [Classless Inter-Domain
|
3735
|
+
# all IPv4 and IPv6 CIDR ranges except for /0. For information about
|
3736
|
+
# CIDR notation, see the Wikipedia entry [Classless Inter-Domain
|
3737
|
+
# Routing][1].
|
3207
3738
|
#
|
3208
3739
|
# AWS WAF assigns an ARN to each `IPSet` that you create. To use an IP
|
3209
3740
|
# set in a rule, you provide the ARN to the Rule statement
|
@@ -3211,8 +3742,7 @@ module Aws::WAFV2
|
|
3211
3742
|
#
|
3212
3743
|
#
|
3213
3744
|
#
|
3214
|
-
# [1]: https://
|
3215
|
-
# [2]: https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing
|
3745
|
+
# [1]: https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing
|
3216
3746
|
#
|
3217
3747
|
# @!attribute [rw] name
|
3218
3748
|
# The name of the IP set. You cannot change the name of an `IPSet`
|
@@ -3230,8 +3760,7 @@ module Aws::WAFV2
|
|
3230
3760
|
# @return [String]
|
3231
3761
|
#
|
3232
3762
|
# @!attribute [rw] description
|
3233
|
-
# A description of the IP set that helps with identification.
|
3234
|
-
# cannot change the description of an IP set after you create it.
|
3763
|
+
# A description of the IP set that helps with identification.
|
3235
3764
|
# @return [String]
|
3236
3765
|
#
|
3237
3766
|
# @!attribute [rw] ip_address_version
|
@@ -3241,8 +3770,8 @@ module Aws::WAFV2
|
|
3241
3770
|
# @!attribute [rw] addresses
|
3242
3771
|
# Contains an array of strings that specify one or more IP addresses
|
3243
3772
|
# or blocks of IP addresses in Classless Inter-Domain Routing (CIDR)
|
3244
|
-
# notation. AWS WAF supports all
|
3245
|
-
#
|
3773
|
+
# notation. AWS WAF supports all IPv4 and IPv6 CIDR ranges except for
|
3774
|
+
# /0.
|
3246
3775
|
#
|
3247
3776
|
# Examples:
|
3248
3777
|
#
|
@@ -3331,10 +3860,10 @@ module Aws::WAFV2
|
|
3331
3860
|
#
|
3332
3861
|
# You can specify the following fallback behaviors:
|
3333
3862
|
#
|
3334
|
-
# * MATCH - Treat the web request as matching the rule statement.
|
3335
|
-
# WAF applies the rule action to the request.
|
3863
|
+
# * `MATCH` - Treat the web request as matching the rule statement.
|
3864
|
+
# AWS WAF applies the rule action to the request.
|
3336
3865
|
#
|
3337
|
-
# *
|
3866
|
+
# * `NO_MATCH` - Treat the web request as not matching the rule
|
3338
3867
|
# statement.
|
3339
3868
|
# @return [String]
|
3340
3869
|
#
|
@@ -3368,13 +3897,6 @@ module Aws::WAFV2
|
|
3368
3897
|
include Aws::Structure
|
3369
3898
|
end
|
3370
3899
|
|
3371
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
3372
|
-
# in November, 2019. For information, including how to migrate your AWS
|
3373
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
3374
|
-
# Guide][1].
|
3375
|
-
#
|
3376
|
-
# </note>
|
3377
|
-
#
|
3378
3900
|
# A rule statement used to detect web requests coming from particular IP
|
3379
3901
|
# addresses or address ranges. To use this, create an IPSet that
|
3380
3902
|
# specifies the addresses you want to detect, then use the ARN of that
|
@@ -3385,10 +3907,6 @@ module Aws::WAFV2
|
|
3385
3907
|
# single set in multiple rules. When you update the referenced set, AWS
|
3386
3908
|
# WAF automatically updates all rules that reference it.
|
3387
3909
|
#
|
3388
|
-
#
|
3389
|
-
#
|
3390
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
3391
|
-
#
|
3392
3910
|
# @note When making an API call, you may pass IPSetReferenceStatement
|
3393
3911
|
# data as a hash:
|
3394
3912
|
#
|
@@ -3427,22 +3945,11 @@ module Aws::WAFV2
|
|
3427
3945
|
include Aws::Structure
|
3428
3946
|
end
|
3429
3947
|
|
3430
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
3431
|
-
# in November, 2019. For information, including how to migrate your AWS
|
3432
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
3433
|
-
# Guide][1].
|
3434
|
-
#
|
3435
|
-
# </note>
|
3436
|
-
#
|
3437
3948
|
# High-level information about an IPSet, returned by operations like
|
3438
3949
|
# create and list. This provides information like the ID, that you can
|
3439
3950
|
# use to retrieve and manage an `IPSet`, and the ARN, that you provide
|
3440
3951
|
# to the IPSetReferenceStatement to use the address set in a Rule.
|
3441
3952
|
#
|
3442
|
-
#
|
3443
|
-
#
|
3444
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
3445
|
-
#
|
3446
3953
|
# @!attribute [rw] name
|
3447
3954
|
# The name of the IP set. You cannot change the name of an `IPSet`
|
3448
3955
|
# after you create it.
|
@@ -3455,8 +3962,7 @@ module Aws::WAFV2
|
|
3455
3962
|
# @return [String]
|
3456
3963
|
#
|
3457
3964
|
# @!attribute [rw] description
|
3458
|
-
# A description of the IP set that helps with identification.
|
3459
|
-
# cannot change the description of an IP set after you create it.
|
3965
|
+
# A description of the IP set that helps with identification.
|
3460
3966
|
# @return [String]
|
3461
3967
|
#
|
3462
3968
|
# @!attribute [rw] lock_token
|
@@ -3487,6 +3993,123 @@ module Aws::WAFV2
|
|
3487
3993
|
include Aws::Structure
|
3488
3994
|
end
|
3489
3995
|
|
3996
|
+
# The body of a web request, inspected as JSON. The body immediately
|
3997
|
+
# follows the request headers. This is used in the FieldToMatch
|
3998
|
+
# specification.
|
3999
|
+
#
|
4000
|
+
# Use the specifications in this object to indicate which parts of the
|
4001
|
+
# JSON body to inspect using the rule's inspection criteria. AWS WAF
|
4002
|
+
# inspects only the parts of the JSON that result from the matches that
|
4003
|
+
# you indicate.
|
4004
|
+
#
|
4005
|
+
# @note When making an API call, you may pass JsonBody
|
4006
|
+
# data as a hash:
|
4007
|
+
#
|
4008
|
+
# {
|
4009
|
+
# match_pattern: { # required
|
4010
|
+
# all: {
|
4011
|
+
# },
|
4012
|
+
# included_paths: ["JsonPointerPath"],
|
4013
|
+
# },
|
4014
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
4015
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
4016
|
+
# }
|
4017
|
+
#
|
4018
|
+
# @!attribute [rw] match_pattern
|
4019
|
+
# The patterns to look for in the JSON body. AWS WAF inspects the
|
4020
|
+
# results of these pattern matches against the rule inspection
|
4021
|
+
# criteria.
|
4022
|
+
# @return [Types::JsonMatchPattern]
|
4023
|
+
#
|
4024
|
+
# @!attribute [rw] match_scope
|
4025
|
+
# The parts of the JSON to match against using the `MatchPattern`. If
|
4026
|
+
# you specify `All`, AWS WAF matches against keys and values.
|
4027
|
+
# @return [String]
|
4028
|
+
#
|
4029
|
+
# @!attribute [rw] invalid_fallback_behavior
|
4030
|
+
# The inspection behavior to fall back to if the JSON in the request
|
4031
|
+
# body is invalid. For AWS WAF, invalid JSON is any content that
|
4032
|
+
# isn't complete syntactical JSON, content whose root node isn't an
|
4033
|
+
# object or an array, and duplicate keys in the content.
|
4034
|
+
#
|
4035
|
+
# You can specify the following fallback behaviors:
|
4036
|
+
#
|
4037
|
+
# * `MATCH` - Treat the web request as matching the rule statement.
|
4038
|
+
# AWS WAF applies the rule action to the request.
|
4039
|
+
#
|
4040
|
+
# * `NO_MATCH` - Treat the web request as not matching the rule
|
4041
|
+
# statement.
|
4042
|
+
#
|
4043
|
+
# * `EVALUATE_AS_STRING` - Inspect the body as plain text. This option
|
4044
|
+
# applies the text transformations and inspection criteria that you
|
4045
|
+
# defined for the JSON inspection to the body text string.
|
4046
|
+
#
|
4047
|
+
# If you don't provide this setting, when AWS WAF encounters invalid
|
4048
|
+
# JSON, it parses and inspects what it can, up to the first invalid
|
4049
|
+
# JSON that it encounters.
|
4050
|
+
# @return [String]
|
4051
|
+
#
|
4052
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/JsonBody AWS API Documentation
|
4053
|
+
#
|
4054
|
+
class JsonBody < Struct.new(
|
4055
|
+
:match_pattern,
|
4056
|
+
:match_scope,
|
4057
|
+
:invalid_fallback_behavior)
|
4058
|
+
SENSITIVE = []
|
4059
|
+
include Aws::Structure
|
4060
|
+
end
|
4061
|
+
|
4062
|
+
# The patterns to look for in the JSON body. AWS WAF inspects the
|
4063
|
+
# results of these pattern matches against the rule inspection criteria.
|
4064
|
+
# This is used with the FieldToMatch option `JsonBody`.
|
4065
|
+
#
|
4066
|
+
# @note When making an API call, you may pass JsonMatchPattern
|
4067
|
+
# data as a hash:
|
4068
|
+
#
|
4069
|
+
# {
|
4070
|
+
# all: {
|
4071
|
+
# },
|
4072
|
+
# included_paths: ["JsonPointerPath"],
|
4073
|
+
# }
|
4074
|
+
#
|
4075
|
+
# @!attribute [rw] all
|
4076
|
+
# Match all of the elements. See also `MatchScope` in JsonBody.
|
4077
|
+
#
|
4078
|
+
# You must specify either this setting or the `IncludedPaths` setting,
|
4079
|
+
# but not both.
|
4080
|
+
# @return [Types::All]
|
4081
|
+
#
|
4082
|
+
# @!attribute [rw] included_paths
|
4083
|
+
# Match only the specified include paths. See also `MatchScope` in
|
4084
|
+
# JsonBody.
|
4085
|
+
#
|
4086
|
+
# Provide the include paths using JSON Pointer syntax. For example,
|
4087
|
+
# `"IncludedPaths": ["/dogs/0/name", "/dogs/1/name"]`. For information
|
4088
|
+
# about this syntax, see the Internet Engineering Task Force (IETF)
|
4089
|
+
# documentation [JavaScript Object Notation (JSON) Pointer][1].
|
4090
|
+
#
|
4091
|
+
# You must specify either this setting or the `All` setting, but not
|
4092
|
+
# both.
|
4093
|
+
#
|
4094
|
+
# <note markdown="1"> Don't use this option to include all paths. Instead, use the `All`
|
4095
|
+
# setting.
|
4096
|
+
#
|
4097
|
+
# </note>
|
4098
|
+
#
|
4099
|
+
#
|
4100
|
+
#
|
4101
|
+
# [1]: https://tools.ietf.org/html/rfc6901
|
4102
|
+
# @return [Array<String>]
|
4103
|
+
#
|
4104
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/JsonMatchPattern AWS API Documentation
|
4105
|
+
#
|
4106
|
+
class JsonMatchPattern < Struct.new(
|
4107
|
+
:all,
|
4108
|
+
:included_paths)
|
4109
|
+
SENSITIVE = []
|
4110
|
+
include Aws::Structure
|
4111
|
+
end
|
4112
|
+
|
3490
4113
|
# @note When making an API call, you may pass ListAvailableManagedRuleGroupsRequest
|
3491
4114
|
# data as a hash:
|
3492
4115
|
#
|
@@ -4002,22 +4625,11 @@ module Aws::WAFV2
|
|
4002
4625
|
include Aws::Structure
|
4003
4626
|
end
|
4004
4627
|
|
4005
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
4006
|
-
# in November, 2019. For information, including how to migrate your AWS
|
4007
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
4008
|
-
# Guide][1].
|
4009
|
-
#
|
4010
|
-
# </note>
|
4011
|
-
#
|
4012
4628
|
# Defines an association between Amazon Kinesis Data Firehose
|
4013
4629
|
# destinations and a web ACL resource, for logging from AWS WAF. As part
|
4014
4630
|
# of the association, you can specify parts of the standard logging
|
4015
4631
|
# fields to keep out of the logs.
|
4016
4632
|
#
|
4017
|
-
#
|
4018
|
-
#
|
4019
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
4020
|
-
#
|
4021
4633
|
# @note When making an API call, you may pass LoggingConfiguration
|
4022
4634
|
# data as a hash:
|
4023
4635
|
#
|
@@ -4042,6 +4654,15 @@ module Aws::WAFV2
|
|
4042
4654
|
# },
|
4043
4655
|
# method: {
|
4044
4656
|
# },
|
4657
|
+
# json_body: {
|
4658
|
+
# match_pattern: { # required
|
4659
|
+
# all: {
|
4660
|
+
# },
|
4661
|
+
# included_paths: ["JsonPointerPath"],
|
4662
|
+
# },
|
4663
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
4664
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
4665
|
+
# },
|
4045
4666
|
# },
|
4046
4667
|
# ],
|
4047
4668
|
# managed_by_firewall_manager: false,
|
@@ -4085,13 +4706,6 @@ module Aws::WAFV2
|
|
4085
4706
|
include Aws::Structure
|
4086
4707
|
end
|
4087
4708
|
|
4088
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
4089
|
-
# in November, 2019. For information, including how to migrate your AWS
|
4090
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
4091
|
-
# Guide][1].
|
4092
|
-
#
|
4093
|
-
# </note>
|
4094
|
-
#
|
4095
4709
|
# A rule statement used to run the rules that are defined in a managed
|
4096
4710
|
# rule group. To use this, provide the vendor name and the name of the
|
4097
4711
|
# rule group in this statement. You can retrieve the required names by
|
@@ -4101,10 +4715,6 @@ module Aws::WAFV2
|
|
4101
4715
|
# inside a `NotStatement` or `OrStatement`. It can only be referenced as
|
4102
4716
|
# a top-level statement within a rule.
|
4103
4717
|
#
|
4104
|
-
#
|
4105
|
-
#
|
4106
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
4107
|
-
#
|
4108
4718
|
# @note When making an API call, you may pass ManagedRuleGroupStatement
|
4109
4719
|
# data as a hash:
|
4110
4720
|
#
|
@@ -4144,13 +4754,6 @@ module Aws::WAFV2
|
|
4144
4754
|
include Aws::Structure
|
4145
4755
|
end
|
4146
4756
|
|
4147
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
4148
|
-
# in November, 2019. For information, including how to migrate your AWS
|
4149
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
4150
|
-
# Guide][1].
|
4151
|
-
#
|
4152
|
-
# </note>
|
4153
|
-
#
|
4154
4757
|
# High-level information about a managed rule group, returned by
|
4155
4758
|
# ListAvailableManagedRuleGroups. This provides information like the
|
4156
4759
|
# name and vendor name, that you provide when you add a
|
@@ -4159,10 +4762,6 @@ module Aws::WAFV2
|
|
4159
4762
|
# customers, and AWS Marketplace managed rule groups, which you can
|
4160
4763
|
# subscribe to through AWS Marketplace.
|
4161
4764
|
#
|
4162
|
-
#
|
4163
|
-
#
|
4164
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
4165
|
-
#
|
4166
4765
|
# @!attribute [rw] vendor_name
|
4167
4766
|
# The name of the managed rule group vendor. You use this, along with
|
4168
4767
|
# the rule group name, to identify the rule group.
|
@@ -4188,46 +4787,24 @@ module Aws::WAFV2
|
|
4188
4787
|
include Aws::Structure
|
4189
4788
|
end
|
4190
4789
|
|
4191
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
4192
|
-
# in November, 2019. For information, including how to migrate your AWS
|
4193
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
4194
|
-
# Guide][1].
|
4195
|
-
#
|
4196
|
-
# </note>
|
4197
|
-
#
|
4198
4790
|
# The HTTP method of a web request. The method indicates the type of
|
4199
4791
|
# operation that the request is asking the origin to perform.
|
4200
4792
|
#
|
4201
4793
|
# This is used only to indicate the web request component for AWS WAF to
|
4202
4794
|
# inspect, in the FieldToMatch specification.
|
4203
4795
|
#
|
4204
|
-
#
|
4205
|
-
#
|
4206
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
4207
|
-
#
|
4208
4796
|
# @api private
|
4209
4797
|
#
|
4210
4798
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/Method AWS API Documentation
|
4211
4799
|
#
|
4212
4800
|
class Method < Aws::EmptyStructure; end
|
4213
4801
|
|
4214
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
4215
|
-
# in November, 2019. For information, including how to migrate your AWS
|
4216
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
4217
|
-
# Guide][1].
|
4218
|
-
#
|
4219
|
-
# </note>
|
4220
|
-
#
|
4221
4802
|
# Specifies that AWS WAF should do nothing. This is generally used to
|
4222
4803
|
# try out a rule without performing any actions. You set the
|
4223
4804
|
# `OverrideAction` on the Rule.
|
4224
4805
|
#
|
4225
|
-
# This is used
|
4226
|
-
#
|
4227
|
-
#
|
4228
|
-
#
|
4229
|
-
#
|
4230
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
4806
|
+
# This is used in the context of other settings, for example to specify
|
4807
|
+
# values for RuleAction and web ACL DefaultAction.
|
4231
4808
|
#
|
4232
4809
|
# @api private
|
4233
4810
|
#
|
@@ -4235,20 +4812,9 @@ module Aws::WAFV2
|
|
4235
4812
|
#
|
4236
4813
|
class NoneAction < Aws::EmptyStructure; end
|
4237
4814
|
|
4238
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
4239
|
-
# in November, 2019. For information, including how to migrate your AWS
|
4240
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
4241
|
-
# Guide][1].
|
4242
|
-
#
|
4243
|
-
# </note>
|
4244
|
-
#
|
4245
4815
|
# A logical rule statement used to negate the results of another rule
|
4246
4816
|
# statement. You provide one Statement within the `NotStatement`.
|
4247
4817
|
#
|
4248
|
-
#
|
4249
|
-
#
|
4250
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
4251
|
-
#
|
4252
4818
|
# @note When making an API call, you may pass NotStatement
|
4253
4819
|
# data as a hash:
|
4254
4820
|
#
|
@@ -4273,6 +4839,15 @@ module Aws::WAFV2
|
|
4273
4839
|
# },
|
4274
4840
|
# method: {
|
4275
4841
|
# },
|
4842
|
+
# json_body: {
|
4843
|
+
# match_pattern: { # required
|
4844
|
+
# all: {
|
4845
|
+
# },
|
4846
|
+
# included_paths: ["JsonPointerPath"],
|
4847
|
+
# },
|
4848
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
4849
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
4850
|
+
# },
|
4276
4851
|
# },
|
4277
4852
|
# text_transformations: [ # required
|
4278
4853
|
# {
|
@@ -4300,6 +4875,15 @@ module Aws::WAFV2
|
|
4300
4875
|
# },
|
4301
4876
|
# method: {
|
4302
4877
|
# },
|
4878
|
+
# json_body: {
|
4879
|
+
# match_pattern: { # required
|
4880
|
+
# all: {
|
4881
|
+
# },
|
4882
|
+
# included_paths: ["JsonPointerPath"],
|
4883
|
+
# },
|
4884
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
4885
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
4886
|
+
# },
|
4303
4887
|
# },
|
4304
4888
|
# text_transformations: [ # required
|
4305
4889
|
# {
|
@@ -4326,6 +4910,15 @@ module Aws::WAFV2
|
|
4326
4910
|
# },
|
4327
4911
|
# method: {
|
4328
4912
|
# },
|
4913
|
+
# json_body: {
|
4914
|
+
# match_pattern: { # required
|
4915
|
+
# all: {
|
4916
|
+
# },
|
4917
|
+
# included_paths: ["JsonPointerPath"],
|
4918
|
+
# },
|
4919
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
4920
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
4921
|
+
# },
|
4329
4922
|
# },
|
4330
4923
|
# text_transformations: [ # required
|
4331
4924
|
# {
|
@@ -4352,6 +4945,15 @@ module Aws::WAFV2
|
|
4352
4945
|
# },
|
4353
4946
|
# method: {
|
4354
4947
|
# },
|
4948
|
+
# json_body: {
|
4949
|
+
# match_pattern: { # required
|
4950
|
+
# all: {
|
4951
|
+
# },
|
4952
|
+
# included_paths: ["JsonPointerPath"],
|
4953
|
+
# },
|
4954
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
4955
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
4956
|
+
# },
|
4355
4957
|
# },
|
4356
4958
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
4357
4959
|
# size: 1, # required
|
@@ -4404,6 +5006,15 @@ module Aws::WAFV2
|
|
4404
5006
|
# },
|
4405
5007
|
# method: {
|
4406
5008
|
# },
|
5009
|
+
# json_body: {
|
5010
|
+
# match_pattern: { # required
|
5011
|
+
# all: {
|
5012
|
+
# },
|
5013
|
+
# included_paths: ["JsonPointerPath"],
|
5014
|
+
# },
|
5015
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5016
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5017
|
+
# },
|
4407
5018
|
# },
|
4408
5019
|
# text_transformations: [ # required
|
4409
5020
|
# {
|
@@ -4467,20 +5078,9 @@ module Aws::WAFV2
|
|
4467
5078
|
include Aws::Structure
|
4468
5079
|
end
|
4469
5080
|
|
4470
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
4471
|
-
# in November, 2019. For information, including how to migrate your AWS
|
4472
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
4473
|
-
# Guide][1].
|
4474
|
-
#
|
4475
|
-
# </note>
|
4476
|
-
#
|
4477
5081
|
# A logical rule statement used to combine other rule statements with OR
|
4478
5082
|
# logic. You provide more than one Statement within the `OrStatement`.
|
4479
5083
|
#
|
4480
|
-
#
|
4481
|
-
#
|
4482
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
4483
|
-
#
|
4484
5084
|
# @note When making an API call, you may pass OrStatement
|
4485
5085
|
# data as a hash:
|
4486
5086
|
#
|
@@ -4506,6 +5106,15 @@ module Aws::WAFV2
|
|
4506
5106
|
# },
|
4507
5107
|
# method: {
|
4508
5108
|
# },
|
5109
|
+
# json_body: {
|
5110
|
+
# match_pattern: { # required
|
5111
|
+
# all: {
|
5112
|
+
# },
|
5113
|
+
# included_paths: ["JsonPointerPath"],
|
5114
|
+
# },
|
5115
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5116
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5117
|
+
# },
|
4509
5118
|
# },
|
4510
5119
|
# text_transformations: [ # required
|
4511
5120
|
# {
|
@@ -4533,6 +5142,15 @@ module Aws::WAFV2
|
|
4533
5142
|
# },
|
4534
5143
|
# method: {
|
4535
5144
|
# },
|
5145
|
+
# json_body: {
|
5146
|
+
# match_pattern: { # required
|
5147
|
+
# all: {
|
5148
|
+
# },
|
5149
|
+
# included_paths: ["JsonPointerPath"],
|
5150
|
+
# },
|
5151
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5152
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5153
|
+
# },
|
4536
5154
|
# },
|
4537
5155
|
# text_transformations: [ # required
|
4538
5156
|
# {
|
@@ -4559,6 +5177,15 @@ module Aws::WAFV2
|
|
4559
5177
|
# },
|
4560
5178
|
# method: {
|
4561
5179
|
# },
|
5180
|
+
# json_body: {
|
5181
|
+
# match_pattern: { # required
|
5182
|
+
# all: {
|
5183
|
+
# },
|
5184
|
+
# included_paths: ["JsonPointerPath"],
|
5185
|
+
# },
|
5186
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5187
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5188
|
+
# },
|
4562
5189
|
# },
|
4563
5190
|
# text_transformations: [ # required
|
4564
5191
|
# {
|
@@ -4585,6 +5212,15 @@ module Aws::WAFV2
|
|
4585
5212
|
# },
|
4586
5213
|
# method: {
|
4587
5214
|
# },
|
5215
|
+
# json_body: {
|
5216
|
+
# match_pattern: { # required
|
5217
|
+
# all: {
|
5218
|
+
# },
|
5219
|
+
# included_paths: ["JsonPointerPath"],
|
5220
|
+
# },
|
5221
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5222
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5223
|
+
# },
|
4588
5224
|
# },
|
4589
5225
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
4590
5226
|
# size: 1, # required
|
@@ -4637,6 +5273,15 @@ module Aws::WAFV2
|
|
4637
5273
|
# },
|
4638
5274
|
# method: {
|
4639
5275
|
# },
|
5276
|
+
# json_body: {
|
5277
|
+
# match_pattern: { # required
|
5278
|
+
# all: {
|
5279
|
+
# },
|
5280
|
+
# included_paths: ["JsonPointerPath"],
|
5281
|
+
# },
|
5282
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5283
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5284
|
+
# },
|
4640
5285
|
# },
|
4641
5286
|
# text_transformations: [ # required
|
4642
5287
|
# {
|
@@ -4719,6 +5364,14 @@ module Aws::WAFV2
|
|
4719
5364
|
#
|
4720
5365
|
# {
|
4721
5366
|
# count: {
|
5367
|
+
# custom_request_handling: {
|
5368
|
+
# insert_headers: [ # required
|
5369
|
+
# {
|
5370
|
+
# name: "CustomHTTPHeaderName", # required
|
5371
|
+
# value: "CustomHTTPHeaderValue", # required
|
5372
|
+
# },
|
5373
|
+
# ],
|
5374
|
+
# },
|
4722
5375
|
# },
|
4723
5376
|
# none: {
|
4724
5377
|
# },
|
@@ -4766,6 +5419,15 @@ module Aws::WAFV2
|
|
4766
5419
|
# },
|
4767
5420
|
# method: {
|
4768
5421
|
# },
|
5422
|
+
# json_body: {
|
5423
|
+
# match_pattern: { # required
|
5424
|
+
# all: {
|
5425
|
+
# },
|
5426
|
+
# included_paths: ["JsonPointerPath"],
|
5427
|
+
# },
|
5428
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5429
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5430
|
+
# },
|
4769
5431
|
# },
|
4770
5432
|
# ],
|
4771
5433
|
# managed_by_firewall_manager: false,
|
@@ -4846,36 +5508,18 @@ module Aws::WAFV2
|
|
4846
5508
|
#
|
4847
5509
|
class PutPermissionPolicyResponse < Aws::EmptyStructure; end
|
4848
5510
|
|
4849
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
4850
|
-
# in November, 2019. For information, including how to migrate your AWS
|
4851
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
4852
|
-
# Guide][1].
|
4853
|
-
#
|
4854
|
-
# </note>
|
4855
|
-
#
|
4856
5511
|
# The query string of a web request. This is the part of a URL that
|
4857
5512
|
# appears after a `?` character, if any.
|
4858
5513
|
#
|
4859
5514
|
# This is used only to indicate the web request component for AWS WAF to
|
4860
5515
|
# inspect, in the FieldToMatch specification.
|
4861
5516
|
#
|
4862
|
-
#
|
4863
|
-
#
|
4864
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
4865
|
-
#
|
4866
5517
|
# @api private
|
4867
5518
|
#
|
4868
5519
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/QueryString AWS API Documentation
|
4869
5520
|
#
|
4870
5521
|
class QueryString < Aws::EmptyStructure; end
|
4871
5522
|
|
4872
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
4873
|
-
# in November, 2019. For information, including how to migrate your AWS
|
4874
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
4875
|
-
# Guide][1].
|
4876
|
-
#
|
4877
|
-
# </note>
|
4878
|
-
#
|
4879
5523
|
# A rate-based rule tracks the rate of requests for each originating IP
|
4880
5524
|
# address, and triggers the rule action when the rate exceeds a limit
|
4881
5525
|
# that you specify on the number of requests in any 5-minute time span.
|
@@ -4909,10 +5553,6 @@ module Aws::WAFV2
|
|
4909
5553
|
# `NotStatement` or `OrStatement`. It can only be referenced as a
|
4910
5554
|
# top-level statement within a rule.
|
4911
5555
|
#
|
4912
|
-
#
|
4913
|
-
#
|
4914
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
4915
|
-
#
|
4916
5556
|
# @note When making an API call, you may pass RateBasedStatement
|
4917
5557
|
# data as a hash:
|
4918
5558
|
#
|
@@ -4939,6 +5579,15 @@ module Aws::WAFV2
|
|
4939
5579
|
# },
|
4940
5580
|
# method: {
|
4941
5581
|
# },
|
5582
|
+
# json_body: {
|
5583
|
+
# match_pattern: { # required
|
5584
|
+
# all: {
|
5585
|
+
# },
|
5586
|
+
# included_paths: ["JsonPointerPath"],
|
5587
|
+
# },
|
5588
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5589
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5590
|
+
# },
|
4942
5591
|
# },
|
4943
5592
|
# text_transformations: [ # required
|
4944
5593
|
# {
|
@@ -4966,6 +5615,15 @@ module Aws::WAFV2
|
|
4966
5615
|
# },
|
4967
5616
|
# method: {
|
4968
5617
|
# },
|
5618
|
+
# json_body: {
|
5619
|
+
# match_pattern: { # required
|
5620
|
+
# all: {
|
5621
|
+
# },
|
5622
|
+
# included_paths: ["JsonPointerPath"],
|
5623
|
+
# },
|
5624
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5625
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5626
|
+
# },
|
4969
5627
|
# },
|
4970
5628
|
# text_transformations: [ # required
|
4971
5629
|
# {
|
@@ -4992,6 +5650,15 @@ module Aws::WAFV2
|
|
4992
5650
|
# },
|
4993
5651
|
# method: {
|
4994
5652
|
# },
|
5653
|
+
# json_body: {
|
5654
|
+
# match_pattern: { # required
|
5655
|
+
# all: {
|
5656
|
+
# },
|
5657
|
+
# included_paths: ["JsonPointerPath"],
|
5658
|
+
# },
|
5659
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5660
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5661
|
+
# },
|
4995
5662
|
# },
|
4996
5663
|
# text_transformations: [ # required
|
4997
5664
|
# {
|
@@ -5018,6 +5685,15 @@ module Aws::WAFV2
|
|
5018
5685
|
# },
|
5019
5686
|
# method: {
|
5020
5687
|
# },
|
5688
|
+
# json_body: {
|
5689
|
+
# match_pattern: { # required
|
5690
|
+
# all: {
|
5691
|
+
# },
|
5692
|
+
# included_paths: ["JsonPointerPath"],
|
5693
|
+
# },
|
5694
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5695
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5696
|
+
# },
|
5021
5697
|
# },
|
5022
5698
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
5023
5699
|
# size: 1, # required
|
@@ -5070,6 +5746,15 @@ module Aws::WAFV2
|
|
5070
5746
|
# },
|
5071
5747
|
# method: {
|
5072
5748
|
# },
|
5749
|
+
# json_body: {
|
5750
|
+
# match_pattern: { # required
|
5751
|
+
# all: {
|
5752
|
+
# },
|
5753
|
+
# included_paths: ["JsonPointerPath"],
|
5754
|
+
# },
|
5755
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5756
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5757
|
+
# },
|
5073
5758
|
# },
|
5074
5759
|
# text_transformations: [ # required
|
5075
5760
|
# {
|
@@ -5174,20 +5859,9 @@ module Aws::WAFV2
|
|
5174
5859
|
include Aws::Structure
|
5175
5860
|
end
|
5176
5861
|
|
5177
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
5178
|
-
# in November, 2019. For information, including how to migrate your AWS
|
5179
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
5180
|
-
# Guide][1].
|
5181
|
-
#
|
5182
|
-
# </note>
|
5183
|
-
#
|
5184
5862
|
# The set of IP addresses that are currently blocked for a rate-based
|
5185
5863
|
# statement.
|
5186
5864
|
#
|
5187
|
-
#
|
5188
|
-
#
|
5189
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
5190
|
-
#
|
5191
5865
|
# @!attribute [rw] ip_address_version
|
5192
5866
|
# @return [String]
|
5193
5867
|
#
|
@@ -5204,19 +5878,8 @@ module Aws::WAFV2
|
|
5204
5878
|
include Aws::Structure
|
5205
5879
|
end
|
5206
5880
|
|
5207
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
5208
|
-
# in November, 2019. For information, including how to migrate your AWS
|
5209
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
5210
|
-
# Guide][1].
|
5211
|
-
#
|
5212
|
-
# </note>
|
5213
|
-
#
|
5214
5881
|
# A single regular expression. This is used in a RegexPatternSet.
|
5215
5882
|
#
|
5216
|
-
#
|
5217
|
-
#
|
5218
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
5219
|
-
#
|
5220
5883
|
# @note When making an API call, you may pass Regex
|
5221
5884
|
# data as a hash:
|
5222
5885
|
#
|
@@ -5236,23 +5899,12 @@ module Aws::WAFV2
|
|
5236
5899
|
include Aws::Structure
|
5237
5900
|
end
|
5238
5901
|
|
5239
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
5240
|
-
# in November, 2019. For information, including how to migrate your AWS
|
5241
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
5242
|
-
# Guide][1].
|
5243
|
-
#
|
5244
|
-
# </note>
|
5245
|
-
#
|
5246
5902
|
# Contains one or more regular expressions.
|
5247
5903
|
#
|
5248
5904
|
# AWS WAF assigns an ARN to each `RegexPatternSet` that you create. To
|
5249
5905
|
# use a set in a rule, you provide the ARN to the Rule statement
|
5250
5906
|
# RegexPatternSetReferenceStatement.
|
5251
5907
|
#
|
5252
|
-
#
|
5253
|
-
#
|
5254
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
5255
|
-
#
|
5256
5908
|
# @!attribute [rw] name
|
5257
5909
|
# The name of the set. You cannot change the name after you create the
|
5258
5910
|
# set.
|
@@ -5269,8 +5921,7 @@ module Aws::WAFV2
|
|
5269
5921
|
# @return [String]
|
5270
5922
|
#
|
5271
5923
|
# @!attribute [rw] description
|
5272
|
-
# A description of the set that helps with identification.
|
5273
|
-
# change the description of a set after you create it.
|
5924
|
+
# A description of the set that helps with identification.
|
5274
5925
|
# @return [String]
|
5275
5926
|
#
|
5276
5927
|
# @!attribute [rw] regular_expression_list
|
@@ -5289,13 +5940,6 @@ module Aws::WAFV2
|
|
5289
5940
|
include Aws::Structure
|
5290
5941
|
end
|
5291
5942
|
|
5292
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
5293
|
-
# in November, 2019. For information, including how to migrate your AWS
|
5294
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
5295
|
-
# Guide][1].
|
5296
|
-
#
|
5297
|
-
# </note>
|
5298
|
-
#
|
5299
5943
|
# A rule statement used to search web request components for matches
|
5300
5944
|
# with regular expressions. To use this, create a RegexPatternSet that
|
5301
5945
|
# specifies the expressions that you want to detect, then use the ARN of
|
@@ -5309,10 +5953,6 @@ module Aws::WAFV2
|
|
5309
5953
|
# referenced set, AWS WAF automatically updates all rules that reference
|
5310
5954
|
# it.
|
5311
5955
|
#
|
5312
|
-
#
|
5313
|
-
#
|
5314
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
5315
|
-
#
|
5316
5956
|
# @note When making an API call, you may pass RegexPatternSetReferenceStatement
|
5317
5957
|
# data as a hash:
|
5318
5958
|
#
|
@@ -5335,6 +5975,15 @@ module Aws::WAFV2
|
|
5335
5975
|
# },
|
5336
5976
|
# method: {
|
5337
5977
|
# },
|
5978
|
+
# json_body: {
|
5979
|
+
# match_pattern: { # required
|
5980
|
+
# all: {
|
5981
|
+
# },
|
5982
|
+
# included_paths: ["JsonPointerPath"],
|
5983
|
+
# },
|
5984
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
5985
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
5986
|
+
# },
|
5338
5987
|
# },
|
5339
5988
|
# text_transformations: [ # required
|
5340
5989
|
# {
|
@@ -5373,23 +6022,12 @@ module Aws::WAFV2
|
|
5373
6022
|
include Aws::Structure
|
5374
6023
|
end
|
5375
6024
|
|
5376
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
5377
|
-
# in November, 2019. For information, including how to migrate your AWS
|
5378
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
5379
|
-
# Guide][1].
|
5380
|
-
#
|
5381
|
-
# </note>
|
5382
|
-
#
|
5383
6025
|
# High-level information about a RegexPatternSet, returned by operations
|
5384
6026
|
# like create and list. This provides information like the ID, that you
|
5385
6027
|
# can use to retrieve and manage a `RegexPatternSet`, and the ARN, that
|
5386
6028
|
# you provide to the RegexPatternSetReferenceStatement to use the
|
5387
6029
|
# pattern set in a Rule.
|
5388
6030
|
#
|
5389
|
-
#
|
5390
|
-
#
|
5391
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
5392
|
-
#
|
5393
6031
|
# @!attribute [rw] name
|
5394
6032
|
# The name of the data type instance. You cannot change the name after
|
5395
6033
|
# you create the instance.
|
@@ -5402,8 +6040,7 @@ module Aws::WAFV2
|
|
5402
6040
|
# @return [String]
|
5403
6041
|
#
|
5404
6042
|
# @!attribute [rw] description
|
5405
|
-
# A description of the set that helps with identification.
|
5406
|
-
# change the description of a set after you create it.
|
6043
|
+
# A description of the set that helps with identification.
|
5407
6044
|
# @return [String]
|
5408
6045
|
#
|
5409
6046
|
# @!attribute [rw] lock_token
|
@@ -5434,23 +6071,12 @@ module Aws::WAFV2
|
|
5434
6071
|
include Aws::Structure
|
5435
6072
|
end
|
5436
6073
|
|
5437
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
5438
|
-
# in November, 2019. For information, including how to migrate your AWS
|
5439
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
5440
|
-
# Guide][1].
|
5441
|
-
#
|
5442
|
-
# </note>
|
5443
|
-
#
|
5444
6074
|
# A single rule, which you can use in a WebACL or RuleGroup to identify
|
5445
6075
|
# web requests that you want to allow, block, or count. Each rule
|
5446
6076
|
# includes one top-level Statement that AWS WAF uses to identify
|
5447
6077
|
# matching web requests, and parameters that govern how AWS WAF handles
|
5448
6078
|
# them.
|
5449
6079
|
#
|
5450
|
-
#
|
5451
|
-
#
|
5452
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
5453
|
-
#
|
5454
6080
|
# @note When making an API call, you may pass Rule
|
5455
6081
|
# data as a hash:
|
5456
6082
|
#
|
@@ -5477,6 +6103,15 @@ module Aws::WAFV2
|
|
5477
6103
|
# },
|
5478
6104
|
# method: {
|
5479
6105
|
# },
|
6106
|
+
# json_body: {
|
6107
|
+
# match_pattern: { # required
|
6108
|
+
# all: {
|
6109
|
+
# },
|
6110
|
+
# included_paths: ["JsonPointerPath"],
|
6111
|
+
# },
|
6112
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
6113
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
6114
|
+
# },
|
5480
6115
|
# },
|
5481
6116
|
# text_transformations: [ # required
|
5482
6117
|
# {
|
@@ -5504,6 +6139,15 @@ module Aws::WAFV2
|
|
5504
6139
|
# },
|
5505
6140
|
# method: {
|
5506
6141
|
# },
|
6142
|
+
# json_body: {
|
6143
|
+
# match_pattern: { # required
|
6144
|
+
# all: {
|
6145
|
+
# },
|
6146
|
+
# included_paths: ["JsonPointerPath"],
|
6147
|
+
# },
|
6148
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
6149
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
6150
|
+
# },
|
5507
6151
|
# },
|
5508
6152
|
# text_transformations: [ # required
|
5509
6153
|
# {
|
@@ -5530,6 +6174,15 @@ module Aws::WAFV2
|
|
5530
6174
|
# },
|
5531
6175
|
# method: {
|
5532
6176
|
# },
|
6177
|
+
# json_body: {
|
6178
|
+
# match_pattern: { # required
|
6179
|
+
# all: {
|
6180
|
+
# },
|
6181
|
+
# included_paths: ["JsonPointerPath"],
|
6182
|
+
# },
|
6183
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
6184
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
6185
|
+
# },
|
5533
6186
|
# },
|
5534
6187
|
# text_transformations: [ # required
|
5535
6188
|
# {
|
@@ -5556,6 +6209,15 @@ module Aws::WAFV2
|
|
5556
6209
|
# },
|
5557
6210
|
# method: {
|
5558
6211
|
# },
|
6212
|
+
# json_body: {
|
6213
|
+
# match_pattern: { # required
|
6214
|
+
# all: {
|
6215
|
+
# },
|
6216
|
+
# included_paths: ["JsonPointerPath"],
|
6217
|
+
# },
|
6218
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
6219
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
6220
|
+
# },
|
5559
6221
|
# },
|
5560
6222
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
5561
6223
|
# size: 1, # required
|
@@ -5608,6 +6270,15 @@ module Aws::WAFV2
|
|
5608
6270
|
# },
|
5609
6271
|
# method: {
|
5610
6272
|
# },
|
6273
|
+
# json_body: {
|
6274
|
+
# match_pattern: { # required
|
6275
|
+
# all: {
|
6276
|
+
# },
|
6277
|
+
# included_paths: ["JsonPointerPath"],
|
6278
|
+
# },
|
6279
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
6280
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
6281
|
+
# },
|
5611
6282
|
# },
|
5612
6283
|
# text_transformations: [ # required
|
5613
6284
|
# {
|
@@ -5658,14 +6329,48 @@ module Aws::WAFV2
|
|
5658
6329
|
# },
|
5659
6330
|
# action: {
|
5660
6331
|
# block: {
|
6332
|
+
# custom_response: {
|
6333
|
+
# response_code: 1, # required
|
6334
|
+
# custom_response_body_key: "EntityName",
|
6335
|
+
# response_headers: [
|
6336
|
+
# {
|
6337
|
+
# name: "CustomHTTPHeaderName", # required
|
6338
|
+
# value: "CustomHTTPHeaderValue", # required
|
6339
|
+
# },
|
6340
|
+
# ],
|
6341
|
+
# },
|
5661
6342
|
# },
|
5662
6343
|
# allow: {
|
6344
|
+
# custom_request_handling: {
|
6345
|
+
# insert_headers: [ # required
|
6346
|
+
# {
|
6347
|
+
# name: "CustomHTTPHeaderName", # required
|
6348
|
+
# value: "CustomHTTPHeaderValue", # required
|
6349
|
+
# },
|
6350
|
+
# ],
|
6351
|
+
# },
|
5663
6352
|
# },
|
5664
6353
|
# count: {
|
6354
|
+
# custom_request_handling: {
|
6355
|
+
# insert_headers: [ # required
|
6356
|
+
# {
|
6357
|
+
# name: "CustomHTTPHeaderName", # required
|
6358
|
+
# value: "CustomHTTPHeaderValue", # required
|
6359
|
+
# },
|
6360
|
+
# ],
|
6361
|
+
# },
|
5665
6362
|
# },
|
5666
6363
|
# },
|
5667
6364
|
# override_action: {
|
5668
6365
|
# count: {
|
6366
|
+
# custom_request_handling: {
|
6367
|
+
# insert_headers: [ # required
|
6368
|
+
# {
|
6369
|
+
# name: "CustomHTTPHeaderName", # required
|
6370
|
+
# value: "CustomHTTPHeaderValue", # required
|
6371
|
+
# },
|
6372
|
+
# ],
|
6373
|
+
# },
|
5669
6374
|
# },
|
5670
6375
|
# none: {
|
5671
6376
|
# },
|
@@ -5749,32 +6454,47 @@ module Aws::WAFV2
|
|
5749
6454
|
:visibility_config)
|
5750
6455
|
SENSITIVE = []
|
5751
6456
|
include Aws::Structure
|
5752
|
-
end
|
5753
|
-
|
5754
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
5755
|
-
# in November, 2019. For information, including how to migrate your AWS
|
5756
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
5757
|
-
# Guide][1].
|
5758
|
-
#
|
5759
|
-
# </note>
|
5760
|
-
#
|
6457
|
+
end
|
6458
|
+
|
5761
6459
|
# The action that AWS WAF should take on a web request when it matches a
|
5762
6460
|
# rule's statement. Settings at the web ACL level can override the rule
|
5763
6461
|
# action setting.
|
5764
6462
|
#
|
5765
|
-
#
|
5766
|
-
#
|
5767
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
5768
|
-
#
|
5769
6463
|
# @note When making an API call, you may pass RuleAction
|
5770
6464
|
# data as a hash:
|
5771
6465
|
#
|
5772
6466
|
# {
|
5773
6467
|
# block: {
|
6468
|
+
# custom_response: {
|
6469
|
+
# response_code: 1, # required
|
6470
|
+
# custom_response_body_key: "EntityName",
|
6471
|
+
# response_headers: [
|
6472
|
+
# {
|
6473
|
+
# name: "CustomHTTPHeaderName", # required
|
6474
|
+
# value: "CustomHTTPHeaderValue", # required
|
6475
|
+
# },
|
6476
|
+
# ],
|
6477
|
+
# },
|
5774
6478
|
# },
|
5775
6479
|
# allow: {
|
6480
|
+
# custom_request_handling: {
|
6481
|
+
# insert_headers: [ # required
|
6482
|
+
# {
|
6483
|
+
# name: "CustomHTTPHeaderName", # required
|
6484
|
+
# value: "CustomHTTPHeaderValue", # required
|
6485
|
+
# },
|
6486
|
+
# ],
|
6487
|
+
# },
|
5776
6488
|
# },
|
5777
6489
|
# count: {
|
6490
|
+
# custom_request_handling: {
|
6491
|
+
# insert_headers: [ # required
|
6492
|
+
# {
|
6493
|
+
# name: "CustomHTTPHeaderName", # required
|
6494
|
+
# value: "CustomHTTPHeaderValue", # required
|
6495
|
+
# },
|
6496
|
+
# ],
|
6497
|
+
# },
|
5778
6498
|
# },
|
5779
6499
|
# }
|
5780
6500
|
#
|
@@ -5800,23 +6520,12 @@ module Aws::WAFV2
|
|
5800
6520
|
include Aws::Structure
|
5801
6521
|
end
|
5802
6522
|
|
5803
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
5804
|
-
# in November, 2019. For information, including how to migrate your AWS
|
5805
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
5806
|
-
# Guide][1].
|
5807
|
-
#
|
5808
|
-
# </note>
|
5809
|
-
#
|
5810
6523
|
# A rule group defines a collection of rules to inspect and control web
|
5811
6524
|
# requests that you can use in a WebACL. When you create a rule group,
|
5812
6525
|
# you define an immutable capacity limit. If you update a rule group,
|
5813
6526
|
# you must stay within the capacity. This allows others to reuse the
|
5814
6527
|
# rule group with confidence in its capacity requirements.
|
5815
6528
|
#
|
5816
|
-
#
|
5817
|
-
#
|
5818
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
5819
|
-
#
|
5820
6529
|
# @!attribute [rw] name
|
5821
6530
|
# The name of the rule group. You cannot change the name of a rule
|
5822
6531
|
# group after you create it.
|
@@ -5851,8 +6560,7 @@ module Aws::WAFV2
|
|
5851
6560
|
# @return [String]
|
5852
6561
|
#
|
5853
6562
|
# @!attribute [rw] description
|
5854
|
-
# A description of the rule group that helps with identification.
|
5855
|
-
# cannot change the description of a rule group after you create it.
|
6563
|
+
# A description of the rule group that helps with identification.
|
5856
6564
|
# @return [String]
|
5857
6565
|
#
|
5858
6566
|
# @!attribute [rw] rules
|
@@ -5867,6 +6575,27 @@ module Aws::WAFV2
|
|
5867
6575
|
# collection.
|
5868
6576
|
# @return [Types::VisibilityConfig]
|
5869
6577
|
#
|
6578
|
+
# @!attribute [rw] custom_response_bodies
|
6579
|
+
# A map of custom response keys and content bodies. When you create a
|
6580
|
+
# rule with a block action, you can send a custom response to the web
|
6581
|
+
# request. You define these for the rule group, and then use them in
|
6582
|
+
# the rules that you define in the rule group.
|
6583
|
+
#
|
6584
|
+
# For information about customizing web requests and responses, see
|
6585
|
+
# [Customizing web requests and responses in AWS WAF][1] in the [AWS
|
6586
|
+
# WAF Developer Guide][2].
|
6587
|
+
#
|
6588
|
+
# For information about the limits on count and size for custom
|
6589
|
+
# request and response settings, see [AWS WAF quotas][3] in the [AWS
|
6590
|
+
# WAF Developer Guide][2].
|
6591
|
+
#
|
6592
|
+
#
|
6593
|
+
#
|
6594
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html
|
6595
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
6596
|
+
# [3]: https://docs.aws.amazon.com/waf/latest/developerguide/limits.html
|
6597
|
+
# @return [Hash<String,Types::CustomResponseBody>]
|
6598
|
+
#
|
5870
6599
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RuleGroup AWS API Documentation
|
5871
6600
|
#
|
5872
6601
|
class RuleGroup < Struct.new(
|
@@ -5876,18 +6605,12 @@ module Aws::WAFV2
|
|
5876
6605
|
:arn,
|
5877
6606
|
:description,
|
5878
6607
|
:rules,
|
5879
|
-
:visibility_config
|
6608
|
+
:visibility_config,
|
6609
|
+
:custom_response_bodies)
|
5880
6610
|
SENSITIVE = []
|
5881
6611
|
include Aws::Structure
|
5882
6612
|
end
|
5883
6613
|
|
5884
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
5885
|
-
# in November, 2019. For information, including how to migrate your AWS
|
5886
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
5887
|
-
# Guide][1].
|
5888
|
-
#
|
5889
|
-
# </note>
|
5890
|
-
#
|
5891
6614
|
# A rule statement used to run the rules that are defined in a
|
5892
6615
|
# RuleGroup. To use this, create a rule group with your rules, then
|
5893
6616
|
# provide the ARN of the rule group in this statement.
|
@@ -5896,10 +6619,6 @@ module Aws::WAFV2
|
|
5896
6619
|
# inside a `NotStatement` or `OrStatement`. It can only be referenced as
|
5897
6620
|
# a top-level statement within a rule.
|
5898
6621
|
#
|
5899
|
-
#
|
5900
|
-
#
|
5901
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
5902
|
-
#
|
5903
6622
|
# @note When making an API call, you may pass RuleGroupReferenceStatement
|
5904
6623
|
# data as a hash:
|
5905
6624
|
#
|
@@ -5930,23 +6649,12 @@ module Aws::WAFV2
|
|
5930
6649
|
include Aws::Structure
|
5931
6650
|
end
|
5932
6651
|
|
5933
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
5934
|
-
# in November, 2019. For information, including how to migrate your AWS
|
5935
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
5936
|
-
# Guide][1].
|
5937
|
-
#
|
5938
|
-
# </note>
|
5939
|
-
#
|
5940
6652
|
# High-level information about a RuleGroup, returned by operations like
|
5941
6653
|
# create and list. This provides information like the ID, that you can
|
5942
6654
|
# use to retrieve and manage a `RuleGroup`, and the ARN, that you
|
5943
6655
|
# provide to the RuleGroupReferenceStatement to use the rule group in a
|
5944
6656
|
# Rule.
|
5945
6657
|
#
|
5946
|
-
#
|
5947
|
-
#
|
5948
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
5949
|
-
#
|
5950
6658
|
# @!attribute [rw] name
|
5951
6659
|
# The name of the data type instance. You cannot change the name after
|
5952
6660
|
# you create the instance.
|
@@ -5959,8 +6667,7 @@ module Aws::WAFV2
|
|
5959
6667
|
# @return [String]
|
5960
6668
|
#
|
5961
6669
|
# @!attribute [rw] description
|
5962
|
-
# A description of the rule group that helps with identification.
|
5963
|
-
# cannot change the description of a rule group after you create it.
|
6670
|
+
# A description of the rule group that helps with identification.
|
5964
6671
|
# @return [String]
|
5965
6672
|
#
|
5966
6673
|
# @!attribute [rw] lock_token
|
@@ -5991,42 +6698,20 @@ module Aws::WAFV2
|
|
5991
6698
|
include Aws::Structure
|
5992
6699
|
end
|
5993
6700
|
|
5994
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
5995
|
-
# in November, 2019. For information, including how to migrate your AWS
|
5996
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
5997
|
-
# Guide][1].
|
5998
|
-
#
|
5999
|
-
# </note>
|
6000
|
-
#
|
6001
6701
|
# High-level information about a Rule, returned by operations like
|
6002
6702
|
# DescribeManagedRuleGroup. This provides information like the ID, that
|
6003
6703
|
# you can use to retrieve and manage a `RuleGroup`, and the ARN, that
|
6004
6704
|
# you provide to the RuleGroupReferenceStatement to use the rule group
|
6005
6705
|
# in a Rule.
|
6006
6706
|
#
|
6007
|
-
#
|
6008
|
-
#
|
6009
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
6010
|
-
#
|
6011
6707
|
# @!attribute [rw] name
|
6012
6708
|
# The name of the rule.
|
6013
6709
|
# @return [String]
|
6014
6710
|
#
|
6015
6711
|
# @!attribute [rw] action
|
6016
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
6017
|
-
# in November, 2019. For information, including how to migrate your
|
6018
|
-
# AWS WAF resources from the prior release, see the [AWS WAF Developer
|
6019
|
-
# Guide][1].
|
6020
|
-
#
|
6021
|
-
# </note>
|
6022
|
-
#
|
6023
6712
|
# The action that AWS WAF should take on a web request when it matches
|
6024
6713
|
# a rule's statement. Settings at the web ACL level can override the
|
6025
6714
|
# rule action setting.
|
6026
|
-
#
|
6027
|
-
#
|
6028
|
-
#
|
6029
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
6030
6715
|
# @return [Types::RuleAction]
|
6031
6716
|
#
|
6032
6717
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RuleSummary AWS API Documentation
|
@@ -6038,23 +6723,12 @@ module Aws::WAFV2
|
|
6038
6723
|
include Aws::Structure
|
6039
6724
|
end
|
6040
6725
|
|
6041
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
6042
|
-
# in November, 2019. For information, including how to migrate your AWS
|
6043
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
6044
|
-
# Guide][1].
|
6045
|
-
#
|
6046
|
-
# </note>
|
6047
|
-
#
|
6048
6726
|
# Represents a single sampled web request. The response from
|
6049
6727
|
# GetSampledRequests includes a `SampledHTTPRequests` complex type that
|
6050
6728
|
# appears as `SampledRequests` in the response syntax.
|
6051
6729
|
# `SampledHTTPRequests` contains an array of `SampledHTTPRequest`
|
6052
6730
|
# objects.
|
6053
6731
|
#
|
6054
|
-
#
|
6055
|
-
#
|
6056
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
6057
|
-
#
|
6058
6732
|
# @!attribute [rw] request
|
6059
6733
|
# A complex type that contains detailed information about the request.
|
6060
6734
|
# @return [Types::HTTPRequest]
|
@@ -6084,6 +6758,16 @@ module Aws::WAFV2
|
|
6084
6758
|
# a rule group, this field is absent.
|
6085
6759
|
# @return [String]
|
6086
6760
|
#
|
6761
|
+
# @!attribute [rw] request_headers_inserted
|
6762
|
+
# Custom request headers inserted by AWS WAF into the request,
|
6763
|
+
# according to the custom request configuration for the matching rule
|
6764
|
+
# action.
|
6765
|
+
# @return [Array<Types::HTTPHeader>]
|
6766
|
+
#
|
6767
|
+
# @!attribute [rw] response_code_sent
|
6768
|
+
# The response code that was sent for the request.
|
6769
|
+
# @return [Integer]
|
6770
|
+
#
|
6087
6771
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/SampledHTTPRequest AWS API Documentation
|
6088
6772
|
#
|
6089
6773
|
class SampledHTTPRequest < Struct.new(
|
@@ -6091,28 +6775,19 @@ module Aws::WAFV2
|
|
6091
6775
|
:weight,
|
6092
6776
|
:timestamp,
|
6093
6777
|
:action,
|
6094
|
-
:rule_name_within_rule_group
|
6778
|
+
:rule_name_within_rule_group,
|
6779
|
+
:request_headers_inserted,
|
6780
|
+
:response_code_sent)
|
6095
6781
|
SENSITIVE = []
|
6096
6782
|
include Aws::Structure
|
6097
6783
|
end
|
6098
6784
|
|
6099
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
6100
|
-
# in November, 2019. For information, including how to migrate your AWS
|
6101
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
6102
|
-
# Guide][1].
|
6103
|
-
#
|
6104
|
-
# </note>
|
6105
|
-
#
|
6106
6785
|
# One of the headers in a web request, identified by name, for example,
|
6107
6786
|
# `User-Agent` or `Referer`. This setting isn't case sensitive.
|
6108
6787
|
#
|
6109
6788
|
# This is used only to indicate the web request component for AWS WAF to
|
6110
6789
|
# inspect, in the FieldToMatch specification.
|
6111
6790
|
#
|
6112
|
-
#
|
6113
|
-
#
|
6114
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
6115
|
-
#
|
6116
6791
|
# @note When making an API call, you may pass SingleHeader
|
6117
6792
|
# data as a hash:
|
6118
6793
|
#
|
@@ -6132,21 +6807,10 @@ module Aws::WAFV2
|
|
6132
6807
|
include Aws::Structure
|
6133
6808
|
end
|
6134
6809
|
|
6135
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
6136
|
-
# in November, 2019. For information, including how to migrate your AWS
|
6137
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
6138
|
-
# Guide][1].
|
6139
|
-
#
|
6140
|
-
# </note>
|
6141
|
-
#
|
6142
6810
|
# One query argument in a web request, identified by name, for example
|
6143
6811
|
# *UserName* or *SalesRegion*. The name can be up to 30 characters long
|
6144
6812
|
# and isn't case sensitive.
|
6145
6813
|
#
|
6146
|
-
#
|
6147
|
-
#
|
6148
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
6149
|
-
#
|
6150
6814
|
# @note When making an API call, you may pass SingleQueryArgument
|
6151
6815
|
# data as a hash:
|
6152
6816
|
#
|
@@ -6166,13 +6830,6 @@ module Aws::WAFV2
|
|
6166
6830
|
include Aws::Structure
|
6167
6831
|
end
|
6168
6832
|
|
6169
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
6170
|
-
# in November, 2019. For information, including how to migrate your AWS
|
6171
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
6172
|
-
# Guide][1].
|
6173
|
-
#
|
6174
|
-
# </note>
|
6175
|
-
#
|
6176
6833
|
# A rule statement that compares a number of bytes against the size of a
|
6177
6834
|
# request component, using a comparison operator, such as greater than
|
6178
6835
|
# (>) or less than (<). For example, you can use a size constraint
|
@@ -6188,10 +6845,6 @@ module Aws::WAFV2
|
|
6188
6845
|
# the slash (/) in the URI counts as one character. For example, the URI
|
6189
6846
|
# `/logo.jpg` is nine characters long.
|
6190
6847
|
#
|
6191
|
-
#
|
6192
|
-
#
|
6193
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
6194
|
-
#
|
6195
6848
|
# @note When making an API call, you may pass SizeConstraintStatement
|
6196
6849
|
# data as a hash:
|
6197
6850
|
#
|
@@ -6213,6 +6866,15 @@ module Aws::WAFV2
|
|
6213
6866
|
# },
|
6214
6867
|
# method: {
|
6215
6868
|
# },
|
6869
|
+
# json_body: {
|
6870
|
+
# match_pattern: { # required
|
6871
|
+
# all: {
|
6872
|
+
# },
|
6873
|
+
# included_paths: ["JsonPointerPath"],
|
6874
|
+
# },
|
6875
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
6876
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
6877
|
+
# },
|
6216
6878
|
# },
|
6217
6879
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
6218
6880
|
# size: 1, # required
|
@@ -6258,13 +6920,6 @@ module Aws::WAFV2
|
|
6258
6920
|
include Aws::Structure
|
6259
6921
|
end
|
6260
6922
|
|
6261
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
6262
|
-
# in November, 2019. For information, including how to migrate your AWS
|
6263
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
6264
|
-
# Guide][1].
|
6265
|
-
#
|
6266
|
-
# </note>
|
6267
|
-
#
|
6268
6923
|
# Attackers sometimes insert malicious SQL code into web requests in an
|
6269
6924
|
# effort to extract data from your database. To allow or block web
|
6270
6925
|
# requests that appear to contain malicious SQL code, create one or more
|
@@ -6274,10 +6929,6 @@ module Aws::WAFV2
|
|
6274
6929
|
# you create a web ACL, you specify whether to allow or block requests
|
6275
6930
|
# that appear to contain malicious SQL code.
|
6276
6931
|
#
|
6277
|
-
#
|
6278
|
-
#
|
6279
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
6280
|
-
#
|
6281
6932
|
# @note When making an API call, you may pass SqliMatchStatement
|
6282
6933
|
# data as a hash:
|
6283
6934
|
#
|
@@ -6299,6 +6950,15 @@ module Aws::WAFV2
|
|
6299
6950
|
# },
|
6300
6951
|
# method: {
|
6301
6952
|
# },
|
6953
|
+
# json_body: {
|
6954
|
+
# match_pattern: { # required
|
6955
|
+
# all: {
|
6956
|
+
# },
|
6957
|
+
# included_paths: ["JsonPointerPath"],
|
6958
|
+
# },
|
6959
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
6960
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
6961
|
+
# },
|
6302
6962
|
# },
|
6303
6963
|
# text_transformations: [ # required
|
6304
6964
|
# {
|
@@ -6331,20 +6991,9 @@ module Aws::WAFV2
|
|
6331
6991
|
include Aws::Structure
|
6332
6992
|
end
|
6333
6993
|
|
6334
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
6335
|
-
# in November, 2019. For information, including how to migrate your AWS
|
6336
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
6337
|
-
# Guide][1].
|
6338
|
-
#
|
6339
|
-
# </note>
|
6340
|
-
#
|
6341
6994
|
# The processing guidance for a Rule, used by AWS WAF to determine
|
6342
6995
|
# whether a web request matches the rule.
|
6343
6996
|
#
|
6344
|
-
#
|
6345
|
-
#
|
6346
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
6347
|
-
#
|
6348
6997
|
# @note When making an API call, you may pass Statement
|
6349
6998
|
# data as a hash:
|
6350
6999
|
#
|
@@ -6368,6 +7017,15 @@ module Aws::WAFV2
|
|
6368
7017
|
# },
|
6369
7018
|
# method: {
|
6370
7019
|
# },
|
7020
|
+
# json_body: {
|
7021
|
+
# match_pattern: { # required
|
7022
|
+
# all: {
|
7023
|
+
# },
|
7024
|
+
# included_paths: ["JsonPointerPath"],
|
7025
|
+
# },
|
7026
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7027
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7028
|
+
# },
|
6371
7029
|
# },
|
6372
7030
|
# text_transformations: [ # required
|
6373
7031
|
# {
|
@@ -6395,6 +7053,15 @@ module Aws::WAFV2
|
|
6395
7053
|
# },
|
6396
7054
|
# method: {
|
6397
7055
|
# },
|
7056
|
+
# json_body: {
|
7057
|
+
# match_pattern: { # required
|
7058
|
+
# all: {
|
7059
|
+
# },
|
7060
|
+
# included_paths: ["JsonPointerPath"],
|
7061
|
+
# },
|
7062
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7063
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7064
|
+
# },
|
6398
7065
|
# },
|
6399
7066
|
# text_transformations: [ # required
|
6400
7067
|
# {
|
@@ -6421,6 +7088,15 @@ module Aws::WAFV2
|
|
6421
7088
|
# },
|
6422
7089
|
# method: {
|
6423
7090
|
# },
|
7091
|
+
# json_body: {
|
7092
|
+
# match_pattern: { # required
|
7093
|
+
# all: {
|
7094
|
+
# },
|
7095
|
+
# included_paths: ["JsonPointerPath"],
|
7096
|
+
# },
|
7097
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7098
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7099
|
+
# },
|
6424
7100
|
# },
|
6425
7101
|
# text_transformations: [ # required
|
6426
7102
|
# {
|
@@ -6447,6 +7123,15 @@ module Aws::WAFV2
|
|
6447
7123
|
# },
|
6448
7124
|
# method: {
|
6449
7125
|
# },
|
7126
|
+
# json_body: {
|
7127
|
+
# match_pattern: { # required
|
7128
|
+
# all: {
|
7129
|
+
# },
|
7130
|
+
# included_paths: ["JsonPointerPath"],
|
7131
|
+
# },
|
7132
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7133
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7134
|
+
# },
|
6450
7135
|
# },
|
6451
7136
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
6452
7137
|
# size: 1, # required
|
@@ -6499,6 +7184,15 @@ module Aws::WAFV2
|
|
6499
7184
|
# },
|
6500
7185
|
# method: {
|
6501
7186
|
# },
|
7187
|
+
# json_body: {
|
7188
|
+
# match_pattern: { # required
|
7189
|
+
# all: {
|
7190
|
+
# },
|
7191
|
+
# included_paths: ["JsonPointerPath"],
|
7192
|
+
# },
|
7193
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7194
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7195
|
+
# },
|
6502
7196
|
# },
|
6503
7197
|
# text_transformations: [ # required
|
6504
7198
|
# {
|
@@ -6530,6 +7224,15 @@ module Aws::WAFV2
|
|
6530
7224
|
# },
|
6531
7225
|
# method: {
|
6532
7226
|
# },
|
7227
|
+
# json_body: {
|
7228
|
+
# match_pattern: { # required
|
7229
|
+
# all: {
|
7230
|
+
# },
|
7231
|
+
# included_paths: ["JsonPointerPath"],
|
7232
|
+
# },
|
7233
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7234
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7235
|
+
# },
|
6533
7236
|
# },
|
6534
7237
|
# text_transformations: [ # required
|
6535
7238
|
# {
|
@@ -6557,6 +7260,15 @@ module Aws::WAFV2
|
|
6557
7260
|
# },
|
6558
7261
|
# method: {
|
6559
7262
|
# },
|
7263
|
+
# json_body: {
|
7264
|
+
# match_pattern: { # required
|
7265
|
+
# all: {
|
7266
|
+
# },
|
7267
|
+
# included_paths: ["JsonPointerPath"],
|
7268
|
+
# },
|
7269
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7270
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7271
|
+
# },
|
6560
7272
|
# },
|
6561
7273
|
# text_transformations: [ # required
|
6562
7274
|
# {
|
@@ -6583,6 +7295,15 @@ module Aws::WAFV2
|
|
6583
7295
|
# },
|
6584
7296
|
# method: {
|
6585
7297
|
# },
|
7298
|
+
# json_body: {
|
7299
|
+
# match_pattern: { # required
|
7300
|
+
# all: {
|
7301
|
+
# },
|
7302
|
+
# included_paths: ["JsonPointerPath"],
|
7303
|
+
# },
|
7304
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7305
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7306
|
+
# },
|
6586
7307
|
# },
|
6587
7308
|
# text_transformations: [ # required
|
6588
7309
|
# {
|
@@ -6609,6 +7330,15 @@ module Aws::WAFV2
|
|
6609
7330
|
# },
|
6610
7331
|
# method: {
|
6611
7332
|
# },
|
7333
|
+
# json_body: {
|
7334
|
+
# match_pattern: { # required
|
7335
|
+
# all: {
|
7336
|
+
# },
|
7337
|
+
# included_paths: ["JsonPointerPath"],
|
7338
|
+
# },
|
7339
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7340
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7341
|
+
# },
|
6612
7342
|
# },
|
6613
7343
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
6614
7344
|
# size: 1, # required
|
@@ -6661,6 +7391,15 @@ module Aws::WAFV2
|
|
6661
7391
|
# },
|
6662
7392
|
# method: {
|
6663
7393
|
# },
|
7394
|
+
# json_body: {
|
7395
|
+
# match_pattern: { # required
|
7396
|
+
# all: {
|
7397
|
+
# },
|
7398
|
+
# included_paths: ["JsonPointerPath"],
|
7399
|
+
# },
|
7400
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7401
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7402
|
+
# },
|
6664
7403
|
# },
|
6665
7404
|
# text_transformations: [ # required
|
6666
7405
|
# {
|
@@ -6728,6 +7467,15 @@ module Aws::WAFV2
|
|
6728
7467
|
# },
|
6729
7468
|
# method: {
|
6730
7469
|
# },
|
7470
|
+
# json_body: {
|
7471
|
+
# match_pattern: { # required
|
7472
|
+
# all: {
|
7473
|
+
# },
|
7474
|
+
# included_paths: ["JsonPointerPath"],
|
7475
|
+
# },
|
7476
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7477
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7478
|
+
# },
|
6731
7479
|
# },
|
6732
7480
|
# text_transformations: [ # required
|
6733
7481
|
# {
|
@@ -6755,6 +7503,15 @@ module Aws::WAFV2
|
|
6755
7503
|
# },
|
6756
7504
|
# method: {
|
6757
7505
|
# },
|
7506
|
+
# json_body: {
|
7507
|
+
# match_pattern: { # required
|
7508
|
+
# all: {
|
7509
|
+
# },
|
7510
|
+
# included_paths: ["JsonPointerPath"],
|
7511
|
+
# },
|
7512
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7513
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7514
|
+
# },
|
6758
7515
|
# },
|
6759
7516
|
# text_transformations: [ # required
|
6760
7517
|
# {
|
@@ -6781,6 +7538,15 @@ module Aws::WAFV2
|
|
6781
7538
|
# },
|
6782
7539
|
# method: {
|
6783
7540
|
# },
|
7541
|
+
# json_body: {
|
7542
|
+
# match_pattern: { # required
|
7543
|
+
# all: {
|
7544
|
+
# },
|
7545
|
+
# included_paths: ["JsonPointerPath"],
|
7546
|
+
# },
|
7547
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7548
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7549
|
+
# },
|
6784
7550
|
# },
|
6785
7551
|
# text_transformations: [ # required
|
6786
7552
|
# {
|
@@ -6807,6 +7573,15 @@ module Aws::WAFV2
|
|
6807
7573
|
# },
|
6808
7574
|
# method: {
|
6809
7575
|
# },
|
7576
|
+
# json_body: {
|
7577
|
+
# match_pattern: { # required
|
7578
|
+
# all: {
|
7579
|
+
# },
|
7580
|
+
# included_paths: ["JsonPointerPath"],
|
7581
|
+
# },
|
7582
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7583
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7584
|
+
# },
|
6810
7585
|
# },
|
6811
7586
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
6812
7587
|
# size: 1, # required
|
@@ -6859,6 +7634,15 @@ module Aws::WAFV2
|
|
6859
7634
|
# },
|
6860
7635
|
# method: {
|
6861
7636
|
# },
|
7637
|
+
# json_body: {
|
7638
|
+
# match_pattern: { # required
|
7639
|
+
# all: {
|
7640
|
+
# },
|
7641
|
+
# included_paths: ["JsonPointerPath"],
|
7642
|
+
# },
|
7643
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7644
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7645
|
+
# },
|
6862
7646
|
# },
|
6863
7647
|
# text_transformations: [ # required
|
6864
7648
|
# {
|
@@ -6925,6 +7709,15 @@ module Aws::WAFV2
|
|
6925
7709
|
# },
|
6926
7710
|
# method: {
|
6927
7711
|
# },
|
7712
|
+
# json_body: {
|
7713
|
+
# match_pattern: { # required
|
7714
|
+
# all: {
|
7715
|
+
# },
|
7716
|
+
# included_paths: ["JsonPointerPath"],
|
7717
|
+
# },
|
7718
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7719
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7720
|
+
# },
|
6928
7721
|
# },
|
6929
7722
|
# text_transformations: [ # required
|
6930
7723
|
# {
|
@@ -6952,6 +7745,15 @@ module Aws::WAFV2
|
|
6952
7745
|
# },
|
6953
7746
|
# method: {
|
6954
7747
|
# },
|
7748
|
+
# json_body: {
|
7749
|
+
# match_pattern: { # required
|
7750
|
+
# all: {
|
7751
|
+
# },
|
7752
|
+
# included_paths: ["JsonPointerPath"],
|
7753
|
+
# },
|
7754
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7755
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7756
|
+
# },
|
6955
7757
|
# },
|
6956
7758
|
# text_transformations: [ # required
|
6957
7759
|
# {
|
@@ -6978,6 +7780,15 @@ module Aws::WAFV2
|
|
6978
7780
|
# },
|
6979
7781
|
# method: {
|
6980
7782
|
# },
|
7783
|
+
# json_body: {
|
7784
|
+
# match_pattern: { # required
|
7785
|
+
# all: {
|
7786
|
+
# },
|
7787
|
+
# included_paths: ["JsonPointerPath"],
|
7788
|
+
# },
|
7789
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7790
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7791
|
+
# },
|
6981
7792
|
# },
|
6982
7793
|
# text_transformations: [ # required
|
6983
7794
|
# {
|
@@ -7004,6 +7815,15 @@ module Aws::WAFV2
|
|
7004
7815
|
# },
|
7005
7816
|
# method: {
|
7006
7817
|
# },
|
7818
|
+
# json_body: {
|
7819
|
+
# match_pattern: { # required
|
7820
|
+
# all: {
|
7821
|
+
# },
|
7822
|
+
# included_paths: ["JsonPointerPath"],
|
7823
|
+
# },
|
7824
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7825
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7826
|
+
# },
|
7007
7827
|
# },
|
7008
7828
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
7009
7829
|
# size: 1, # required
|
@@ -7056,6 +7876,15 @@ module Aws::WAFV2
|
|
7056
7876
|
# },
|
7057
7877
|
# method: {
|
7058
7878
|
# },
|
7879
|
+
# json_body: {
|
7880
|
+
# match_pattern: { # required
|
7881
|
+
# all: {
|
7882
|
+
# },
|
7883
|
+
# included_paths: ["JsonPointerPath"],
|
7884
|
+
# },
|
7885
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7886
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7887
|
+
# },
|
7059
7888
|
# },
|
7060
7889
|
# text_transformations: [ # required
|
7061
7890
|
# {
|
@@ -7121,6 +7950,15 @@ module Aws::WAFV2
|
|
7121
7950
|
# },
|
7122
7951
|
# method: {
|
7123
7952
|
# },
|
7953
|
+
# json_body: {
|
7954
|
+
# match_pattern: { # required
|
7955
|
+
# all: {
|
7956
|
+
# },
|
7957
|
+
# included_paths: ["JsonPointerPath"],
|
7958
|
+
# },
|
7959
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7960
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7961
|
+
# },
|
7124
7962
|
# },
|
7125
7963
|
# text_transformations: [ # required
|
7126
7964
|
# {
|
@@ -7148,6 +7986,15 @@ module Aws::WAFV2
|
|
7148
7986
|
# },
|
7149
7987
|
# method: {
|
7150
7988
|
# },
|
7989
|
+
# json_body: {
|
7990
|
+
# match_pattern: { # required
|
7991
|
+
# all: {
|
7992
|
+
# },
|
7993
|
+
# included_paths: ["JsonPointerPath"],
|
7994
|
+
# },
|
7995
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
7996
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
7997
|
+
# },
|
7151
7998
|
# },
|
7152
7999
|
# text_transformations: [ # required
|
7153
8000
|
# {
|
@@ -7174,6 +8021,15 @@ module Aws::WAFV2
|
|
7174
8021
|
# },
|
7175
8022
|
# method: {
|
7176
8023
|
# },
|
8024
|
+
# json_body: {
|
8025
|
+
# match_pattern: { # required
|
8026
|
+
# all: {
|
8027
|
+
# },
|
8028
|
+
# included_paths: ["JsonPointerPath"],
|
8029
|
+
# },
|
8030
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
8031
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
8032
|
+
# },
|
7177
8033
|
# },
|
7178
8034
|
# text_transformations: [ # required
|
7179
8035
|
# {
|
@@ -7200,6 +8056,15 @@ module Aws::WAFV2
|
|
7200
8056
|
# },
|
7201
8057
|
# method: {
|
7202
8058
|
# },
|
8059
|
+
# json_body: {
|
8060
|
+
# match_pattern: { # required
|
8061
|
+
# all: {
|
8062
|
+
# },
|
8063
|
+
# included_paths: ["JsonPointerPath"],
|
8064
|
+
# },
|
8065
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
8066
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
8067
|
+
# },
|
7203
8068
|
# },
|
7204
8069
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
7205
8070
|
# size: 1, # required
|
@@ -7252,6 +8117,15 @@ module Aws::WAFV2
|
|
7252
8117
|
# },
|
7253
8118
|
# method: {
|
7254
8119
|
# },
|
8120
|
+
# json_body: {
|
8121
|
+
# match_pattern: { # required
|
8122
|
+
# all: {
|
8123
|
+
# },
|
8124
|
+
# included_paths: ["JsonPointerPath"],
|
8125
|
+
# },
|
8126
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
8127
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
8128
|
+
# },
|
7255
8129
|
# },
|
7256
8130
|
# text_transformations: [ # required
|
7257
8131
|
# {
|
@@ -7486,13 +8360,6 @@ module Aws::WAFV2
|
|
7486
8360
|
include Aws::Structure
|
7487
8361
|
end
|
7488
8362
|
|
7489
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
7490
|
-
# in November, 2019. For information, including how to migrate your AWS
|
7491
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
7492
|
-
# Guide][1].
|
7493
|
-
#
|
7494
|
-
# </note>
|
7495
|
-
#
|
7496
8363
|
# A tag associated with an AWS resource. Tags are key:value pairs that
|
7497
8364
|
# you can use to categorize and manage your resources, for purposes like
|
7498
8365
|
# billing or other management. Typically, the tag key represents a
|
@@ -7507,10 +8374,6 @@ module Aws::WAFV2
|
|
7507
8374
|
# ACLs, rule groups, IP sets, and regex pattern sets. You can't manage
|
7508
8375
|
# or view tags through the AWS WAF console.
|
7509
8376
|
#
|
7510
|
-
#
|
7511
|
-
#
|
7512
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
7513
|
-
#
|
7514
8377
|
# @note When making an API call, you may pass Tag
|
7515
8378
|
# data as a hash:
|
7516
8379
|
#
|
@@ -7540,13 +8403,6 @@ module Aws::WAFV2
|
|
7540
8403
|
include Aws::Structure
|
7541
8404
|
end
|
7542
8405
|
|
7543
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
7544
|
-
# in November, 2019. For information, including how to migrate your AWS
|
7545
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
7546
|
-
# Guide][1].
|
7547
|
-
#
|
7548
|
-
# </note>
|
7549
|
-
#
|
7550
8406
|
# The collection of tagging definitions for an AWS resource. Tags are
|
7551
8407
|
# key:value pairs that you can use to categorize and manage your
|
7552
8408
|
# resources, for purposes like billing or other management. Typically,
|
@@ -7561,10 +8417,6 @@ module Aws::WAFV2
|
|
7561
8417
|
# ACLs, rule groups, IP sets, and regex pattern sets. You can't manage
|
7562
8418
|
# or view tags through the AWS WAF console.
|
7563
8419
|
#
|
7564
|
-
#
|
7565
|
-
#
|
7566
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
7567
|
-
#
|
7568
8420
|
# @!attribute [rw] resource_arn
|
7569
8421
|
# The Amazon Resource Name (ARN) of the resource.
|
7570
8422
|
# @return [String]
|
@@ -7616,20 +8468,9 @@ module Aws::WAFV2
|
|
7616
8468
|
#
|
7617
8469
|
class TagResourceResponse < Aws::EmptyStructure; end
|
7618
8470
|
|
7619
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
7620
|
-
# in November, 2019. For information, including how to migrate your AWS
|
7621
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
7622
|
-
# Guide][1].
|
7623
|
-
#
|
7624
|
-
# </note>
|
7625
|
-
#
|
7626
8471
|
# Text transformations eliminate some of the unusual formatting that
|
7627
8472
|
# attackers use in web requests in an effort to bypass detection.
|
7628
8473
|
#
|
7629
|
-
#
|
7630
|
-
#
|
7631
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
7632
|
-
#
|
7633
8474
|
# @note When making an API call, you may pass TextTransformation
|
7634
8475
|
# data as a hash:
|
7635
8476
|
#
|
@@ -7727,13 +8568,6 @@ module Aws::WAFV2
|
|
7727
8568
|
include Aws::Structure
|
7728
8569
|
end
|
7729
8570
|
|
7730
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
7731
|
-
# in November, 2019. For information, including how to migrate your AWS
|
7732
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
7733
|
-
# Guide][1].
|
7734
|
-
#
|
7735
|
-
# </note>
|
7736
|
-
#
|
7737
8571
|
# In a GetSampledRequests request, the `StartTime` and `EndTime` objects
|
7738
8572
|
# specify the time range for which you want AWS WAF to return a sample
|
7739
8573
|
# of web requests.
|
@@ -7752,10 +8586,6 @@ module Aws::WAFV2
|
|
7752
8586
|
# 5,000th request. In that case, `EndTime` is the time that AWS WAF
|
7753
8587
|
# received the 5,000th request.
|
7754
8588
|
#
|
7755
|
-
#
|
7756
|
-
#
|
7757
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
7758
|
-
#
|
7759
8589
|
# @note When making an API call, you may pass TimeWindow
|
7760
8590
|
# data as a hash:
|
7761
8591
|
#
|
@@ -7860,15 +8690,14 @@ module Aws::WAFV2
|
|
7860
8690
|
# @return [String]
|
7861
8691
|
#
|
7862
8692
|
# @!attribute [rw] description
|
7863
|
-
# A description of the IP set that helps with identification.
|
7864
|
-
# cannot change the description of an IP set after you create it.
|
8693
|
+
# A description of the IP set that helps with identification.
|
7865
8694
|
# @return [String]
|
7866
8695
|
#
|
7867
8696
|
# @!attribute [rw] addresses
|
7868
8697
|
# Contains an array of strings that specify one or more IP addresses
|
7869
8698
|
# or blocks of IP addresses in Classless Inter-Domain Routing (CIDR)
|
7870
|
-
# notation. AWS WAF supports all
|
7871
|
-
#
|
8699
|
+
# notation. AWS WAF supports all IPv4 and IPv6 CIDR ranges except for
|
8700
|
+
# /0.
|
7872
8701
|
#
|
7873
8702
|
# Examples:
|
7874
8703
|
#
|
@@ -7981,8 +8810,7 @@ module Aws::WAFV2
|
|
7981
8810
|
# @return [String]
|
7982
8811
|
#
|
7983
8812
|
# @!attribute [rw] description
|
7984
|
-
# A description of the set that helps with identification.
|
7985
|
-
# change the description of a set after you create it.
|
8813
|
+
# A description of the set that helps with identification.
|
7986
8814
|
# @return [String]
|
7987
8815
|
#
|
7988
8816
|
# @!attribute [rw] regular_expression_list
|
@@ -8059,6 +8887,15 @@ module Aws::WAFV2
|
|
8059
8887
|
# },
|
8060
8888
|
# method: {
|
8061
8889
|
# },
|
8890
|
+
# json_body: {
|
8891
|
+
# match_pattern: { # required
|
8892
|
+
# all: {
|
8893
|
+
# },
|
8894
|
+
# included_paths: ["JsonPointerPath"],
|
8895
|
+
# },
|
8896
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
8897
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
8898
|
+
# },
|
8062
8899
|
# },
|
8063
8900
|
# text_transformations: [ # required
|
8064
8901
|
# {
|
@@ -8086,6 +8923,15 @@ module Aws::WAFV2
|
|
8086
8923
|
# },
|
8087
8924
|
# method: {
|
8088
8925
|
# },
|
8926
|
+
# json_body: {
|
8927
|
+
# match_pattern: { # required
|
8928
|
+
# all: {
|
8929
|
+
# },
|
8930
|
+
# included_paths: ["JsonPointerPath"],
|
8931
|
+
# },
|
8932
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
8933
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
8934
|
+
# },
|
8089
8935
|
# },
|
8090
8936
|
# text_transformations: [ # required
|
8091
8937
|
# {
|
@@ -8112,6 +8958,15 @@ module Aws::WAFV2
|
|
8112
8958
|
# },
|
8113
8959
|
# method: {
|
8114
8960
|
# },
|
8961
|
+
# json_body: {
|
8962
|
+
# match_pattern: { # required
|
8963
|
+
# all: {
|
8964
|
+
# },
|
8965
|
+
# included_paths: ["JsonPointerPath"],
|
8966
|
+
# },
|
8967
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
8968
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
8969
|
+
# },
|
8115
8970
|
# },
|
8116
8971
|
# text_transformations: [ # required
|
8117
8972
|
# {
|
@@ -8138,6 +8993,15 @@ module Aws::WAFV2
|
|
8138
8993
|
# },
|
8139
8994
|
# method: {
|
8140
8995
|
# },
|
8996
|
+
# json_body: {
|
8997
|
+
# match_pattern: { # required
|
8998
|
+
# all: {
|
8999
|
+
# },
|
9000
|
+
# included_paths: ["JsonPointerPath"],
|
9001
|
+
# },
|
9002
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
9003
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
9004
|
+
# },
|
8141
9005
|
# },
|
8142
9006
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
8143
9007
|
# size: 1, # required
|
@@ -8190,6 +9054,15 @@ module Aws::WAFV2
|
|
8190
9054
|
# },
|
8191
9055
|
# method: {
|
8192
9056
|
# },
|
9057
|
+
# json_body: {
|
9058
|
+
# match_pattern: { # required
|
9059
|
+
# all: {
|
9060
|
+
# },
|
9061
|
+
# included_paths: ["JsonPointerPath"],
|
9062
|
+
# },
|
9063
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
9064
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
9065
|
+
# },
|
8193
9066
|
# },
|
8194
9067
|
# text_transformations: [ # required
|
8195
9068
|
# {
|
@@ -8240,14 +9113,48 @@ module Aws::WAFV2
|
|
8240
9113
|
# },
|
8241
9114
|
# action: {
|
8242
9115
|
# block: {
|
9116
|
+
# custom_response: {
|
9117
|
+
# response_code: 1, # required
|
9118
|
+
# custom_response_body_key: "EntityName",
|
9119
|
+
# response_headers: [
|
9120
|
+
# {
|
9121
|
+
# name: "CustomHTTPHeaderName", # required
|
9122
|
+
# value: "CustomHTTPHeaderValue", # required
|
9123
|
+
# },
|
9124
|
+
# ],
|
9125
|
+
# },
|
8243
9126
|
# },
|
8244
9127
|
# allow: {
|
9128
|
+
# custom_request_handling: {
|
9129
|
+
# insert_headers: [ # required
|
9130
|
+
# {
|
9131
|
+
# name: "CustomHTTPHeaderName", # required
|
9132
|
+
# value: "CustomHTTPHeaderValue", # required
|
9133
|
+
# },
|
9134
|
+
# ],
|
9135
|
+
# },
|
8245
9136
|
# },
|
8246
9137
|
# count: {
|
9138
|
+
# custom_request_handling: {
|
9139
|
+
# insert_headers: [ # required
|
9140
|
+
# {
|
9141
|
+
# name: "CustomHTTPHeaderName", # required
|
9142
|
+
# value: "CustomHTTPHeaderValue", # required
|
9143
|
+
# },
|
9144
|
+
# ],
|
9145
|
+
# },
|
8247
9146
|
# },
|
8248
9147
|
# },
|
8249
9148
|
# override_action: {
|
8250
9149
|
# count: {
|
9150
|
+
# custom_request_handling: {
|
9151
|
+
# insert_headers: [ # required
|
9152
|
+
# {
|
9153
|
+
# name: "CustomHTTPHeaderName", # required
|
9154
|
+
# value: "CustomHTTPHeaderValue", # required
|
9155
|
+
# },
|
9156
|
+
# ],
|
9157
|
+
# },
|
8251
9158
|
# },
|
8252
9159
|
# none: {
|
8253
9160
|
# },
|
@@ -8265,6 +9172,12 @@ module Aws::WAFV2
|
|
8265
9172
|
# metric_name: "MetricName", # required
|
8266
9173
|
# },
|
8267
9174
|
# lock_token: "LockToken", # required
|
9175
|
+
# custom_response_bodies: {
|
9176
|
+
# "EntityName" => {
|
9177
|
+
# content_type: "TEXT_PLAIN", # required, accepts TEXT_PLAIN, TEXT_HTML, APPLICATION_JSON
|
9178
|
+
# content: "ResponseContent", # required
|
9179
|
+
# },
|
9180
|
+
# },
|
8268
9181
|
# }
|
8269
9182
|
#
|
8270
9183
|
# @!attribute [rw] name
|
@@ -8294,8 +9207,7 @@ module Aws::WAFV2
|
|
8294
9207
|
# @return [String]
|
8295
9208
|
#
|
8296
9209
|
# @!attribute [rw] description
|
8297
|
-
# A description of the rule group that helps with identification.
|
8298
|
-
# cannot change the description of a rule group after you create it.
|
9210
|
+
# A description of the rule group that helps with identification.
|
8299
9211
|
# @return [String]
|
8300
9212
|
#
|
8301
9213
|
# @!attribute [rw] rules
|
@@ -8322,6 +9234,27 @@ module Aws::WAFV2
|
|
8322
9234
|
# operation.
|
8323
9235
|
# @return [String]
|
8324
9236
|
#
|
9237
|
+
# @!attribute [rw] custom_response_bodies
|
9238
|
+
# A map of custom response keys and content bodies. When you create a
|
9239
|
+
# rule with a block action, you can send a custom response to the web
|
9240
|
+
# request. You define these for the rule group, and then use them in
|
9241
|
+
# the rules that you define in the rule group.
|
9242
|
+
#
|
9243
|
+
# For information about customizing web requests and responses, see
|
9244
|
+
# [Customizing web requests and responses in AWS WAF][1] in the [AWS
|
9245
|
+
# WAF Developer Guide][2].
|
9246
|
+
#
|
9247
|
+
# For information about the limits on count and size for custom
|
9248
|
+
# request and response settings, see [AWS WAF quotas][3] in the [AWS
|
9249
|
+
# WAF Developer Guide][2].
|
9250
|
+
#
|
9251
|
+
#
|
9252
|
+
#
|
9253
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html
|
9254
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
9255
|
+
# [3]: https://docs.aws.amazon.com/waf/latest/developerguide/limits.html
|
9256
|
+
# @return [Hash<String,Types::CustomResponseBody>]
|
9257
|
+
#
|
8325
9258
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/UpdateRuleGroupRequest AWS API Documentation
|
8326
9259
|
#
|
8327
9260
|
class UpdateRuleGroupRequest < Struct.new(
|
@@ -8331,7 +9264,8 @@ module Aws::WAFV2
|
|
8331
9264
|
:description,
|
8332
9265
|
:rules,
|
8333
9266
|
:visibility_config,
|
8334
|
-
:lock_token
|
9267
|
+
:lock_token,
|
9268
|
+
:custom_response_bodies)
|
8335
9269
|
SENSITIVE = []
|
8336
9270
|
include Aws::Structure
|
8337
9271
|
end
|
@@ -8359,8 +9293,26 @@ module Aws::WAFV2
|
|
8359
9293
|
# id: "EntityId", # required
|
8360
9294
|
# default_action: { # required
|
8361
9295
|
# block: {
|
9296
|
+
# custom_response: {
|
9297
|
+
# response_code: 1, # required
|
9298
|
+
# custom_response_body_key: "EntityName",
|
9299
|
+
# response_headers: [
|
9300
|
+
# {
|
9301
|
+
# name: "CustomHTTPHeaderName", # required
|
9302
|
+
# value: "CustomHTTPHeaderValue", # required
|
9303
|
+
# },
|
9304
|
+
# ],
|
9305
|
+
# },
|
8362
9306
|
# },
|
8363
9307
|
# allow: {
|
9308
|
+
# custom_request_handling: {
|
9309
|
+
# insert_headers: [ # required
|
9310
|
+
# {
|
9311
|
+
# name: "CustomHTTPHeaderName", # required
|
9312
|
+
# value: "CustomHTTPHeaderValue", # required
|
9313
|
+
# },
|
9314
|
+
# ],
|
9315
|
+
# },
|
8364
9316
|
# },
|
8365
9317
|
# },
|
8366
9318
|
# description: "EntityDescription",
|
@@ -8388,6 +9340,15 @@ module Aws::WAFV2
|
|
8388
9340
|
# },
|
8389
9341
|
# method: {
|
8390
9342
|
# },
|
9343
|
+
# json_body: {
|
9344
|
+
# match_pattern: { # required
|
9345
|
+
# all: {
|
9346
|
+
# },
|
9347
|
+
# included_paths: ["JsonPointerPath"],
|
9348
|
+
# },
|
9349
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
9350
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
9351
|
+
# },
|
8391
9352
|
# },
|
8392
9353
|
# text_transformations: [ # required
|
8393
9354
|
# {
|
@@ -8415,6 +9376,15 @@ module Aws::WAFV2
|
|
8415
9376
|
# },
|
8416
9377
|
# method: {
|
8417
9378
|
# },
|
9379
|
+
# json_body: {
|
9380
|
+
# match_pattern: { # required
|
9381
|
+
# all: {
|
9382
|
+
# },
|
9383
|
+
# included_paths: ["JsonPointerPath"],
|
9384
|
+
# },
|
9385
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
9386
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
9387
|
+
# },
|
8418
9388
|
# },
|
8419
9389
|
# text_transformations: [ # required
|
8420
9390
|
# {
|
@@ -8441,6 +9411,15 @@ module Aws::WAFV2
|
|
8441
9411
|
# },
|
8442
9412
|
# method: {
|
8443
9413
|
# },
|
9414
|
+
# json_body: {
|
9415
|
+
# match_pattern: { # required
|
9416
|
+
# all: {
|
9417
|
+
# },
|
9418
|
+
# included_paths: ["JsonPointerPath"],
|
9419
|
+
# },
|
9420
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
9421
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
9422
|
+
# },
|
8444
9423
|
# },
|
8445
9424
|
# text_transformations: [ # required
|
8446
9425
|
# {
|
@@ -8467,6 +9446,15 @@ module Aws::WAFV2
|
|
8467
9446
|
# },
|
8468
9447
|
# method: {
|
8469
9448
|
# },
|
9449
|
+
# json_body: {
|
9450
|
+
# match_pattern: { # required
|
9451
|
+
# all: {
|
9452
|
+
# },
|
9453
|
+
# included_paths: ["JsonPointerPath"],
|
9454
|
+
# },
|
9455
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
9456
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
9457
|
+
# },
|
8470
9458
|
# },
|
8471
9459
|
# comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
|
8472
9460
|
# size: 1, # required
|
@@ -8519,6 +9507,15 @@ module Aws::WAFV2
|
|
8519
9507
|
# },
|
8520
9508
|
# method: {
|
8521
9509
|
# },
|
9510
|
+
# json_body: {
|
9511
|
+
# match_pattern: { # required
|
9512
|
+
# all: {
|
9513
|
+
# },
|
9514
|
+
# included_paths: ["JsonPointerPath"],
|
9515
|
+
# },
|
9516
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
9517
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
9518
|
+
# },
|
8522
9519
|
# },
|
8523
9520
|
# text_transformations: [ # required
|
8524
9521
|
# {
|
@@ -8569,14 +9566,48 @@ module Aws::WAFV2
|
|
8569
9566
|
# },
|
8570
9567
|
# action: {
|
8571
9568
|
# block: {
|
9569
|
+
# custom_response: {
|
9570
|
+
# response_code: 1, # required
|
9571
|
+
# custom_response_body_key: "EntityName",
|
9572
|
+
# response_headers: [
|
9573
|
+
# {
|
9574
|
+
# name: "CustomHTTPHeaderName", # required
|
9575
|
+
# value: "CustomHTTPHeaderValue", # required
|
9576
|
+
# },
|
9577
|
+
# ],
|
9578
|
+
# },
|
8572
9579
|
# },
|
8573
9580
|
# allow: {
|
9581
|
+
# custom_request_handling: {
|
9582
|
+
# insert_headers: [ # required
|
9583
|
+
# {
|
9584
|
+
# name: "CustomHTTPHeaderName", # required
|
9585
|
+
# value: "CustomHTTPHeaderValue", # required
|
9586
|
+
# },
|
9587
|
+
# ],
|
9588
|
+
# },
|
8574
9589
|
# },
|
8575
9590
|
# count: {
|
9591
|
+
# custom_request_handling: {
|
9592
|
+
# insert_headers: [ # required
|
9593
|
+
# {
|
9594
|
+
# name: "CustomHTTPHeaderName", # required
|
9595
|
+
# value: "CustomHTTPHeaderValue", # required
|
9596
|
+
# },
|
9597
|
+
# ],
|
9598
|
+
# },
|
8576
9599
|
# },
|
8577
9600
|
# },
|
8578
9601
|
# override_action: {
|
8579
9602
|
# count: {
|
9603
|
+
# custom_request_handling: {
|
9604
|
+
# insert_headers: [ # required
|
9605
|
+
# {
|
9606
|
+
# name: "CustomHTTPHeaderName", # required
|
9607
|
+
# value: "CustomHTTPHeaderValue", # required
|
9608
|
+
# },
|
9609
|
+
# ],
|
9610
|
+
# },
|
8580
9611
|
# },
|
8581
9612
|
# none: {
|
8582
9613
|
# },
|
@@ -8594,6 +9625,12 @@ module Aws::WAFV2
|
|
8594
9625
|
# metric_name: "MetricName", # required
|
8595
9626
|
# },
|
8596
9627
|
# lock_token: "LockToken", # required
|
9628
|
+
# custom_response_bodies: {
|
9629
|
+
# "EntityName" => {
|
9630
|
+
# content_type: "TEXT_PLAIN", # required, accepts TEXT_PLAIN, TEXT_HTML, APPLICATION_JSON
|
9631
|
+
# content: "ResponseContent", # required
|
9632
|
+
# },
|
9633
|
+
# },
|
8597
9634
|
# }
|
8598
9635
|
#
|
8599
9636
|
# @!attribute [rw] name
|
@@ -8628,8 +9665,7 @@ module Aws::WAFV2
|
|
8628
9665
|
# @return [Types::DefaultAction]
|
8629
9666
|
#
|
8630
9667
|
# @!attribute [rw] description
|
8631
|
-
# A description of the Web ACL that helps with identification.
|
8632
|
-
# cannot change the description of a Web ACL after you create it.
|
9668
|
+
# A description of the Web ACL that helps with identification.
|
8633
9669
|
# @return [String]
|
8634
9670
|
#
|
8635
9671
|
# @!attribute [rw] rules
|
@@ -8656,6 +9692,27 @@ module Aws::WAFV2
|
|
8656
9692
|
# operation.
|
8657
9693
|
# @return [String]
|
8658
9694
|
#
|
9695
|
+
# @!attribute [rw] custom_response_bodies
|
9696
|
+
# A map of custom response keys and content bodies. When you create a
|
9697
|
+
# rule with a block action, you can send a custom response to the web
|
9698
|
+
# request. You define these for the web ACL, and then use them in the
|
9699
|
+
# rules and default actions that you define in the web ACL.
|
9700
|
+
#
|
9701
|
+
# For information about customizing web requests and responses, see
|
9702
|
+
# [Customizing web requests and responses in AWS WAF][1] in the [AWS
|
9703
|
+
# WAF Developer Guide][2].
|
9704
|
+
#
|
9705
|
+
# For information about the limits on count and size for custom
|
9706
|
+
# request and response settings, see [AWS WAF quotas][3] in the [AWS
|
9707
|
+
# WAF Developer Guide][2].
|
9708
|
+
#
|
9709
|
+
#
|
9710
|
+
#
|
9711
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html
|
9712
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
9713
|
+
# [3]: https://docs.aws.amazon.com/waf/latest/developerguide/limits.html
|
9714
|
+
# @return [Hash<String,Types::CustomResponseBody>]
|
9715
|
+
#
|
8659
9716
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/UpdateWebACLRequest AWS API Documentation
|
8660
9717
|
#
|
8661
9718
|
class UpdateWebACLRequest < Struct.new(
|
@@ -8666,7 +9723,8 @@ module Aws::WAFV2
|
|
8666
9723
|
:description,
|
8667
9724
|
:rules,
|
8668
9725
|
:visibility_config,
|
8669
|
-
:lock_token
|
9726
|
+
:lock_token,
|
9727
|
+
:custom_response_bodies)
|
8670
9728
|
SENSITIVE = []
|
8671
9729
|
include Aws::Structure
|
8672
9730
|
end
|
@@ -8685,13 +9743,6 @@ module Aws::WAFV2
|
|
8685
9743
|
include Aws::Structure
|
8686
9744
|
end
|
8687
9745
|
|
8688
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
8689
|
-
# in November, 2019. For information, including how to migrate your AWS
|
8690
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
8691
|
-
# Guide][1].
|
8692
|
-
#
|
8693
|
-
# </note>
|
8694
|
-
#
|
8695
9746
|
# The path component of the URI of a web request. This is the part of a
|
8696
9747
|
# web request that identifies a resource, for example,
|
8697
9748
|
# `/images/daily-ad.jpg`.
|
@@ -8699,30 +9750,15 @@ module Aws::WAFV2
|
|
8699
9750
|
# This is used only to indicate the web request component for AWS WAF to
|
8700
9751
|
# inspect, in the FieldToMatch specification.
|
8701
9752
|
#
|
8702
|
-
#
|
8703
|
-
#
|
8704
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
8705
|
-
#
|
8706
9753
|
# @api private
|
8707
9754
|
#
|
8708
9755
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/UriPath AWS API Documentation
|
8709
9756
|
#
|
8710
9757
|
class UriPath < Aws::EmptyStructure; end
|
8711
9758
|
|
8712
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
8713
|
-
# in November, 2019. For information, including how to migrate your AWS
|
8714
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
8715
|
-
# Guide][1].
|
8716
|
-
#
|
8717
|
-
# </note>
|
8718
|
-
#
|
8719
9759
|
# Defines and enables Amazon CloudWatch metrics and web request sample
|
8720
9760
|
# collection.
|
8721
9761
|
#
|
8722
|
-
#
|
8723
|
-
#
|
8724
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
8725
|
-
#
|
8726
9762
|
# @note When making an API call, you may pass VisibilityConfig
|
8727
9763
|
# data as a hash:
|
8728
9764
|
#
|
@@ -9031,13 +10067,6 @@ module Aws::WAFV2
|
|
9031
10067
|
include Aws::Structure
|
9032
10068
|
end
|
9033
10069
|
|
9034
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
9035
|
-
# in November, 2019. For information, including how to migrate your AWS
|
9036
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
9037
|
-
# Guide][1].
|
9038
|
-
#
|
9039
|
-
# </note>
|
9040
|
-
#
|
9041
10070
|
# A Web ACL defines a collection of rules to use to inspect and control
|
9042
10071
|
# web requests. Each rule has an action defined (allow, block, or count)
|
9043
10072
|
# for requests that match the statement of the rule. In the Web ACL, you
|
@@ -9048,10 +10077,6 @@ module Aws::WAFV2
|
|
9048
10077
|
# resources can be Amazon CloudFront, an Amazon API Gateway REST API, an
|
9049
10078
|
# Application Load Balancer, or an AWS AppSync GraphQL API.
|
9050
10079
|
#
|
9051
|
-
#
|
9052
|
-
#
|
9053
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
9054
|
-
#
|
9055
10080
|
# @!attribute [rw] name
|
9056
10081
|
# The name of the Web ACL. You cannot change the name of a Web ACL
|
9057
10082
|
# after you create it.
|
@@ -9074,8 +10099,7 @@ module Aws::WAFV2
|
|
9074
10099
|
# @return [Types::DefaultAction]
|
9075
10100
|
#
|
9076
10101
|
# @!attribute [rw] description
|
9077
|
-
# A description of the Web ACL that helps with identification.
|
9078
|
-
# cannot change the description of a Web ACL after you create it.
|
10102
|
+
# A description of the Web ACL that helps with identification.
|
9079
10103
|
# @return [String]
|
9080
10104
|
#
|
9081
10105
|
# @!attribute [rw] rules
|
@@ -9136,6 +10160,27 @@ module Aws::WAFV2
|
|
9136
10160
|
# any Firewall Manager rule groups in the web ACL.
|
9137
10161
|
# @return [Boolean]
|
9138
10162
|
#
|
10163
|
+
# @!attribute [rw] custom_response_bodies
|
10164
|
+
# A map of custom response keys and content bodies. When you create a
|
10165
|
+
# rule with a block action, you can send a custom response to the web
|
10166
|
+
# request. You define these for the web ACL, and then use them in the
|
10167
|
+
# rules and default actions that you define in the web ACL.
|
10168
|
+
#
|
10169
|
+
# For information about customizing web requests and responses, see
|
10170
|
+
# [Customizing web requests and responses in AWS WAF][1] in the [AWS
|
10171
|
+
# WAF Developer Guide][2].
|
10172
|
+
#
|
10173
|
+
# For information about the limits on count and size for custom
|
10174
|
+
# request and response settings, see [AWS WAF quotas][3] in the [AWS
|
10175
|
+
# WAF Developer Guide][2].
|
10176
|
+
#
|
10177
|
+
#
|
10178
|
+
#
|
10179
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html
|
10180
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
10181
|
+
# [3]: https://docs.aws.amazon.com/waf/latest/developerguide/limits.html
|
10182
|
+
# @return [Hash<String,Types::CustomResponseBody>]
|
10183
|
+
#
|
9139
10184
|
# @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/WebACL AWS API Documentation
|
9140
10185
|
#
|
9141
10186
|
class WebACL < Struct.new(
|
@@ -9149,27 +10194,17 @@ module Aws::WAFV2
|
|
9149
10194
|
:capacity,
|
9150
10195
|
:pre_process_firewall_manager_rule_groups,
|
9151
10196
|
:post_process_firewall_manager_rule_groups,
|
9152
|
-
:managed_by_firewall_manager
|
10197
|
+
:managed_by_firewall_manager,
|
10198
|
+
:custom_response_bodies)
|
9153
10199
|
SENSITIVE = []
|
9154
10200
|
include Aws::Structure
|
9155
10201
|
end
|
9156
10202
|
|
9157
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
9158
|
-
# in November, 2019. For information, including how to migrate your AWS
|
9159
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
9160
|
-
# Guide][1].
|
9161
|
-
#
|
9162
|
-
# </note>
|
9163
|
-
#
|
9164
10203
|
# High-level information about a WebACL, returned by operations like
|
9165
10204
|
# create and list. This provides information like the ID, that you can
|
9166
10205
|
# use to retrieve and manage a `WebACL`, and the ARN, that you provide
|
9167
10206
|
# to operations like AssociateWebACL.
|
9168
10207
|
#
|
9169
|
-
#
|
9170
|
-
#
|
9171
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
9172
|
-
#
|
9173
10208
|
# @!attribute [rw] name
|
9174
10209
|
# The name of the Web ACL. You cannot change the name of a Web ACL
|
9175
10210
|
# after you create it.
|
@@ -9182,8 +10217,7 @@ module Aws::WAFV2
|
|
9182
10217
|
# @return [String]
|
9183
10218
|
#
|
9184
10219
|
# @!attribute [rw] description
|
9185
|
-
# A description of the Web ACL that helps with identification.
|
9186
|
-
# cannot change the description of a Web ACL after you create it.
|
10220
|
+
# A description of the Web ACL that helps with identification.
|
9187
10221
|
# @return [String]
|
9188
10222
|
#
|
9189
10223
|
# @!attribute [rw] lock_token
|
@@ -9214,13 +10248,6 @@ module Aws::WAFV2
|
|
9214
10248
|
include Aws::Structure
|
9215
10249
|
end
|
9216
10250
|
|
9217
|
-
# <note markdown="1"> This is the latest version of **AWS WAF**, named AWS WAFV2, released
|
9218
|
-
# in November, 2019. For information, including how to migrate your AWS
|
9219
|
-
# WAF resources from the prior release, see the [AWS WAF Developer
|
9220
|
-
# Guide][1].
|
9221
|
-
#
|
9222
|
-
# </note>
|
9223
|
-
#
|
9224
10251
|
# A rule statement that defines a cross-site scripting (XSS) match
|
9225
10252
|
# search for AWS WAF to apply to web requests. XSS attacks are those
|
9226
10253
|
# where the attacker uses vulnerabilities in a benign website as a
|
@@ -9230,10 +10257,6 @@ module Aws::WAFV2
|
|
9230
10257
|
# use on the search area before AWS WAF searches for character sequences
|
9231
10258
|
# that are likely to be malicious strings.
|
9232
10259
|
#
|
9233
|
-
#
|
9234
|
-
#
|
9235
|
-
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
|
9236
|
-
#
|
9237
10260
|
# @note When making an API call, you may pass XssMatchStatement
|
9238
10261
|
# data as a hash:
|
9239
10262
|
#
|
@@ -9255,6 +10278,15 @@ module Aws::WAFV2
|
|
9255
10278
|
# },
|
9256
10279
|
# method: {
|
9257
10280
|
# },
|
10281
|
+
# json_body: {
|
10282
|
+
# match_pattern: { # required
|
10283
|
+
# all: {
|
10284
|
+
# },
|
10285
|
+
# included_paths: ["JsonPointerPath"],
|
10286
|
+
# },
|
10287
|
+
# match_scope: "ALL", # required, accepts ALL, KEY, VALUE
|
10288
|
+
# invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
|
10289
|
+
# },
|
9258
10290
|
# },
|
9259
10291
|
# text_transformations: [ # required
|
9260
10292
|
# {
|