aws-sdk-wafv2 1.4.0 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e4eed6b3ef96995e76fd6f35860187b5317cff3cfd3b736d53bcf9d5909302af
4
- data.tar.gz: d48e73e050afe20d41152b55c09c3aeeb76fdc6c3ea08f70a7ecf5b270fbbe4b
3
+ metadata.gz: 6e9d6a8e2557b51c9c3e5a4d606747891a819a20ed856947580d54188deae0d5
4
+ data.tar.gz: d601b83b2448f1f6ec020e74af995b46c1703c948a9d129444298932e2513c01
5
5
  SHA512:
6
- metadata.gz: 43aacdcb5ba5fe0d6cf719f4e207314004e353abad238131754c26e016a461950de3611e897f478e85ef086f180e005d06f144fa6c352a5018de1f9ef25468e3
7
- data.tar.gz: 81b95836d73eeb70d2136405ef4719257e6c411cda9cd594b721b2c7f8915bf98e616d24c5fed5071a535f4857c709c8c1c71f04e9453c94c5334c96b58bbc7a
6
+ metadata.gz: 40c7b3dfd758e3fef63bcabe75a26d430c21bade9e906a805548968f462da0202307a58e1c57d27caca3d11ae552734c6d7e0ecfa90e076422b957a9d6742003
7
+ data.tar.gz: 2baeeac2c2a2197fc4eeccd341d7c0cb36b3c129c5be33a0710b9418019d9db902c2b50f09b75209f79abeda3853c3cc3263e1a9f16f225ff3efd69cce77091f
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -45,6 +47,6 @@ require_relative 'aws-sdk-wafv2/customizations'
45
47
  # @service
46
48
  module Aws::WAFV2
47
49
 
48
- GEM_VERSION = '1.4.0'
50
+ GEM_VERSION = '1.9.0'
49
51
 
50
52
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -24,6 +26,7 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
26
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
30
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
31
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
29
32
 
@@ -69,6 +72,7 @@ module Aws::WAFV2
69
72
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
70
73
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
71
74
  add_plugin(Aws::Plugins::TransferEncoding)
75
+ add_plugin(Aws::Plugins::HttpChecksum)
72
76
  add_plugin(Aws::Plugins::SignatureV4)
73
77
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
74
78
 
@@ -161,7 +165,7 @@ module Aws::WAFV2
161
165
  # @option options [String] :endpoint
162
166
  # The client endpoint is normally constructed from the `:region`
163
167
  # option. You should only configure an `:endpoint` when connecting
164
- # to test endpoints. This should be a valid HTTP(S) URI.
168
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
165
169
  #
166
170
  # @option options [Integer] :endpoint_cache_max_entries (1000)
167
171
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -176,7 +180,7 @@ module Aws::WAFV2
176
180
  # requests fetching endpoints information. Defaults to 60 sec.
177
181
  #
178
182
  # @option options [Boolean] :endpoint_discovery (false)
179
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
183
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
180
184
  #
181
185
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
182
186
  # The log formatter.
@@ -539,6 +543,10 @@ module Aws::WAFV2
539
543
  # },
540
544
  # geo_match_statement: {
541
545
  # country_codes: ["AF"], # accepts AF, AX, AL, DZ, AS, AD, AO, AI, AQ, AG, AR, AM, AW, AU, AT, AZ, BS, BH, BD, BB, BY, BE, BZ, BJ, BM, BT, BO, BQ, BA, BW, BV, BR, IO, BN, BG, BF, BI, KH, CM, CA, CV, KY, CF, TD, CL, CN, CX, CC, CO, KM, CG, CD, CK, CR, CI, HR, CU, CW, CY, CZ, DK, DJ, DM, DO, EC, EG, SV, GQ, ER, EE, ET, FK, FO, FJ, FI, FR, GF, PF, TF, GA, GM, GE, DE, GH, GI, GR, GL, GD, GP, GU, GT, GG, GN, GW, GY, HT, HM, VA, HN, HK, HU, IS, IN, ID, IR, IQ, IE, IM, IL, IT, JM, JP, JE, JO, KZ, KE, KI, KP, KR, KW, KG, LA, LV, LB, LS, LR, LY, LI, LT, LU, MO, MK, MG, MW, MY, MV, ML, MT, MH, MQ, MR, MU, YT, MX, FM, MD, MC, MN, ME, MS, MA, MZ, MM, NA, NR, NP, NL, NC, NZ, NI, NE, NG, NU, NF, MP, NO, OM, PK, PW, PS, PA, PG, PY, PE, PH, PN, PL, PT, PR, QA, RE, RO, RU, RW, BL, SH, KN, LC, MF, PM, VC, WS, SM, ST, SA, SN, RS, SC, SL, SG, SX, SK, SI, SB, SO, ZA, GS, SS, ES, LK, SD, SR, SJ, SZ, SE, CH, SY, TW, TJ, TZ, TH, TL, TG, TK, TO, TT, TN, TR, TM, TC, TV, UG, UA, AE, GB, US, UM, UY, UZ, VU, VE, VN, VG, VI, WF, EH, YE, ZM, ZW
546
+ # forwarded_ip_config: {
547
+ # header_name: "ForwardedIPHeaderName", # required
548
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
549
+ # },
542
550
  # },
543
551
  # rule_group_reference_statement: {
544
552
  # arn: "ResourceArn", # required
@@ -550,6 +558,11 @@ module Aws::WAFV2
550
558
  # },
551
559
  # ip_set_reference_statement: {
552
560
  # arn: "ResourceArn", # required
561
+ # ip_set_forwarded_ip_config: {
562
+ # header_name: "ForwardedIPHeaderName", # required
563
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
564
+ # position: "FIRST", # required, accepts FIRST, LAST, ANY
565
+ # },
553
566
  # },
554
567
  # regex_pattern_set_reference_statement: {
555
568
  # arn: "ResourceArn", # required
@@ -580,10 +593,14 @@ module Aws::WAFV2
580
593
  # },
581
594
  # rate_based_statement: {
582
595
  # limit: 1, # required
583
- # aggregate_key_type: "IP", # required, accepts IP
596
+ # aggregate_key_type: "IP", # required, accepts IP, FORWARDED_IP
584
597
  # scope_down_statement: {
585
598
  # # recursive Statement
586
599
  # },
600
+ # forwarded_ip_config: {
601
+ # header_name: "ForwardedIPHeaderName", # required
602
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
603
+ # },
587
604
  # },
588
605
  # and_statement: {
589
606
  # statements: [ # required
@@ -1041,6 +1058,10 @@ module Aws::WAFV2
1041
1058
  # },
1042
1059
  # geo_match_statement: {
1043
1060
  # country_codes: ["AF"], # accepts AF, AX, AL, DZ, AS, AD, AO, AI, AQ, AG, AR, AM, AW, AU, AT, AZ, BS, BH, BD, BB, BY, BE, BZ, BJ, BM, BT, BO, BQ, BA, BW, BV, BR, IO, BN, BG, BF, BI, KH, CM, CA, CV, KY, CF, TD, CL, CN, CX, CC, CO, KM, CG, CD, CK, CR, CI, HR, CU, CW, CY, CZ, DK, DJ, DM, DO, EC, EG, SV, GQ, ER, EE, ET, FK, FO, FJ, FI, FR, GF, PF, TF, GA, GM, GE, DE, GH, GI, GR, GL, GD, GP, GU, GT, GG, GN, GW, GY, HT, HM, VA, HN, HK, HU, IS, IN, ID, IR, IQ, IE, IM, IL, IT, JM, JP, JE, JO, KZ, KE, KI, KP, KR, KW, KG, LA, LV, LB, LS, LR, LY, LI, LT, LU, MO, MK, MG, MW, MY, MV, ML, MT, MH, MQ, MR, MU, YT, MX, FM, MD, MC, MN, ME, MS, MA, MZ, MM, NA, NR, NP, NL, NC, NZ, NI, NE, NG, NU, NF, MP, NO, OM, PK, PW, PS, PA, PG, PY, PE, PH, PN, PL, PT, PR, QA, RE, RO, RU, RW, BL, SH, KN, LC, MF, PM, VC, WS, SM, ST, SA, SN, RS, SC, SL, SG, SX, SK, SI, SB, SO, ZA, GS, SS, ES, LK, SD, SR, SJ, SZ, SE, CH, SY, TW, TJ, TZ, TH, TL, TG, TK, TO, TT, TN, TR, TM, TC, TV, UG, UA, AE, GB, US, UM, UY, UZ, VU, VE, VN, VG, VI, WF, EH, YE, ZM, ZW
1061
+ # forwarded_ip_config: {
1062
+ # header_name: "ForwardedIPHeaderName", # required
1063
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1064
+ # },
1044
1065
  # },
1045
1066
  # rule_group_reference_statement: {
1046
1067
  # arn: "ResourceArn", # required
@@ -1052,6 +1073,11 @@ module Aws::WAFV2
1052
1073
  # },
1053
1074
  # ip_set_reference_statement: {
1054
1075
  # arn: "ResourceArn", # required
1076
+ # ip_set_forwarded_ip_config: {
1077
+ # header_name: "ForwardedIPHeaderName", # required
1078
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1079
+ # position: "FIRST", # required, accepts FIRST, LAST, ANY
1080
+ # },
1055
1081
  # },
1056
1082
  # regex_pattern_set_reference_statement: {
1057
1083
  # arn: "ResourceArn", # required
@@ -1082,10 +1108,14 @@ module Aws::WAFV2
1082
1108
  # },
1083
1109
  # rate_based_statement: {
1084
1110
  # limit: 1, # required
1085
- # aggregate_key_type: "IP", # required, accepts IP
1111
+ # aggregate_key_type: "IP", # required, accepts IP, FORWARDED_IP
1086
1112
  # scope_down_statement: {
1087
1113
  # # recursive Statement
1088
1114
  # },
1115
+ # forwarded_ip_config: {
1116
+ # header_name: "ForwardedIPHeaderName", # required
1117
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1118
+ # },
1089
1119
  # },
1090
1120
  # and_statement: {
1091
1121
  # statements: [ # required
@@ -1359,6 +1389,10 @@ module Aws::WAFV2
1359
1389
  # },
1360
1390
  # geo_match_statement: {
1361
1391
  # country_codes: ["AF"], # accepts AF, AX, AL, DZ, AS, AD, AO, AI, AQ, AG, AR, AM, AW, AU, AT, AZ, BS, BH, BD, BB, BY, BE, BZ, BJ, BM, BT, BO, BQ, BA, BW, BV, BR, IO, BN, BG, BF, BI, KH, CM, CA, CV, KY, CF, TD, CL, CN, CX, CC, CO, KM, CG, CD, CK, CR, CI, HR, CU, CW, CY, CZ, DK, DJ, DM, DO, EC, EG, SV, GQ, ER, EE, ET, FK, FO, FJ, FI, FR, GF, PF, TF, GA, GM, GE, DE, GH, GI, GR, GL, GD, GP, GU, GT, GG, GN, GW, GY, HT, HM, VA, HN, HK, HU, IS, IN, ID, IR, IQ, IE, IM, IL, IT, JM, JP, JE, JO, KZ, KE, KI, KP, KR, KW, KG, LA, LV, LB, LS, LR, LY, LI, LT, LU, MO, MK, MG, MW, MY, MV, ML, MT, MH, MQ, MR, MU, YT, MX, FM, MD, MC, MN, ME, MS, MA, MZ, MM, NA, NR, NP, NL, NC, NZ, NI, NE, NG, NU, NF, MP, NO, OM, PK, PW, PS, PA, PG, PY, PE, PH, PN, PL, PT, PR, QA, RE, RO, RU, RW, BL, SH, KN, LC, MF, PM, VC, WS, SM, ST, SA, SN, RS, SC, SL, SG, SX, SK, SI, SB, SO, ZA, GS, SS, ES, LK, SD, SR, SJ, SZ, SE, CH, SY, TW, TJ, TZ, TH, TL, TG, TK, TO, TT, TN, TR, TM, TC, TV, UG, UA, AE, GB, US, UM, UY, UZ, VU, VE, VN, VG, VI, WF, EH, YE, ZM, ZW
1392
+ # forwarded_ip_config: {
1393
+ # header_name: "ForwardedIPHeaderName", # required
1394
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1395
+ # },
1362
1396
  # },
1363
1397
  # rule_group_reference_statement: {
1364
1398
  # arn: "ResourceArn", # required
@@ -1370,6 +1404,11 @@ module Aws::WAFV2
1370
1404
  # },
1371
1405
  # ip_set_reference_statement: {
1372
1406
  # arn: "ResourceArn", # required
1407
+ # ip_set_forwarded_ip_config: {
1408
+ # header_name: "ForwardedIPHeaderName", # required
1409
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1410
+ # position: "FIRST", # required, accepts FIRST, LAST, ANY
1411
+ # },
1373
1412
  # },
1374
1413
  # regex_pattern_set_reference_statement: {
1375
1414
  # arn: "ResourceArn", # required
@@ -1400,10 +1439,14 @@ module Aws::WAFV2
1400
1439
  # },
1401
1440
  # rate_based_statement: {
1402
1441
  # limit: 1, # required
1403
- # aggregate_key_type: "IP", # required, accepts IP
1442
+ # aggregate_key_type: "IP", # required, accepts IP, FORWARDED_IP
1404
1443
  # scope_down_statement: {
1405
1444
  # # recursive Statement
1406
1445
  # },
1446
+ # forwarded_ip_config: {
1447
+ # header_name: "ForwardedIPHeaderName", # required
1448
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1449
+ # },
1407
1450
  # },
1408
1451
  # and_statement: {
1409
1452
  # statements: [ # required
@@ -2334,10 +2377,15 @@ module Aws::WAFV2
2334
2377
  # resp.rule_group.rules[0].statement.size_constraint_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
2335
2378
  # resp.rule_group.rules[0].statement.geo_match_statement.country_codes #=> Array
2336
2379
  # resp.rule_group.rules[0].statement.geo_match_statement.country_codes[0] #=> String, one of "AF", "AX", "AL", "DZ", "AS", "AD", "AO", "AI", "AQ", "AG", "AR", "AM", "AW", "AU", "AT", "AZ", "BS", "BH", "BD", "BB", "BY", "BE", "BZ", "BJ", "BM", "BT", "BO", "BQ", "BA", "BW", "BV", "BR", "IO", "BN", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "KY", "CF", "TD", "CL", "CN", "CX", "CC", "CO", "KM", "CG", "CD", "CK", "CR", "CI", "HR", "CU", "CW", "CY", "CZ", "DK", "DJ", "DM", "DO", "EC", "EG", "SV", "GQ", "ER", "EE", "ET", "FK", "FO", "FJ", "FI", "FR", "GF", "PF", "TF", "GA", "GM", "GE", "DE", "GH", "GI", "GR", "GL", "GD", "GP", "GU", "GT", "GG", "GN", "GW", "GY", "HT", "HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR", "IQ", "IE", "IM", "IL", "IT", "JM", "JP", "JE", "JO", "KZ", "KE", "KI", "KP", "KR", "KW", "KG", "LA", "LV", "LB", "LS", "LR", "LY", "LI", "LT", "LU", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MH", "MQ", "MR", "MU", "YT", "MX", "FM", "MD", "MC", "MN", "ME", "MS", "MA", "MZ", "MM", "NA", "NR", "NP", "NL", "NC", "NZ", "NI", "NE", "NG", "NU", "NF", "MP", "NO", "OM", "PK", "PW", "PS", "PA", "PG", "PY", "PE", "PH", "PN", "PL", "PT", "PR", "QA", "RE", "RO", "RU", "RW", "BL", "SH", "KN", "LC", "MF", "PM", "VC", "WS", "SM", "ST", "SA", "SN", "RS", "SC", "SL", "SG", "SX", "SK", "SI", "SB", "SO", "ZA", "GS", "SS", "ES", "LK", "SD", "SR", "SJ", "SZ", "SE", "CH", "SY", "TW", "TJ", "TZ", "TH", "TL", "TG", "TK", "TO", "TT", "TN", "TR", "TM", "TC", "TV", "UG", "UA", "AE", "GB", "US", "UM", "UY", "UZ", "VU", "VE", "VN", "VG", "VI", "WF", "EH", "YE", "ZM", "ZW"
2380
+ # resp.rule_group.rules[0].statement.geo_match_statement.forwarded_ip_config.header_name #=> String
2381
+ # resp.rule_group.rules[0].statement.geo_match_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2337
2382
  # resp.rule_group.rules[0].statement.rule_group_reference_statement.arn #=> String
2338
2383
  # resp.rule_group.rules[0].statement.rule_group_reference_statement.excluded_rules #=> Array
2339
2384
  # resp.rule_group.rules[0].statement.rule_group_reference_statement.excluded_rules[0].name #=> String
2340
2385
  # resp.rule_group.rules[0].statement.ip_set_reference_statement.arn #=> String
2386
+ # resp.rule_group.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.header_name #=> String
2387
+ # resp.rule_group.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2388
+ # resp.rule_group.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.position #=> String, one of "FIRST", "LAST", "ANY"
2341
2389
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.arn #=> String
2342
2390
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_header.name #=> String
2343
2391
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_query_argument.name #=> String
@@ -2345,8 +2393,10 @@ module Aws::WAFV2
2345
2393
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.text_transformations[0].priority #=> Integer
2346
2394
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
2347
2395
  # resp.rule_group.rules[0].statement.rate_based_statement.limit #=> Integer
2348
- # resp.rule_group.rules[0].statement.rate_based_statement.aggregate_key_type #=> String, one of "IP"
2396
+ # resp.rule_group.rules[0].statement.rate_based_statement.aggregate_key_type #=> String, one of "IP", "FORWARDED_IP"
2349
2397
  # resp.rule_group.rules[0].statement.rate_based_statement.scope_down_statement #=> Types::Statement
2398
+ # resp.rule_group.rules[0].statement.rate_based_statement.forwarded_ip_config.header_name #=> String
2399
+ # resp.rule_group.rules[0].statement.rate_based_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2350
2400
  # resp.rule_group.rules[0].statement.and_statement.statements #=> Array
2351
2401
  # resp.rule_group.rules[0].statement.and_statement.statements[0] #=> Types::Statement
2352
2402
  # resp.rule_group.rules[0].statement.or_statement.statements #=> Array
@@ -2421,7 +2471,8 @@ module Aws::WAFV2
2421
2471
  # @option params [required, Types::TimeWindow] :time_window
2422
2472
  # The start date and time and the end date and time of the range for
2423
2473
  # which you want `GetSampledRequests` to return a sample of requests.
2424
- # Specify the date and time in the following format:
2474
+ # You must specify the times in Coordinated Universal Time (UTC) format.
2475
+ # UTC format includes the special designator, `Z`. For example,
2425
2476
  # `"2016-09-27T14:50Z"`. You can specify any time range in the previous
2426
2477
  # three hours.
2427
2478
  #
@@ -2562,10 +2613,15 @@ module Aws::WAFV2
2562
2613
  # resp.web_acl.rules[0].statement.size_constraint_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
2563
2614
  # resp.web_acl.rules[0].statement.geo_match_statement.country_codes #=> Array
2564
2615
  # resp.web_acl.rules[0].statement.geo_match_statement.country_codes[0] #=> String, one of "AF", "AX", "AL", "DZ", "AS", "AD", "AO", "AI", "AQ", "AG", "AR", "AM", "AW", "AU", "AT", "AZ", "BS", "BH", "BD", "BB", "BY", "BE", "BZ", "BJ", "BM", "BT", "BO", "BQ", "BA", "BW", "BV", "BR", "IO", "BN", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "KY", "CF", "TD", "CL", "CN", "CX", "CC", "CO", "KM", "CG", "CD", "CK", "CR", "CI", "HR", "CU", "CW", "CY", "CZ", "DK", "DJ", "DM", "DO", "EC", "EG", "SV", "GQ", "ER", "EE", "ET", "FK", "FO", "FJ", "FI", "FR", "GF", "PF", "TF", "GA", "GM", "GE", "DE", "GH", "GI", "GR", "GL", "GD", "GP", "GU", "GT", "GG", "GN", "GW", "GY", "HT", "HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR", "IQ", "IE", "IM", "IL", "IT", "JM", "JP", "JE", "JO", "KZ", "KE", "KI", "KP", "KR", "KW", "KG", "LA", "LV", "LB", "LS", "LR", "LY", "LI", "LT", "LU", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MH", "MQ", "MR", "MU", "YT", "MX", "FM", "MD", "MC", "MN", "ME", "MS", "MA", "MZ", "MM", "NA", "NR", "NP", "NL", "NC", "NZ", "NI", "NE", "NG", "NU", "NF", "MP", "NO", "OM", "PK", "PW", "PS", "PA", "PG", "PY", "PE", "PH", "PN", "PL", "PT", "PR", "QA", "RE", "RO", "RU", "RW", "BL", "SH", "KN", "LC", "MF", "PM", "VC", "WS", "SM", "ST", "SA", "SN", "RS", "SC", "SL", "SG", "SX", "SK", "SI", "SB", "SO", "ZA", "GS", "SS", "ES", "LK", "SD", "SR", "SJ", "SZ", "SE", "CH", "SY", "TW", "TJ", "TZ", "TH", "TL", "TG", "TK", "TO", "TT", "TN", "TR", "TM", "TC", "TV", "UG", "UA", "AE", "GB", "US", "UM", "UY", "UZ", "VU", "VE", "VN", "VG", "VI", "WF", "EH", "YE", "ZM", "ZW"
2616
+ # resp.web_acl.rules[0].statement.geo_match_statement.forwarded_ip_config.header_name #=> String
2617
+ # resp.web_acl.rules[0].statement.geo_match_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2565
2618
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.arn #=> String
2566
2619
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.excluded_rules #=> Array
2567
2620
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.excluded_rules[0].name #=> String
2568
2621
  # resp.web_acl.rules[0].statement.ip_set_reference_statement.arn #=> String
2622
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.header_name #=> String
2623
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2624
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.position #=> String, one of "FIRST", "LAST", "ANY"
2569
2625
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.arn #=> String
2570
2626
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_header.name #=> String
2571
2627
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_query_argument.name #=> String
@@ -2573,8 +2629,10 @@ module Aws::WAFV2
2573
2629
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.text_transformations[0].priority #=> Integer
2574
2630
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
2575
2631
  # resp.web_acl.rules[0].statement.rate_based_statement.limit #=> Integer
2576
- # resp.web_acl.rules[0].statement.rate_based_statement.aggregate_key_type #=> String, one of "IP"
2632
+ # resp.web_acl.rules[0].statement.rate_based_statement.aggregate_key_type #=> String, one of "IP", "FORWARDED_IP"
2577
2633
  # resp.web_acl.rules[0].statement.rate_based_statement.scope_down_statement #=> Types::Statement
2634
+ # resp.web_acl.rules[0].statement.rate_based_statement.forwarded_ip_config.header_name #=> String
2635
+ # resp.web_acl.rules[0].statement.rate_based_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2578
2636
  # resp.web_acl.rules[0].statement.and_statement.statements #=> Array
2579
2637
  # resp.web_acl.rules[0].statement.and_statement.statements[0] #=> Types::Statement
2580
2638
  # resp.web_acl.rules[0].statement.or_statement.statements #=> Array
@@ -2690,10 +2748,15 @@ module Aws::WAFV2
2690
2748
  # resp.web_acl.rules[0].statement.size_constraint_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
2691
2749
  # resp.web_acl.rules[0].statement.geo_match_statement.country_codes #=> Array
2692
2750
  # resp.web_acl.rules[0].statement.geo_match_statement.country_codes[0] #=> String, one of "AF", "AX", "AL", "DZ", "AS", "AD", "AO", "AI", "AQ", "AG", "AR", "AM", "AW", "AU", "AT", "AZ", "BS", "BH", "BD", "BB", "BY", "BE", "BZ", "BJ", "BM", "BT", "BO", "BQ", "BA", "BW", "BV", "BR", "IO", "BN", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "KY", "CF", "TD", "CL", "CN", "CX", "CC", "CO", "KM", "CG", "CD", "CK", "CR", "CI", "HR", "CU", "CW", "CY", "CZ", "DK", "DJ", "DM", "DO", "EC", "EG", "SV", "GQ", "ER", "EE", "ET", "FK", "FO", "FJ", "FI", "FR", "GF", "PF", "TF", "GA", "GM", "GE", "DE", "GH", "GI", "GR", "GL", "GD", "GP", "GU", "GT", "GG", "GN", "GW", "GY", "HT", "HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR", "IQ", "IE", "IM", "IL", "IT", "JM", "JP", "JE", "JO", "KZ", "KE", "KI", "KP", "KR", "KW", "KG", "LA", "LV", "LB", "LS", "LR", "LY", "LI", "LT", "LU", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MH", "MQ", "MR", "MU", "YT", "MX", "FM", "MD", "MC", "MN", "ME", "MS", "MA", "MZ", "MM", "NA", "NR", "NP", "NL", "NC", "NZ", "NI", "NE", "NG", "NU", "NF", "MP", "NO", "OM", "PK", "PW", "PS", "PA", "PG", "PY", "PE", "PH", "PN", "PL", "PT", "PR", "QA", "RE", "RO", "RU", "RW", "BL", "SH", "KN", "LC", "MF", "PM", "VC", "WS", "SM", "ST", "SA", "SN", "RS", "SC", "SL", "SG", "SX", "SK", "SI", "SB", "SO", "ZA", "GS", "SS", "ES", "LK", "SD", "SR", "SJ", "SZ", "SE", "CH", "SY", "TW", "TJ", "TZ", "TH", "TL", "TG", "TK", "TO", "TT", "TN", "TR", "TM", "TC", "TV", "UG", "UA", "AE", "GB", "US", "UM", "UY", "UZ", "VU", "VE", "VN", "VG", "VI", "WF", "EH", "YE", "ZM", "ZW"
2751
+ # resp.web_acl.rules[0].statement.geo_match_statement.forwarded_ip_config.header_name #=> String
2752
+ # resp.web_acl.rules[0].statement.geo_match_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2693
2753
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.arn #=> String
2694
2754
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.excluded_rules #=> Array
2695
2755
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.excluded_rules[0].name #=> String
2696
2756
  # resp.web_acl.rules[0].statement.ip_set_reference_statement.arn #=> String
2757
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.header_name #=> String
2758
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2759
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.position #=> String, one of "FIRST", "LAST", "ANY"
2697
2760
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.arn #=> String
2698
2761
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_header.name #=> String
2699
2762
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_query_argument.name #=> String
@@ -2701,8 +2764,10 @@ module Aws::WAFV2
2701
2764
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.text_transformations[0].priority #=> Integer
2702
2765
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
2703
2766
  # resp.web_acl.rules[0].statement.rate_based_statement.limit #=> Integer
2704
- # resp.web_acl.rules[0].statement.rate_based_statement.aggregate_key_type #=> String, one of "IP"
2767
+ # resp.web_acl.rules[0].statement.rate_based_statement.aggregate_key_type #=> String, one of "IP", "FORWARDED_IP"
2705
2768
  # resp.web_acl.rules[0].statement.rate_based_statement.scope_down_statement #=> Types::Statement
2769
+ # resp.web_acl.rules[0].statement.rate_based_statement.forwarded_ip_config.header_name #=> String
2770
+ # resp.web_acl.rules[0].statement.rate_based_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2706
2771
  # resp.web_acl.rules[0].statement.and_statement.statements #=> Array
2707
2772
  # resp.web_acl.rules[0].statement.and_statement.statements[0] #=> Types::Statement
2708
2773
  # resp.web_acl.rules[0].statement.or_statement.statements #=> Array
@@ -3171,7 +3236,16 @@ module Aws::WAFV2
3171
3236
  #
3172
3237
  # </note>
3173
3238
  #
3174
- # Retrieves the TagInfoForResource for the specified resource.
3239
+ # Retrieves the TagInfoForResource for the specified resource. Tags are
3240
+ # key:value pairs that you can use to categorize and manage your
3241
+ # resources, for purposes like billing. For example, you might set the
3242
+ # tag key to "customer" and the value to the customer name or ID. You
3243
+ # can specify one or more tags to add to each AWS resource, up to 50
3244
+ # tags for a resource.
3245
+ #
3246
+ # You can tag the AWS resources that you manage through AWS WAF: web
3247
+ # ACLs, rule groups, IP sets, and regex pattern sets. You can't manage
3248
+ # or view tags through the AWS WAF console.
3175
3249
  #
3176
3250
  #
3177
3251
  #
@@ -3314,6 +3388,9 @@ module Aws::WAFV2
3314
3388
  # you are operating. If you are capturing logs for Amazon
3315
3389
  # CloudFront, always create the firehose in US East (N. Virginia).
3316
3390
  #
3391
+ # Give the data firehose a name that starts with the prefix
3392
+ # `aws-waf-logs-`. For example, `aws-waf-logs-us-east-2-analytics`.
3393
+ #
3317
3394
  # <note markdown="1"> Do not create the data firehose using a `Kinesis stream` as your
3318
3395
  # source.
3319
3396
  #
@@ -3456,10 +3533,15 @@ module Aws::WAFV2
3456
3533
  # </note>
3457
3534
  #
3458
3535
  # Associates tags with the specified AWS resource. Tags are key:value
3459
- # pairs that you can associate with AWS resources. For example, the tag
3460
- # key might be "customer" and the tag value might be "companyA." You
3461
- # can specify one or more tags to add to each container. You can add up
3462
- # to 50 tags to each AWS resource.
3536
+ # pairs that you can use to categorize and manage your resources, for
3537
+ # purposes like billing. For example, you might set the tag key to
3538
+ # "customer" and the value to the customer name or ID. You can specify
3539
+ # one or more tags to add to each AWS resource, up to 50 tags for a
3540
+ # resource.
3541
+ #
3542
+ # You can tag the AWS resources that you manage through AWS WAF: web
3543
+ # ACLs, rule groups, IP sets, and regex pattern sets. You can't manage
3544
+ # or view tags through the AWS WAF console.
3463
3545
  #
3464
3546
  #
3465
3547
  #
@@ -3919,6 +4001,10 @@ module Aws::WAFV2
3919
4001
  # },
3920
4002
  # geo_match_statement: {
3921
4003
  # country_codes: ["AF"], # accepts AF, AX, AL, DZ, AS, AD, AO, AI, AQ, AG, AR, AM, AW, AU, AT, AZ, BS, BH, BD, BB, BY, BE, BZ, BJ, BM, BT, BO, BQ, BA, BW, BV, BR, IO, BN, BG, BF, BI, KH, CM, CA, CV, KY, CF, TD, CL, CN, CX, CC, CO, KM, CG, CD, CK, CR, CI, HR, CU, CW, CY, CZ, DK, DJ, DM, DO, EC, EG, SV, GQ, ER, EE, ET, FK, FO, FJ, FI, FR, GF, PF, TF, GA, GM, GE, DE, GH, GI, GR, GL, GD, GP, GU, GT, GG, GN, GW, GY, HT, HM, VA, HN, HK, HU, IS, IN, ID, IR, IQ, IE, IM, IL, IT, JM, JP, JE, JO, KZ, KE, KI, KP, KR, KW, KG, LA, LV, LB, LS, LR, LY, LI, LT, LU, MO, MK, MG, MW, MY, MV, ML, MT, MH, MQ, MR, MU, YT, MX, FM, MD, MC, MN, ME, MS, MA, MZ, MM, NA, NR, NP, NL, NC, NZ, NI, NE, NG, NU, NF, MP, NO, OM, PK, PW, PS, PA, PG, PY, PE, PH, PN, PL, PT, PR, QA, RE, RO, RU, RW, BL, SH, KN, LC, MF, PM, VC, WS, SM, ST, SA, SN, RS, SC, SL, SG, SX, SK, SI, SB, SO, ZA, GS, SS, ES, LK, SD, SR, SJ, SZ, SE, CH, SY, TW, TJ, TZ, TH, TL, TG, TK, TO, TT, TN, TR, TM, TC, TV, UG, UA, AE, GB, US, UM, UY, UZ, VU, VE, VN, VG, VI, WF, EH, YE, ZM, ZW
4004
+ # forwarded_ip_config: {
4005
+ # header_name: "ForwardedIPHeaderName", # required
4006
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4007
+ # },
3922
4008
  # },
3923
4009
  # rule_group_reference_statement: {
3924
4010
  # arn: "ResourceArn", # required
@@ -3930,6 +4016,11 @@ module Aws::WAFV2
3930
4016
  # },
3931
4017
  # ip_set_reference_statement: {
3932
4018
  # arn: "ResourceArn", # required
4019
+ # ip_set_forwarded_ip_config: {
4020
+ # header_name: "ForwardedIPHeaderName", # required
4021
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4022
+ # position: "FIRST", # required, accepts FIRST, LAST, ANY
4023
+ # },
3933
4024
  # },
3934
4025
  # regex_pattern_set_reference_statement: {
3935
4026
  # arn: "ResourceArn", # required
@@ -3960,10 +4051,14 @@ module Aws::WAFV2
3960
4051
  # },
3961
4052
  # rate_based_statement: {
3962
4053
  # limit: 1, # required
3963
- # aggregate_key_type: "IP", # required, accepts IP
4054
+ # aggregate_key_type: "IP", # required, accepts IP, FORWARDED_IP
3964
4055
  # scope_down_statement: {
3965
4056
  # # recursive Statement
3966
4057
  # },
4058
+ # forwarded_ip_config: {
4059
+ # header_name: "ForwardedIPHeaderName", # required
4060
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4061
+ # },
3967
4062
  # },
3968
4063
  # and_statement: {
3969
4064
  # statements: [ # required
@@ -4241,6 +4336,10 @@ module Aws::WAFV2
4241
4336
  # },
4242
4337
  # geo_match_statement: {
4243
4338
  # country_codes: ["AF"], # accepts AF, AX, AL, DZ, AS, AD, AO, AI, AQ, AG, AR, AM, AW, AU, AT, AZ, BS, BH, BD, BB, BY, BE, BZ, BJ, BM, BT, BO, BQ, BA, BW, BV, BR, IO, BN, BG, BF, BI, KH, CM, CA, CV, KY, CF, TD, CL, CN, CX, CC, CO, KM, CG, CD, CK, CR, CI, HR, CU, CW, CY, CZ, DK, DJ, DM, DO, EC, EG, SV, GQ, ER, EE, ET, FK, FO, FJ, FI, FR, GF, PF, TF, GA, GM, GE, DE, GH, GI, GR, GL, GD, GP, GU, GT, GG, GN, GW, GY, HT, HM, VA, HN, HK, HU, IS, IN, ID, IR, IQ, IE, IM, IL, IT, JM, JP, JE, JO, KZ, KE, KI, KP, KR, KW, KG, LA, LV, LB, LS, LR, LY, LI, LT, LU, MO, MK, MG, MW, MY, MV, ML, MT, MH, MQ, MR, MU, YT, MX, FM, MD, MC, MN, ME, MS, MA, MZ, MM, NA, NR, NP, NL, NC, NZ, NI, NE, NG, NU, NF, MP, NO, OM, PK, PW, PS, PA, PG, PY, PE, PH, PN, PL, PT, PR, QA, RE, RO, RU, RW, BL, SH, KN, LC, MF, PM, VC, WS, SM, ST, SA, SN, RS, SC, SL, SG, SX, SK, SI, SB, SO, ZA, GS, SS, ES, LK, SD, SR, SJ, SZ, SE, CH, SY, TW, TJ, TZ, TH, TL, TG, TK, TO, TT, TN, TR, TM, TC, TV, UG, UA, AE, GB, US, UM, UY, UZ, VU, VE, VN, VG, VI, WF, EH, YE, ZM, ZW
4339
+ # forwarded_ip_config: {
4340
+ # header_name: "ForwardedIPHeaderName", # required
4341
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4342
+ # },
4244
4343
  # },
4245
4344
  # rule_group_reference_statement: {
4246
4345
  # arn: "ResourceArn", # required
@@ -4252,6 +4351,11 @@ module Aws::WAFV2
4252
4351
  # },
4253
4352
  # ip_set_reference_statement: {
4254
4353
  # arn: "ResourceArn", # required
4354
+ # ip_set_forwarded_ip_config: {
4355
+ # header_name: "ForwardedIPHeaderName", # required
4356
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4357
+ # position: "FIRST", # required, accepts FIRST, LAST, ANY
4358
+ # },
4255
4359
  # },
4256
4360
  # regex_pattern_set_reference_statement: {
4257
4361
  # arn: "ResourceArn", # required
@@ -4282,10 +4386,14 @@ module Aws::WAFV2
4282
4386
  # },
4283
4387
  # rate_based_statement: {
4284
4388
  # limit: 1, # required
4285
- # aggregate_key_type: "IP", # required, accepts IP
4389
+ # aggregate_key_type: "IP", # required, accepts IP, FORWARDED_IP
4286
4390
  # scope_down_statement: {
4287
4391
  # # recursive Statement
4288
4392
  # },
4393
+ # forwarded_ip_config: {
4394
+ # header_name: "ForwardedIPHeaderName", # required
4395
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4396
+ # },
4289
4397
  # },
4290
4398
  # and_statement: {
4291
4399
  # statements: [ # required
@@ -4371,7 +4479,7 @@ module Aws::WAFV2
4371
4479
  params: params,
4372
4480
  config: config)
4373
4481
  context[:gem_name] = 'aws-sdk-wafv2'
4374
- context[:gem_version] = '1.4.0'
4482
+ context[:gem_version] = '1.9.0'
4375
4483
  Seahorse::Client::Request.new(handlers, context)
4376
4484
  end
4377
4485
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -64,11 +66,15 @@ module Aws::WAFV2
64
66
  ErrorReason = Shapes::StringShape.new(name: 'ErrorReason')
65
67
  ExcludedRule = Shapes::StructureShape.new(name: 'ExcludedRule')
66
68
  ExcludedRules = Shapes::ListShape.new(name: 'ExcludedRules')
69
+ FallbackBehavior = Shapes::StringShape.new(name: 'FallbackBehavior')
67
70
  FieldToMatch = Shapes::StructureShape.new(name: 'FieldToMatch')
68
71
  FieldToMatchData = Shapes::StringShape.new(name: 'FieldToMatchData')
69
72
  FirewallManagerRuleGroup = Shapes::StructureShape.new(name: 'FirewallManagerRuleGroup')
70
73
  FirewallManagerRuleGroups = Shapes::ListShape.new(name: 'FirewallManagerRuleGroups')
71
74
  FirewallManagerStatement = Shapes::StructureShape.new(name: 'FirewallManagerStatement')
75
+ ForwardedIPConfig = Shapes::StructureShape.new(name: 'ForwardedIPConfig')
76
+ ForwardedIPHeaderName = Shapes::StringShape.new(name: 'ForwardedIPHeaderName')
77
+ ForwardedIPPosition = Shapes::StringShape.new(name: 'ForwardedIPPosition')
72
78
  GeoMatchStatement = Shapes::StructureShape.new(name: 'GeoMatchStatement')
73
79
  GetIPSetRequest = Shapes::StructureShape.new(name: 'GetIPSetRequest')
74
80
  GetIPSetResponse = Shapes::StructureShape.new(name: 'GetIPSetResponse')
@@ -99,6 +105,7 @@ module Aws::WAFV2
99
105
  IPAddressVersion = Shapes::StringShape.new(name: 'IPAddressVersion')
100
106
  IPAddresses = Shapes::ListShape.new(name: 'IPAddresses')
101
107
  IPSet = Shapes::StructureShape.new(name: 'IPSet')
108
+ IPSetForwardedIPConfig = Shapes::StructureShape.new(name: 'IPSetForwardedIPConfig')
102
109
  IPSetReferenceStatement = Shapes::StructureShape.new(name: 'IPSetReferenceStatement')
103
110
  IPSetSummaries = Shapes::ListShape.new(name: 'IPSetSummaries')
104
111
  IPSetSummary = Shapes::StructureShape.new(name: 'IPSetSummary')
@@ -403,7 +410,12 @@ module Aws::WAFV2
403
410
  FirewallManagerStatement.add_member(:rule_group_reference_statement, Shapes::ShapeRef.new(shape: RuleGroupReferenceStatement, location_name: "RuleGroupReferenceStatement"))
404
411
  FirewallManagerStatement.struct_class = Types::FirewallManagerStatement
405
412
 
413
+ ForwardedIPConfig.add_member(:header_name, Shapes::ShapeRef.new(shape: ForwardedIPHeaderName, required: true, location_name: "HeaderName"))
414
+ ForwardedIPConfig.add_member(:fallback_behavior, Shapes::ShapeRef.new(shape: FallbackBehavior, required: true, location_name: "FallbackBehavior"))
415
+ ForwardedIPConfig.struct_class = Types::ForwardedIPConfig
416
+
406
417
  GeoMatchStatement.add_member(:country_codes, Shapes::ShapeRef.new(shape: CountryCodes, location_name: "CountryCodes"))
418
+ GeoMatchStatement.add_member(:forwarded_ip_config, Shapes::ShapeRef.new(shape: ForwardedIPConfig, location_name: "ForwardedIPConfig"))
407
419
  GeoMatchStatement.struct_class = Types::GeoMatchStatement
408
420
 
409
421
  GetIPSetRequest.add_member(:name, Shapes::ShapeRef.new(shape: EntityName, required: true, location_name: "Name"))
@@ -506,7 +518,13 @@ module Aws::WAFV2
506
518
  IPSet.add_member(:addresses, Shapes::ShapeRef.new(shape: IPAddresses, required: true, location_name: "Addresses"))
507
519
  IPSet.struct_class = Types::IPSet
508
520
 
521
+ IPSetForwardedIPConfig.add_member(:header_name, Shapes::ShapeRef.new(shape: ForwardedIPHeaderName, required: true, location_name: "HeaderName"))
522
+ IPSetForwardedIPConfig.add_member(:fallback_behavior, Shapes::ShapeRef.new(shape: FallbackBehavior, required: true, location_name: "FallbackBehavior"))
523
+ IPSetForwardedIPConfig.add_member(:position, Shapes::ShapeRef.new(shape: ForwardedIPPosition, required: true, location_name: "Position"))
524
+ IPSetForwardedIPConfig.struct_class = Types::IPSetForwardedIPConfig
525
+
509
526
  IPSetReferenceStatement.add_member(:arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ARN"))
527
+ IPSetReferenceStatement.add_member(:ip_set_forwarded_ip_config, Shapes::ShapeRef.new(shape: IPSetForwardedIPConfig, location_name: "IPSetForwardedIPConfig"))
510
528
  IPSetReferenceStatement.struct_class = Types::IPSetReferenceStatement
511
529
 
512
530
  IPSetSummaries.member = Shapes::ShapeRef.new(shape: IPSetSummary)
@@ -640,6 +658,7 @@ module Aws::WAFV2
640
658
  RateBasedStatement.add_member(:limit, Shapes::ShapeRef.new(shape: RateLimit, required: true, location_name: "Limit"))
641
659
  RateBasedStatement.add_member(:aggregate_key_type, Shapes::ShapeRef.new(shape: RateBasedStatementAggregateKeyType, required: true, location_name: "AggregateKeyType"))
642
660
  RateBasedStatement.add_member(:scope_down_statement, Shapes::ShapeRef.new(shape: Statement, location_name: "ScopeDownStatement"))
661
+ RateBasedStatement.add_member(:forwarded_ip_config, Shapes::ShapeRef.new(shape: ForwardedIPConfig, location_name: "ForwardedIPConfig"))
643
662
  RateBasedStatement.struct_class = Types::RateBasedStatement
644
663
 
645
664
  RateBasedStatementManagedKeysIPSet.add_member(:ip_address_version, Shapes::ShapeRef.new(shape: IPAddressVersion, location_name: "IPAddressVersion"))
@@ -1378,6 +1397,7 @@ module Aws::WAFV2
1378
1397
  o.errors << Shapes::ShapeRef.new(shape: WAFServiceLinkedRoleErrorException)
1379
1398
  o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
1380
1399
  o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
1400
+ o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
1381
1401
  end)
1382
1402
 
1383
1403
  api.add_operation(:put_permission_policy, Seahorse::Model::Operation.new.tap do |o|