aws-sdk-wafv2 1.5.0 → 1.10.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: 2077638b25cf3919dab9362a681e653474f771b027596f490bcec08cb33c2662
4
- data.tar.gz: 2a25517f8ff27ce7db985966ba97013fa065707193c1be8819389dfcb5fb39eb
3
+ metadata.gz: 86839e5ef7b8188cbd682ad1b4d07433a02828162cace3746902bff5dc6b434a
4
+ data.tar.gz: 4edba23c80eb54ad888398826395e1bb603fee69362020cd0e40bf30ad1d989e
5
5
  SHA512:
6
- metadata.gz: aca3d8b7fcd0343bd7df3dd77d336eae5a5c0b103ddfa63aff6afde49240d336cc68346a1a464b2441da003071aa8d4a6760140f0a83b341158e30df0b587221
7
- data.tar.gz: 11cda57e146aff37eddb310c99ed45e389b7a77aba57b2fb5d61aa711dd479076af6c8f5b7feb3f486fddcfdbbe6b8e81e6a02769735ed871d97f5b9e9e08f51
6
+ metadata.gz: e4a6649edae717b23c8bade32e59f9ef532b053a65f4fc7d7b1cacc49842419b3ed13697dea71e5f8ad70decd9a958ca3c0528aae678a1854d2eaeebba29301b
7
+ data.tar.gz: d3f758afc39b310a7bbdb8bec3dc5e047b5c19ee3cb12045ccf76094aab15c19497bf767334b3137f3d186ff3c94d223590151f9f4ba7163c1d0377200892251
@@ -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.5.0'
50
+ GEM_VERSION = '1.10.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
@@ -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
@@ -2069,6 +2112,7 @@ module Aws::WAFV2
2069
2112
  # resp.logging_configuration.redacted_fields #=> Array
2070
2113
  # resp.logging_configuration.redacted_fields[0].single_header.name #=> String
2071
2114
  # resp.logging_configuration.redacted_fields[0].single_query_argument.name #=> String
2115
+ # resp.logging_configuration.managed_by_firewall_manager #=> Boolean
2072
2116
  #
2073
2117
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/GetLoggingConfiguration AWS API Documentation
2074
2118
  #
@@ -2334,10 +2378,15 @@ module Aws::WAFV2
2334
2378
  # 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
2379
  # resp.rule_group.rules[0].statement.geo_match_statement.country_codes #=> Array
2336
2380
  # 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"
2381
+ # resp.rule_group.rules[0].statement.geo_match_statement.forwarded_ip_config.header_name #=> String
2382
+ # resp.rule_group.rules[0].statement.geo_match_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2337
2383
  # resp.rule_group.rules[0].statement.rule_group_reference_statement.arn #=> String
2338
2384
  # resp.rule_group.rules[0].statement.rule_group_reference_statement.excluded_rules #=> Array
2339
2385
  # resp.rule_group.rules[0].statement.rule_group_reference_statement.excluded_rules[0].name #=> String
2340
2386
  # resp.rule_group.rules[0].statement.ip_set_reference_statement.arn #=> String
2387
+ # resp.rule_group.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.header_name #=> String
2388
+ # resp.rule_group.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2389
+ # resp.rule_group.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.position #=> String, one of "FIRST", "LAST", "ANY"
2341
2390
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.arn #=> String
2342
2391
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_header.name #=> String
2343
2392
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_query_argument.name #=> String
@@ -2345,8 +2394,10 @@ module Aws::WAFV2
2345
2394
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.text_transformations[0].priority #=> Integer
2346
2395
  # 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
2396
  # 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"
2397
+ # resp.rule_group.rules[0].statement.rate_based_statement.aggregate_key_type #=> String, one of "IP", "FORWARDED_IP"
2349
2398
  # resp.rule_group.rules[0].statement.rate_based_statement.scope_down_statement #=> Types::Statement
2399
+ # resp.rule_group.rules[0].statement.rate_based_statement.forwarded_ip_config.header_name #=> String
2400
+ # resp.rule_group.rules[0].statement.rate_based_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2350
2401
  # resp.rule_group.rules[0].statement.and_statement.statements #=> Array
2351
2402
  # resp.rule_group.rules[0].statement.and_statement.statements[0] #=> Types::Statement
2352
2403
  # resp.rule_group.rules[0].statement.or_statement.statements #=> Array
@@ -2421,7 +2472,8 @@ module Aws::WAFV2
2421
2472
  # @option params [required, Types::TimeWindow] :time_window
2422
2473
  # The start date and time and the end date and time of the range for
2423
2474
  # which you want `GetSampledRequests` to return a sample of requests.
2424
- # Specify the date and time in the following format:
2475
+ # You must specify the times in Coordinated Universal Time (UTC) format.
2476
+ # UTC format includes the special designator, `Z`. For example,
2425
2477
  # `"2016-09-27T14:50Z"`. You can specify any time range in the previous
2426
2478
  # three hours.
2427
2479
  #
@@ -2562,10 +2614,15 @@ module Aws::WAFV2
2562
2614
  # 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
2615
  # resp.web_acl.rules[0].statement.geo_match_statement.country_codes #=> Array
2564
2616
  # 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"
2617
+ # resp.web_acl.rules[0].statement.geo_match_statement.forwarded_ip_config.header_name #=> String
2618
+ # resp.web_acl.rules[0].statement.geo_match_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2565
2619
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.arn #=> String
2566
2620
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.excluded_rules #=> Array
2567
2621
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.excluded_rules[0].name #=> String
2568
2622
  # resp.web_acl.rules[0].statement.ip_set_reference_statement.arn #=> String
2623
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.header_name #=> String
2624
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2625
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.position #=> String, one of "FIRST", "LAST", "ANY"
2569
2626
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.arn #=> String
2570
2627
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_header.name #=> String
2571
2628
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_query_argument.name #=> String
@@ -2573,8 +2630,10 @@ module Aws::WAFV2
2573
2630
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.text_transformations[0].priority #=> Integer
2574
2631
  # 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
2632
  # 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"
2633
+ # resp.web_acl.rules[0].statement.rate_based_statement.aggregate_key_type #=> String, one of "IP", "FORWARDED_IP"
2577
2634
  # resp.web_acl.rules[0].statement.rate_based_statement.scope_down_statement #=> Types::Statement
2635
+ # resp.web_acl.rules[0].statement.rate_based_statement.forwarded_ip_config.header_name #=> String
2636
+ # resp.web_acl.rules[0].statement.rate_based_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2578
2637
  # resp.web_acl.rules[0].statement.and_statement.statements #=> Array
2579
2638
  # resp.web_acl.rules[0].statement.and_statement.statements[0] #=> Types::Statement
2580
2639
  # resp.web_acl.rules[0].statement.or_statement.statements #=> Array
@@ -2690,10 +2749,15 @@ module Aws::WAFV2
2690
2749
  # 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
2750
  # resp.web_acl.rules[0].statement.geo_match_statement.country_codes #=> Array
2692
2751
  # 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"
2752
+ # resp.web_acl.rules[0].statement.geo_match_statement.forwarded_ip_config.header_name #=> String
2753
+ # resp.web_acl.rules[0].statement.geo_match_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2693
2754
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.arn #=> String
2694
2755
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.excluded_rules #=> Array
2695
2756
  # resp.web_acl.rules[0].statement.rule_group_reference_statement.excluded_rules[0].name #=> String
2696
2757
  # resp.web_acl.rules[0].statement.ip_set_reference_statement.arn #=> String
2758
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.header_name #=> String
2759
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2760
+ # resp.web_acl.rules[0].statement.ip_set_reference_statement.ip_set_forwarded_ip_config.position #=> String, one of "FIRST", "LAST", "ANY"
2697
2761
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.arn #=> String
2698
2762
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_header.name #=> String
2699
2763
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.single_query_argument.name #=> String
@@ -2701,8 +2765,10 @@ module Aws::WAFV2
2701
2765
  # resp.web_acl.rules[0].statement.regex_pattern_set_reference_statement.text_transformations[0].priority #=> Integer
2702
2766
  # 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
2767
  # 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"
2768
+ # resp.web_acl.rules[0].statement.rate_based_statement.aggregate_key_type #=> String, one of "IP", "FORWARDED_IP"
2705
2769
  # resp.web_acl.rules[0].statement.rate_based_statement.scope_down_statement #=> Types::Statement
2770
+ # resp.web_acl.rules[0].statement.rate_based_statement.forwarded_ip_config.header_name #=> String
2771
+ # resp.web_acl.rules[0].statement.rate_based_statement.forwarded_ip_config.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
2706
2772
  # resp.web_acl.rules[0].statement.and_statement.statements #=> Array
2707
2773
  # resp.web_acl.rules[0].statement.and_statement.statements[0] #=> Types::Statement
2708
2774
  # resp.web_acl.rules[0].statement.or_statement.statements #=> Array
@@ -2960,6 +3026,7 @@ module Aws::WAFV2
2960
3026
  # resp.logging_configurations[0].redacted_fields #=> Array
2961
3027
  # resp.logging_configurations[0].redacted_fields[0].single_header.name #=> String
2962
3028
  # resp.logging_configurations[0].redacted_fields[0].single_query_argument.name #=> String
3029
+ # resp.logging_configurations[0].managed_by_firewall_manager #=> Boolean
2963
3030
  # resp.next_marker #=> String
2964
3031
  #
2965
3032
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/ListLoggingConfigurations AWS API Documentation
@@ -3171,7 +3238,16 @@ module Aws::WAFV2
3171
3238
  #
3172
3239
  # </note>
3173
3240
  #
3174
- # Retrieves the TagInfoForResource for the specified resource.
3241
+ # Retrieves the TagInfoForResource for the specified resource. Tags are
3242
+ # key:value pairs that you can use to categorize and manage your
3243
+ # resources, for purposes like billing. For example, you might set the
3244
+ # tag key to "customer" and the value to the customer name or ID. You
3245
+ # can specify one or more tags to add to each AWS resource, up to 50
3246
+ # tags for a resource.
3247
+ #
3248
+ # You can tag the AWS resources that you manage through AWS WAF: web
3249
+ # ACLs, rule groups, IP sets, and regex pattern sets. You can't manage
3250
+ # or view tags through the AWS WAF console.
3175
3251
  #
3176
3252
  #
3177
3253
  #
@@ -3314,6 +3390,9 @@ module Aws::WAFV2
3314
3390
  # you are operating. If you are capturing logs for Amazon
3315
3391
  # CloudFront, always create the firehose in US East (N. Virginia).
3316
3392
  #
3393
+ # Give the data firehose a name that starts with the prefix
3394
+ # `aws-waf-logs-`. For example, `aws-waf-logs-us-east-2-analytics`.
3395
+ #
3317
3396
  # <note markdown="1"> Do not create the data firehose using a `Kinesis stream` as your
3318
3397
  # source.
3319
3398
  #
@@ -3365,6 +3444,7 @@ module Aws::WAFV2
3365
3444
  # },
3366
3445
  # },
3367
3446
  # ],
3447
+ # managed_by_firewall_manager: false,
3368
3448
  # },
3369
3449
  # })
3370
3450
  #
@@ -3376,6 +3456,7 @@ module Aws::WAFV2
3376
3456
  # resp.logging_configuration.redacted_fields #=> Array
3377
3457
  # resp.logging_configuration.redacted_fields[0].single_header.name #=> String
3378
3458
  # resp.logging_configuration.redacted_fields[0].single_query_argument.name #=> String
3459
+ # resp.logging_configuration.managed_by_firewall_manager #=> Boolean
3379
3460
  #
3380
3461
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/PutLoggingConfiguration AWS API Documentation
3381
3462
  #
@@ -3456,10 +3537,15 @@ module Aws::WAFV2
3456
3537
  # </note>
3457
3538
  #
3458
3539
  # 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.
3540
+ # pairs that you can use to categorize and manage your resources, for
3541
+ # purposes like billing. For example, you might set the tag key to
3542
+ # "customer" and the value to the customer name or ID. You can specify
3543
+ # one or more tags to add to each AWS resource, up to 50 tags for a
3544
+ # resource.
3545
+ #
3546
+ # You can tag the AWS resources that you manage through AWS WAF: web
3547
+ # ACLs, rule groups, IP sets, and regex pattern sets. You can't manage
3548
+ # or view tags through the AWS WAF console.
3463
3549
  #
3464
3550
  #
3465
3551
  #
@@ -3919,6 +4005,10 @@ module Aws::WAFV2
3919
4005
  # },
3920
4006
  # geo_match_statement: {
3921
4007
  # 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
4008
+ # forwarded_ip_config: {
4009
+ # header_name: "ForwardedIPHeaderName", # required
4010
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4011
+ # },
3922
4012
  # },
3923
4013
  # rule_group_reference_statement: {
3924
4014
  # arn: "ResourceArn", # required
@@ -3930,6 +4020,11 @@ module Aws::WAFV2
3930
4020
  # },
3931
4021
  # ip_set_reference_statement: {
3932
4022
  # arn: "ResourceArn", # required
4023
+ # ip_set_forwarded_ip_config: {
4024
+ # header_name: "ForwardedIPHeaderName", # required
4025
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4026
+ # position: "FIRST", # required, accepts FIRST, LAST, ANY
4027
+ # },
3933
4028
  # },
3934
4029
  # regex_pattern_set_reference_statement: {
3935
4030
  # arn: "ResourceArn", # required
@@ -3960,10 +4055,14 @@ module Aws::WAFV2
3960
4055
  # },
3961
4056
  # rate_based_statement: {
3962
4057
  # limit: 1, # required
3963
- # aggregate_key_type: "IP", # required, accepts IP
4058
+ # aggregate_key_type: "IP", # required, accepts IP, FORWARDED_IP
3964
4059
  # scope_down_statement: {
3965
4060
  # # recursive Statement
3966
4061
  # },
4062
+ # forwarded_ip_config: {
4063
+ # header_name: "ForwardedIPHeaderName", # required
4064
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4065
+ # },
3967
4066
  # },
3968
4067
  # and_statement: {
3969
4068
  # statements: [ # required
@@ -4241,6 +4340,10 @@ module Aws::WAFV2
4241
4340
  # },
4242
4341
  # geo_match_statement: {
4243
4342
  # 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
4343
+ # forwarded_ip_config: {
4344
+ # header_name: "ForwardedIPHeaderName", # required
4345
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4346
+ # },
4244
4347
  # },
4245
4348
  # rule_group_reference_statement: {
4246
4349
  # arn: "ResourceArn", # required
@@ -4252,6 +4355,11 @@ module Aws::WAFV2
4252
4355
  # },
4253
4356
  # ip_set_reference_statement: {
4254
4357
  # arn: "ResourceArn", # required
4358
+ # ip_set_forwarded_ip_config: {
4359
+ # header_name: "ForwardedIPHeaderName", # required
4360
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4361
+ # position: "FIRST", # required, accepts FIRST, LAST, ANY
4362
+ # },
4255
4363
  # },
4256
4364
  # regex_pattern_set_reference_statement: {
4257
4365
  # arn: "ResourceArn", # required
@@ -4282,10 +4390,14 @@ module Aws::WAFV2
4282
4390
  # },
4283
4391
  # rate_based_statement: {
4284
4392
  # limit: 1, # required
4285
- # aggregate_key_type: "IP", # required, accepts IP
4393
+ # aggregate_key_type: "IP", # required, accepts IP, FORWARDED_IP
4286
4394
  # scope_down_statement: {
4287
4395
  # # recursive Statement
4288
4396
  # },
4397
+ # forwarded_ip_config: {
4398
+ # header_name: "ForwardedIPHeaderName", # required
4399
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
4400
+ # },
4289
4401
  # },
4290
4402
  # and_statement: {
4291
4403
  # statements: [ # required
@@ -4371,7 +4483,7 @@ module Aws::WAFV2
4371
4483
  params: params,
4372
4484
  config: config)
4373
4485
  context[:gem_name] = 'aws-sdk-wafv2'
4374
- context[:gem_version] = '1.5.0'
4486
+ context[:gem_version] = '1.10.0'
4375
4487
  Seahorse::Client::Request.new(handlers, context)
4376
4488
  end
4377
4489
 
@@ -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)
@@ -593,6 +611,7 @@ module Aws::WAFV2
593
611
  LoggingConfiguration.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
594
612
  LoggingConfiguration.add_member(:log_destination_configs, Shapes::ShapeRef.new(shape: LogDestinationConfigs, required: true, location_name: "LogDestinationConfigs"))
595
613
  LoggingConfiguration.add_member(:redacted_fields, Shapes::ShapeRef.new(shape: RedactedFields, location_name: "RedactedFields"))
614
+ LoggingConfiguration.add_member(:managed_by_firewall_manager, Shapes::ShapeRef.new(shape: Boolean, location_name: "ManagedByFirewallManager"))
596
615
  LoggingConfiguration.struct_class = Types::LoggingConfiguration
597
616
 
598
617
  LoggingConfigurations.member = Shapes::ShapeRef.new(shape: LoggingConfiguration)
@@ -640,6 +659,7 @@ module Aws::WAFV2
640
659
  RateBasedStatement.add_member(:limit, Shapes::ShapeRef.new(shape: RateLimit, required: true, location_name: "Limit"))
641
660
  RateBasedStatement.add_member(:aggregate_key_type, Shapes::ShapeRef.new(shape: RateBasedStatementAggregateKeyType, required: true, location_name: "AggregateKeyType"))
642
661
  RateBasedStatement.add_member(:scope_down_statement, Shapes::ShapeRef.new(shape: Statement, location_name: "ScopeDownStatement"))
662
+ RateBasedStatement.add_member(:forwarded_ip_config, Shapes::ShapeRef.new(shape: ForwardedIPConfig, location_name: "ForwardedIPConfig"))
643
663
  RateBasedStatement.struct_class = Types::RateBasedStatement
644
664
 
645
665
  RateBasedStatementManagedKeysIPSet.add_member(:ip_address_version, Shapes::ShapeRef.new(shape: IPAddressVersion, location_name: "IPAddressVersion"))
@@ -1378,6 +1398,7 @@ module Aws::WAFV2
1378
1398
  o.errors << Shapes::ShapeRef.new(shape: WAFServiceLinkedRoleErrorException)
1379
1399
  o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
1380
1400
  o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
1401
+ o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
1381
1402
  end)
1382
1403
 
1383
1404
  api.add_operation(:put_permission_policy, Seahorse::Model::Operation.new.tap do |o|