@aws-sdk/client-wafv2 3.80.0 → 3.85.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -25,12 +25,9 @@ export declare namespace ActionCondition {
25
25
  }
26
26
  /**
27
27
  * <p>Inspect all of the elements that WAF has parsed and extracted from the web request
28
- * JSON body that are within the <a>JsonBody</a>
29
- * <code>MatchScope</code>. This is used with the <a>FieldToMatch</a> option
30
- * <code>JsonBody</code>.
31
- *
28
+ * component that you've identified in your <a>FieldToMatch</a> specifications.
32
29
  * </p>
33
- * <p>This is used only to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
30
+ * <p>This is used only in the <a>FieldToMatch</a> specification for some web request component types. </p>
34
31
  * <p>JSON specification: <code>"All": {}</code>
35
32
  * </p>
36
33
  */
@@ -105,8 +102,8 @@ export declare namespace AllowAction {
105
102
  const filterSensitiveLog: (obj: AllowAction) => any;
106
103
  }
107
104
  /**
108
- * <p>All query arguments of a web request. </p>
109
- * <p>This is used only to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
105
+ * <p>Inspect all query arguments of the web request. </p>
106
+ * <p>This is used only in the <a>FieldToMatch</a> specification for some web request component types. </p>
110
107
  * <p>JSON specification: <code>"AllQueryArguments": {}</code>
111
108
  * </p>
112
109
  */
@@ -118,13 +115,44 @@ export declare namespace AllQueryArguments {
118
115
  */
119
116
  const filterSensitiveLog: (obj: AllQueryArguments) => any;
120
117
  }
118
+ export declare enum OversizeHandling {
119
+ CONTINUE = "CONTINUE",
120
+ MATCH = "MATCH",
121
+ NO_MATCH = "NO_MATCH"
122
+ }
121
123
  /**
122
- * <p>The body of a web request. This immediately follows the request headers.</p>
123
- * <p>This is used only to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
124
- * <p>JSON specification: <code>"Body": {}</code>
125
- * </p>
124
+ * <p>Inspect the body of the web request. The body immediately follows the request headers.</p>
125
+ * <p>This is used to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
126
126
  */
127
127
  export interface Body {
128
+ /**
129
+ * <p>What WAF should do if the body is larger than WAF can inspect.
130
+ * WAF does not support inspecting the entire contents of the body of a web request
131
+ * when the body exceeds 8 KB (8192 bytes). Only the first 8 KB of the request body are forwarded to
132
+ * WAF by the underlying host service. </p>
133
+ * <p>The options for oversize handling are the following:</p>
134
+ * <ul>
135
+ * <li>
136
+ * <p>
137
+ * <code>CONTINUE</code> - Inspect the body normally, according to the rule inspection criteria. </p>
138
+ * </li>
139
+ * <li>
140
+ * <p>
141
+ * <code>MATCH</code> - Treat the web request as matching the rule statement. WAF
142
+ * applies the rule action to the request.</p>
143
+ * </li>
144
+ * <li>
145
+ * <p>
146
+ * <code>NO_MATCH</code> - Treat the web request as not matching the rule
147
+ * statement.</p>
148
+ * </li>
149
+ * </ul>
150
+ * <p>You can combine the <code>MATCH</code> or <code>NO_MATCH</code>
151
+ * settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over 8 KB. </p>
152
+ * <p>Default: <code>CONTINUE</code>
153
+ * </p>
154
+ */
155
+ OversizeHandling?: OversizeHandling | string;
128
156
  }
129
157
  export declare namespace Body {
130
158
  /**
@@ -132,6 +160,167 @@ export declare namespace Body {
132
160
  */
133
161
  const filterSensitiveLog: (obj: Body) => any;
134
162
  }
163
+ /**
164
+ * <p>The filter to use to identify the subset of cookies to inspect in a web request. </p>
165
+ * <p>You must specify exactly one setting: either <code>All</code>, <code>IncludedCookies</code>, or <code>ExcludedCookies</code>.</p>
166
+ * <p>Example JSON: <code>"CookieMatchPattern": { "IncludedCookies": {"KeyToInclude1", "KeyToInclude2", "KeyToInclude3"} }</code>
167
+ * </p>
168
+ */
169
+ export interface CookieMatchPattern {
170
+ /**
171
+ * <p>Inspect all cookies. </p>
172
+ */
173
+ All?: All;
174
+ /**
175
+ * <p>Inspect only the cookies that have a key that matches one of the strings specified here. </p>
176
+ */
177
+ IncludedCookies?: string[];
178
+ /**
179
+ * <p>Inspect only the cookies whose keys don't match any of the strings specified here. </p>
180
+ */
181
+ ExcludedCookies?: string[];
182
+ }
183
+ export declare namespace CookieMatchPattern {
184
+ /**
185
+ * @internal
186
+ */
187
+ const filterSensitiveLog: (obj: CookieMatchPattern) => any;
188
+ }
189
+ export declare enum MapMatchScope {
190
+ ALL = "ALL",
191
+ KEY = "KEY",
192
+ VALUE = "VALUE"
193
+ }
194
+ /**
195
+ * <p>Inspect the cookies in the web request. You can specify the parts of the cookies to inspect and you can narrow
196
+ * the set of cookies to inspect by including or excluding specific keys.</p>
197
+ * <p>This is used to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
198
+ * <p>Example JSON: <code>"Cookies": { "MatchPattern": { "All": {} }, "MatchScope": "KEY", "OversizeHandling": "MATCH" }</code>
199
+ * </p>
200
+ */
201
+ export interface Cookies {
202
+ /**
203
+ * <p>The filter to use to identify the subset of cookies to inspect in a web request. </p>
204
+ * <p>You must specify exactly one setting: either <code>All</code>, <code>IncludedCookies</code>, or <code>ExcludedCookies</code>.</p>
205
+ * <p>Example JSON: <code>"CookieMatchPattern": { "IncludedCookies": {"KeyToInclude1", "KeyToInclude2", "KeyToInclude3"} }</code>
206
+ * </p>
207
+ */
208
+ MatchPattern: CookieMatchPattern | undefined;
209
+ /**
210
+ * <p>The parts of the cookies to inspect with the rule inspection criteria. If you
211
+ * specify <code>All</code>, WAF inspects both keys and values. </p>
212
+ */
213
+ MatchScope: MapMatchScope | string | undefined;
214
+ /**
215
+ * <p>What WAF should do if the cookies of the request are larger than WAF can inspect.
216
+ * WAF does not support inspecting the entire contents of request cookies
217
+ * when they exceed 8 KB (8192 bytes) or 200 total cookies. The underlying host service forwards a maximum of 200 cookies
218
+ * and at most 8 KB of cookie contents to WAF. </p>
219
+ * <p>The options for oversize handling are the following:</p>
220
+ * <ul>
221
+ * <li>
222
+ * <p>
223
+ * <code>CONTINUE</code> - Inspect the cookies normally, according to the rule inspection criteria. </p>
224
+ * </li>
225
+ * <li>
226
+ * <p>
227
+ * <code>MATCH</code> - Treat the web request as matching the rule statement. WAF
228
+ * applies the rule action to the request.</p>
229
+ * </li>
230
+ * <li>
231
+ * <p>
232
+ * <code>NO_MATCH</code> - Treat the web request as not matching the rule
233
+ * statement.</p>
234
+ * </li>
235
+ * </ul>
236
+ */
237
+ OversizeHandling: OversizeHandling | string | undefined;
238
+ }
239
+ export declare namespace Cookies {
240
+ /**
241
+ * @internal
242
+ */
243
+ const filterSensitiveLog: (obj: Cookies) => any;
244
+ }
245
+ /**
246
+ * <p>The filter to use to identify the subset of headers to inspect in a web request. </p>
247
+ * <p>You must specify exactly one setting: either <code>All</code>, <code>IncludedHeaders</code>, or <code>ExcludedHeaders</code>.</p>
248
+ * <p>Example JSON: <code>"HeaderMatchPattern": { "ExcludedHeaders": {"KeyToExclude1", "KeyToExclude2"} }</code>
249
+ * </p>
250
+ */
251
+ export interface HeaderMatchPattern {
252
+ /**
253
+ * <p>Inspect all headers. </p>
254
+ */
255
+ All?: All;
256
+ /**
257
+ * <p>Inspect only the headers that have a key that matches one of the strings specified here. </p>
258
+ */
259
+ IncludedHeaders?: string[];
260
+ /**
261
+ * <p>Inspect only the headers whose keys don't match any of the strings specified here. </p>
262
+ */
263
+ ExcludedHeaders?: string[];
264
+ }
265
+ export declare namespace HeaderMatchPattern {
266
+ /**
267
+ * @internal
268
+ */
269
+ const filterSensitiveLog: (obj: HeaderMatchPattern) => any;
270
+ }
271
+ /**
272
+ * <p>Inspect the headers in the web request. You can specify the parts of the headers to inspect and you can narrow
273
+ * the set of headers to inspect by including or excluding specific keys.</p>
274
+ * <p>This is used to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
275
+ * <p>Alternately, you can use the <code>SingleHeader</code>
276
+ * <code>FieldToMatch</code> setting to inspect the value of a single header, identified by its key. </p>
277
+ * <p>Example JSON: <code>"Headers": { "MatchPattern": { "All": {} }, "MatchScope": "KEY", "OversizeHandling": "MATCH" }</code>
278
+ * </p>
279
+ */
280
+ export interface Headers {
281
+ /**
282
+ * <p>The filter to use to identify the subset of headers to inspect in a web request. </p>
283
+ * <p>You must specify exactly one setting: either <code>All</code>, <code>IncludedHeaders</code>, or <code>ExcludedHeaders</code>.</p>
284
+ * <p>Example JSON: <code>"HeaderMatchPattern": { "ExcludedHeaders": {"KeyToExclude1", "KeyToExclude2"} }</code>
285
+ * </p>
286
+ */
287
+ MatchPattern: HeaderMatchPattern | undefined;
288
+ /**
289
+ * <p>The parts of the headers to match with the rule inspection criteria. If you
290
+ * specify <code>All</code>, WAF inspects both keys and values. </p>
291
+ */
292
+ MatchScope: MapMatchScope | string | undefined;
293
+ /**
294
+ * <p>What WAF should do if the headers of the request are larger than WAF can inspect.
295
+ * WAF does not support inspecting the entire contents of request headers
296
+ * when they exceed 8 KB (8192 bytes) or 200 total headers. The underlying host service forwards a maximum of 200 headers
297
+ * and at most 8 KB of header contents to WAF. </p>
298
+ * <p>The options for oversize handling are the following:</p>
299
+ * <ul>
300
+ * <li>
301
+ * <p>
302
+ * <code>CONTINUE</code> - Inspect the headers normally, according to the rule inspection criteria. </p>
303
+ * </li>
304
+ * <li>
305
+ * <p>
306
+ * <code>MATCH</code> - Treat the web request as matching the rule statement. WAF
307
+ * applies the rule action to the request.</p>
308
+ * </li>
309
+ * <li>
310
+ * <p>
311
+ * <code>NO_MATCH</code> - Treat the web request as not matching the rule
312
+ * statement.</p>
313
+ * </li>
314
+ * </ul>
315
+ */
316
+ OversizeHandling: OversizeHandling | string | undefined;
317
+ }
318
+ export declare namespace Headers {
319
+ /**
320
+ * @internal
321
+ */
322
+ const filterSensitiveLog: (obj: Headers) => any;
323
+ }
135
324
  export declare enum BodyParsingFallbackBehavior {
136
325
  EVALUATE_AS_STRING = "EVALUATE_AS_STRING",
137
326
  MATCH = "MATCH",
@@ -179,8 +368,9 @@ export declare enum JsonMatchScope {
179
368
  VALUE = "VALUE"
180
369
  }
181
370
  /**
182
- * <p>The body of a web request, inspected as JSON. The body immediately follows the request
183
- * headers. This is used in the <a>FieldToMatch</a> specification.</p>
371
+ * <p>Inspect the body of the web request as JSON. The body immediately follows the request
372
+ * headers. </p>
373
+ * <p>This is used to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
184
374
  * <p>Use the specifications in this object to indicate which parts of the JSON body to
185
375
  * inspect using the rule's inspection criteria. WAF inspects only the parts of the JSON
186
376
  * that result from the matches that you
@@ -243,6 +433,34 @@ export interface JsonBody {
243
433
  * </ul>
244
434
  */
245
435
  InvalidFallbackBehavior?: BodyParsingFallbackBehavior | string;
436
+ /**
437
+ * <p>What WAF should do if the body is larger than WAF can inspect.
438
+ * WAF does not support inspecting the entire contents of the body of a web request
439
+ * when the body exceeds 8 KB (8192 bytes). Only the first 8 KB of the request body are forwarded to
440
+ * WAF by the underlying host service. </p>
441
+ * <p>The options for oversize handling are the following:</p>
442
+ * <ul>
443
+ * <li>
444
+ * <p>
445
+ * <code>CONTINUE</code> - Inspect the body normally, according to the rule inspection criteria. </p>
446
+ * </li>
447
+ * <li>
448
+ * <p>
449
+ * <code>MATCH</code> - Treat the web request as matching the rule statement. WAF
450
+ * applies the rule action to the request.</p>
451
+ * </li>
452
+ * <li>
453
+ * <p>
454
+ * <code>NO_MATCH</code> - Treat the web request as not matching the rule
455
+ * statement.</p>
456
+ * </li>
457
+ * </ul>
458
+ * <p>You can combine the <code>MATCH</code> or <code>NO_MATCH</code>
459
+ * settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over 8 KB. </p>
460
+ * <p>Default: <code>CONTINUE</code>
461
+ * </p>
462
+ */
463
+ OversizeHandling?: OversizeHandling | string;
246
464
  }
247
465
  export declare namespace JsonBody {
248
466
  /**
@@ -251,8 +469,8 @@ export declare namespace JsonBody {
251
469
  const filterSensitiveLog: (obj: JsonBody) => any;
252
470
  }
253
471
  /**
254
- * <p>The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform. </p>
255
- * <p>This is used only to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
472
+ * <p>Inspect the HTTP method of the web request. The method indicates the type of operation that the request is asking the origin to perform. </p>
473
+ * <p>This is used only in the <a>FieldToMatch</a> specification for some web request component types. </p>
256
474
  * <p>JSON specification: <code>"Method": {}</code>
257
475
  * </p>
258
476
  */
@@ -265,8 +483,8 @@ export declare namespace Method {
265
483
  const filterSensitiveLog: (obj: Method) => any;
266
484
  }
267
485
  /**
268
- * <p>The query string of a web request. This is the part of a URL that appears after a <code>?</code> character, if any.</p>
269
- * <p>This is used only to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
486
+ * <p>Inspect the query string of the web request. This is the part of a URL that appears after a <code>?</code> character, if any.</p>
487
+ * <p>This is used only in the <a>FieldToMatch</a> specification for some web request component types. </p>
270
488
  * <p>JSON specification: <code>"QueryString": {}</code>
271
489
  * </p>
272
490
  */
@@ -279,10 +497,10 @@ export declare namespace QueryString {
279
497
  const filterSensitiveLog: (obj: QueryString) => any;
280
498
  }
281
499
  /**
282
- * <p>One of the headers in a web request, identified by name, for example,
283
- * <code>User-Agent</code> or <code>Referer</code>. This setting isn't case
284
- * sensitive.</p>
285
- * <p>This is used only to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
500
+ * <p>Inspect one of the headers in the web request, identified by name, for example,
501
+ * <code>User-Agent</code> or <code>Referer</code>. The name isn't case sensitive.</p>
502
+ * <p>You can filter and inspect all headers with the <code>FieldToMatch</code> setting <code>Headers</code>.</p>
503
+ * <p>This is used to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
286
504
  * <p>Example JSON: <code>"SingleHeader": { "Name": "haystack" }</code>
287
505
  * </p>
288
506
  */
@@ -299,9 +517,9 @@ export declare namespace SingleHeader {
299
517
  const filterSensitiveLog: (obj: SingleHeader) => any;
300
518
  }
301
519
  /**
302
- * <p>One query argument in a web request, identified by name, for example
303
- * <i>UserName</i> or <i>SalesRegion</i>. The name can be up to
304
- * 30 characters long and isn't case sensitive. </p>
520
+ * <p>Inspect one query argument in the web request, identified by name, for example
521
+ * <i>UserName</i> or <i>SalesRegion</i>. The name isn't case sensitive. </p>
522
+ * <p>This is used to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
305
523
  * <p>Example JSON: <code>"SingleQueryArgument": { "Name": "myArgument" }</code>
306
524
  * </p>
307
525
  */
@@ -318,8 +536,8 @@ export declare namespace SingleQueryArgument {
318
536
  const filterSensitiveLog: (obj: SingleQueryArgument) => any;
319
537
  }
320
538
  /**
321
- * <p>The path component of the URI of a web request. This is the part of a web request that identifies a resource. For example, <code>/images/daily-ad.jpg</code>.</p>
322
- * <p>This is used only to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
539
+ * <p>Inspect the path component of the URI of the web request. This is the part of the web request that identifies a resource. For example, <code>/images/daily-ad.jpg</code>.</p>
540
+ * <p>This is used only in the <a>FieldToMatch</a> specification for some web request component types. </p>
323
541
  * <p>JSON specification: <code>"UriPath": {}</code>
324
542
  * </p>
325
543
  */
@@ -332,8 +550,8 @@ export declare namespace UriPath {
332
550
  const filterSensitiveLog: (obj: UriPath) => any;
333
551
  }
334
552
  /**
335
- * <p>The part of a web request that you want WAF to inspect. Include the single <code>FieldToMatch</code> type that you want to inspect, with additional specifications as needed, according to the type. You specify a single request component in <code>FieldToMatch</code> for each rule statement that requires it. To inspect more than one component of a web request, create a separate rule statement for each component.</p>
336
- * <p>JSON specification for a <code>QueryString</code> field to match: </p>
553
+ * <p>The part of the web request that you want WAF to inspect. Include the single <code>FieldToMatch</code> type that you want to inspect, with additional specifications as needed, according to the type. You specify a single request component in <code>FieldToMatch</code> for each rule statement that requires it. To inspect more than one component of the web request, create a separate rule statement for each component.</p>
554
+ * <p>Example JSON for a <code>QueryString</code> field to match: </p>
337
555
  * <p>
338
556
  * <code> "FieldToMatch": { "QueryString": {} }</code>
339
557
  * </p>
@@ -349,13 +567,14 @@ export interface FieldToMatch {
349
567
  * sensitive.</p>
350
568
  * <p>Example JSON: <code>"SingleHeader": { "Name": "haystack" }</code>
351
569
  * </p>
570
+ * <p>Alternately, you can filter and inspect all headers with the <code>Headers</code>
571
+ * <code>FieldToMatch</code> setting. </p>
352
572
  */
353
573
  SingleHeader?: SingleHeader;
354
574
  /**
355
575
  * <p>Inspect a single query argument. Provide the name of the query argument to inspect, such
356
576
  * as <i>UserName</i> or <i>SalesRegion</i>. The name can be up to
357
577
  * 30 characters long and isn't case sensitive. </p>
358
- * <p>This is used only to indicate the web request component for WAF to inspect, in the <a>FieldToMatch</a> specification. </p>
359
578
  * <p>Example JSON: <code>"SingleQueryArgument": { "Name": "myArgument" }</code>
360
579
  * </p>
361
580
  */
@@ -365,7 +584,7 @@ export interface FieldToMatch {
365
584
  */
366
585
  AllQueryArguments?: AllQueryArguments;
367
586
  /**
368
- * <p>Inspect the request URI path. This is the part of a web request that identifies a
587
+ * <p>Inspect the request URI path. This is the part of the web request that identifies a
369
588
  * resource, for example, <code>/images/daily-ad.jpg</code>.</p>
370
589
  */
371
590
  UriPath?: UriPath;
@@ -378,13 +597,9 @@ export interface FieldToMatch {
378
597
  * <p>Inspect the request body as plain text. The request body immediately follows the request
379
598
  * headers. This is the part of a request that contains any additional data that you want to
380
599
  * send to your web server as the HTTP request body, such as data from a form. </p>
381
- * <p>Note that only the first 8 KB (8192 bytes) of the request body are forwarded to
382
- * WAF for inspection by the underlying host service. If you don't need to inspect more
383
- * than 8 KB, you can guarantee that you don't allow additional bytes in by combining a
384
- * statement that inspects the body of the web request, such as <a>ByteMatchStatement</a> or <a>RegexPatternSetReferenceStatement</a>,
385
- * with a <a>SizeConstraintStatement</a> that enforces an 8 KB size limit on the
386
- * body of the request. WAF doesn't support inspecting the entire contents of web requests
387
- * whose bodies exceed the 8 KB limit.</p>
600
+ * <p>Only the first 8 KB (8192 bytes) of the request body are forwarded to
601
+ * WAF for inspection by the underlying host service. For information about how to
602
+ * handle oversized request bodies, see the <code>Body</code> object configuration. </p>
388
603
  */
389
604
  Body?: Body;
390
605
  /**
@@ -396,15 +611,29 @@ export interface FieldToMatch {
396
611
  * <p>Inspect the request body as JSON. The request body immediately follows the request
397
612
  * headers. This is the part of a request that contains any additional data that you want to
398
613
  * send to your web server as the HTTP request body, such as data from a form. </p>
399
- * <p>Note that only the first 8 KB (8192 bytes) of the request body are forwarded to
400
- * WAF for inspection by the underlying host service. If you don't need to inspect more
401
- * than 8 KB, you can guarantee that you don't allow additional bytes in by combining a
402
- * statement that inspects the body of the web request, such as <a>ByteMatchStatement</a> or <a>RegexPatternSetReferenceStatement</a>,
403
- * with a <a>SizeConstraintStatement</a> that enforces an 8 KB size limit on the
404
- * body of the request. WAF doesn't support inspecting the entire contents of web requests
405
- * whose bodies exceed the 8 KB limit.</p>
614
+ * <p>Only the first 8 KB (8192 bytes) of the request body are forwarded to
615
+ * WAF for inspection by the underlying host service. For information about how to
616
+ * handle oversized request bodies, see the <code>JsonBody</code> object configuration. </p>
406
617
  */
407
618
  JsonBody?: JsonBody;
619
+ /**
620
+ * <p>Inspect the request headers. You must configure scope and pattern matching filters
621
+ * in the <code>Headers</code> object, to define the set of headers to and the parts of the headers that WAF inspects. </p>
622
+ * <p>Only the first 8 KB (8192 bytes) of a request's headers and only the first 200 headers are forwarded to
623
+ * WAF for inspection by the underlying host service. You must configure
624
+ * how to handle any oversize header content in the <code>Headers</code> object. WAF applies the pattern matching filters
625
+ * to the headers that it receives from the underlying host service. </p>
626
+ */
627
+ Headers?: Headers;
628
+ /**
629
+ * <p>Inspect the request cookies. You must configure scope and pattern matching filters
630
+ * in the <code>Cookies</code> object, to define the set of cookies and the parts of the cookies that WAF inspects. </p>
631
+ * <p>Only the first 8 KB (8192 bytes) of a request's cookies and only the first 200 cookies are forwarded to
632
+ * WAF for inspection by the underlying host service. You must configure
633
+ * how to handle any oversize cookie content in the <code>Cookies</code> object. WAF applies the pattern matching filters
634
+ * to the cookies that it receives from the underlying host service. </p>
635
+ */
636
+ Cookies?: Cookies;
408
637
  }
409
638
  export declare namespace FieldToMatch {
410
639
  /**
@@ -656,7 +885,7 @@ export interface ByteMatchStatement {
656
885
  */
657
886
  SearchString: Uint8Array | undefined;
658
887
  /**
659
- * <p>The part of a web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
888
+ * <p>The part of the web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
660
889
  */
661
890
  FieldToMatch: FieldToMatch | undefined;
662
891
  /**
@@ -666,7 +895,7 @@ export interface ByteMatchStatement {
666
895
  */
667
896
  TextTransformations: TextTransformation[] | undefined;
668
897
  /**
669
- * <p>The area within the portion of a web request that you want WAF to search for
898
+ * <p>The area within the portion of the web request that you want WAF to search for
670
899
  * <code>SearchString</code>. Valid values include the following:</p>
671
900
  * <p>
672
901
  * <b>CONTAINS</b>
@@ -964,6 +1193,7 @@ export declare enum CountryCode {
964
1193
  VU = "VU",
965
1194
  WF = "WF",
966
1195
  WS = "WS",
1196
+ XK = "XK",
967
1197
  YE = "YE",
968
1198
  YT = "YT",
969
1199
  ZA = "ZA",
@@ -1278,7 +1508,7 @@ export interface RegexMatchStatement {
1278
1508
  */
1279
1509
  RegexString: string | undefined;
1280
1510
  /**
1281
- * <p>The part of a web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
1511
+ * <p>The part of the web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
1282
1512
  */
1283
1513
  FieldToMatch: FieldToMatch | undefined;
1284
1514
  /**
@@ -1305,7 +1535,7 @@ export interface RegexPatternSetReferenceStatement {
1305
1535
  */
1306
1536
  ARN: string | undefined;
1307
1537
  /**
1308
- * <p>The part of a web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
1538
+ * <p>The part of the web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
1309
1539
  */
1310
1540
  FieldToMatch: FieldToMatch | undefined;
1311
1541
  /**
@@ -1359,7 +1589,7 @@ export declare enum ComparisonOperator {
1359
1589
  */
1360
1590
  export interface SizeConstraintStatement {
1361
1591
  /**
1362
- * <p>The part of a web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
1592
+ * <p>The part of the web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
1363
1593
  */
1364
1594
  FieldToMatch: FieldToMatch | undefined;
1365
1595
  /**
@@ -1388,7 +1618,7 @@ export declare namespace SizeConstraintStatement {
1388
1618
  */
1389
1619
  export interface SqliMatchStatement {
1390
1620
  /**
1391
- * <p>The part of a web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
1621
+ * <p>The part of the web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
1392
1622
  */
1393
1623
  FieldToMatch: FieldToMatch | undefined;
1394
1624
  /**
@@ -1413,7 +1643,7 @@ export declare namespace SqliMatchStatement {
1413
1643
  */
1414
1644
  export interface XssMatchStatement {
1415
1645
  /**
1416
- * <p>The part of a web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
1646
+ * <p>The part of the web request that you want WAF to inspect. For more information, see <a>FieldToMatch</a>. </p>
1417
1647
  */
1418
1648
  FieldToMatch: FieldToMatch | undefined;
1419
1649
  /**
@@ -1504,6 +1734,7 @@ export declare enum ParameterExceptionField {
1504
1734
  BODY_PARSING_FALLBACK_BEHAVIOR = "BODY_PARSING_FALLBACK_BEHAVIOR",
1505
1735
  BYTE_MATCH_STATEMENT = "BYTE_MATCH_STATEMENT",
1506
1736
  CHANGE_PROPAGATION_STATUS = "CHANGE_PROPAGATION_STATUS",
1737
+ COOKIE_MATCH_PATTERN = "COOKIE_MATCH_PATTERN",
1507
1738
  CUSTOM_REQUEST_HANDLING = "CUSTOM_REQUEST_HANDLING",
1508
1739
  CUSTOM_RESPONSE = "CUSTOM_RESPONSE",
1509
1740
  CUSTOM_RESPONSE_BODY = "CUSTOM_RESPONSE_BODY",
@@ -1517,6 +1748,7 @@ export declare enum ParameterExceptionField {
1517
1748
  FIREWALL_MANAGER_STATEMENT = "FIREWALL_MANAGER_STATEMENT",
1518
1749
  FORWARDED_IP_CONFIG = "FORWARDED_IP_CONFIG",
1519
1750
  GEO_MATCH_STATEMENT = "GEO_MATCH_STATEMENT",
1751
+ HEADER_MATCH_PATTERN = "HEADER_MATCH_PATTERN",
1520
1752
  HEADER_NAME = "HEADER_NAME",
1521
1753
  IP_ADDRESS = "IP_ADDRESS",
1522
1754
  IP_ADDRESS_VERSION = "IP_ADDRESS_VERSION",
@@ -1531,10 +1763,12 @@ export declare enum ParameterExceptionField {
1531
1763
  MANAGED_RULE_GROUP_CONFIG = "MANAGED_RULE_GROUP_CONFIG",
1532
1764
  MANAGED_RULE_SET = "MANAGED_RULE_SET",
1533
1765
  MANAGED_RULE_SET_STATEMENT = "MANAGED_RULE_SET_STATEMENT",
1766
+ MAP_MATCH_SCOPE = "MAP_MATCH_SCOPE",
1534
1767
  METRIC_NAME = "METRIC_NAME",
1535
1768
  NOT_STATEMENT = "NOT_STATEMENT",
1536
1769
  OR_STATEMENT = "OR_STATEMENT",
1537
1770
  OVERRIDE_ACTION = "OVERRIDE_ACTION",
1771
+ OVERSIZE_HANDLING = "OVERSIZE_HANDLING",
1538
1772
  PAYLOAD_TYPE = "PAYLOAD_TYPE",
1539
1773
  POSITION = "POSITION",
1540
1774
  RATE_BASED_STATEMENT = "RATE_BASED_STATEMENT",
@@ -1612,7 +1846,7 @@ export declare class WAFNonexistentItemException extends __BaseException {
1612
1846
  constructor(opts: __ExceptionOptionType<WAFNonexistentItemException, __BaseException>);
1613
1847
  }
1614
1848
  /**
1615
- * <p>WAF couldn’t retrieve the resource that you requested. Retry your request.</p>
1849
+ * <p>WAF couldn’t retrieve a resource that you specified for this operation. Verify the resources that you are specifying in your request parameters and then retry the operation.</p>
1616
1850
  */
1617
1851
  export declare class WAFUnavailableEntityException extends __BaseException {
1618
1852
  readonly name: "WAFUnavailableEntityException";
@@ -2154,7 +2388,7 @@ export declare class WAFTagOperationException extends __BaseException {
2154
2388
  }
2155
2389
  /**
2156
2390
  * <p>WAF couldn’t perform your tagging operation because of an internal error. Retry
2157
- * your request.</p>
2391
+ * ybjectNoteWebRequestComponentour request.</p>
2158
2392
  */
2159
2393
  export declare class WAFTagOperationInternalErrorException extends __BaseException {
2160
2394
  readonly name: "WAFTagOperationInternalErrorException";
@@ -2398,6 +2632,23 @@ export declare namespace CreateWebACLResponse {
2398
2632
  */
2399
2633
  const filterSensitiveLog: (obj: CreateWebACLResponse) => any;
2400
2634
  }
2635
+ /**
2636
+ * <p>The operation failed because you are inspecting the web request body, headers, or cookies without specifying how to handle oversize components.
2637
+ * Rules that inspect the body must either provide an <code>OversizeHandling</code> configuration or they must
2638
+ * be preceded by a <code>SizeConstraintStatement</code> that blocks the body content from being too large.
2639
+ * Rules that inspect the headers or cookies must provide an <code>OversizeHandling</code> configuration. </p>
2640
+ * <p>Provide the handling configuration and retry your operation.</p>
2641
+ * <p>Alternately, you can suppress this warning by adding the following tag to the resource that you provide to this operation: <code>Tag</code> (key:<code>WAF:OversizeFieldsHandlingConstraintOptOut</code>, value:<code>true</code>).</p>
2642
+ */
2643
+ export declare class WAFConfigurationWarningException extends __BaseException {
2644
+ readonly name: "WAFConfigurationWarningException";
2645
+ readonly $fault: "client";
2646
+ Message?: string;
2647
+ /**
2648
+ * @internal
2649
+ */
2650
+ constructor(opts: __ExceptionOptionType<WAFConfigurationWarningException, __BaseException>);
2651
+ }
2401
2652
  export interface DeleteFirewallManagerRuleGroupsRequest {
2402
2653
  /**
2403
2654
  * <p>The Amazon Resource Name (ARN) of the web ACL.</p>
@@ -2468,8 +2719,9 @@ export declare namespace DeleteIPSetResponse {
2468
2719
  const filterSensitiveLog: (obj: DeleteIPSetResponse) => any;
2469
2720
  }
2470
2721
  /**
2471
- * <p>WAF couldn’t perform the operation because your resource is being used by another
2472
- * resource or it’s associated with another resource. </p>
2722
+ * <p>WAF couldn’t perform the operation because your resource is being used by another resource or it’s associated with another resource. </p>
2723
+ * <p>For <code>DeleteWebACL</code>, you will only get this exception if the web ACL is still associated with
2724
+ * a regional resource. Deleting a web ACL that is still associated with an Amazon CloudFront distribution won't get this exception. </p>
2473
2725
  */
2474
2726
  export declare class WAFAssociatedItemException extends __BaseException {
2475
2727
  readonly name: "WAFAssociatedItemException";