aws-sdk-wafv2 1.31.0 → 1.35.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.
@@ -352,6 +352,18 @@ module Aws::WAFV2
352
352
  # scope_down_statement: {
353
353
  # # recursive Statement
354
354
  # },
355
+ # managed_rule_group_configs: [
356
+ # {
357
+ # login_path: "LoginPathString",
358
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
359
+ # username_field: {
360
+ # identifier: "FieldIdentifier", # required
361
+ # },
362
+ # password_field: {
363
+ # identifier: "FieldIdentifier", # required
364
+ # },
365
+ # },
366
+ # ],
355
367
  # },
356
368
  # label_match_statement: {
357
369
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -1034,6 +1046,18 @@ module Aws::WAFV2
1034
1046
  # scope_down_statement: {
1035
1047
  # # recursive Statement
1036
1048
  # },
1049
+ # managed_rule_group_configs: [
1050
+ # {
1051
+ # login_path: "LoginPathString",
1052
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
1053
+ # username_field: {
1054
+ # identifier: "FieldIdentifier", # required
1055
+ # },
1056
+ # password_field: {
1057
+ # identifier: "FieldIdentifier", # required
1058
+ # },
1059
+ # },
1060
+ # ],
1037
1061
  # },
1038
1062
  # label_match_statement: {
1039
1063
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -1715,6 +1739,18 @@ module Aws::WAFV2
1715
1739
  # scope_down_statement: {
1716
1740
  # # recursive Statement
1717
1741
  # },
1742
+ # managed_rule_group_configs: [
1743
+ # {
1744
+ # login_path: "LoginPathString",
1745
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
1746
+ # username_field: {
1747
+ # identifier: "FieldIdentifier", # required
1748
+ # },
1749
+ # password_field: {
1750
+ # identifier: "FieldIdentifier", # required
1751
+ # },
1752
+ # },
1753
+ # ],
1718
1754
  # },
1719
1755
  # label_match_statement: {
1720
1756
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -2242,6 +2278,18 @@ module Aws::WAFV2
2242
2278
  # scope_down_statement: {
2243
2279
  # # recursive Statement
2244
2280
  # },
2281
+ # managed_rule_group_configs: [
2282
+ # {
2283
+ # login_path: "LoginPathString",
2284
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
2285
+ # username_field: {
2286
+ # identifier: "FieldIdentifier", # required
2287
+ # },
2288
+ # password_field: {
2289
+ # identifier: "FieldIdentifier", # required
2290
+ # },
2291
+ # },
2292
+ # ],
2245
2293
  # },
2246
2294
  # label_match_statement: {
2247
2295
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -3605,6 +3653,44 @@ module Aws::WAFV2
3605
3653
  include Aws::Structure
3606
3654
  end
3607
3655
 
3656
+ # @note When making an API call, you may pass GenerateMobileSdkReleaseUrlRequest
3657
+ # data as a hash:
3658
+ #
3659
+ # {
3660
+ # platform: "IOS", # required, accepts IOS, ANDROID
3661
+ # release_version: "VersionKeyString", # required
3662
+ # }
3663
+ #
3664
+ # @!attribute [rw] platform
3665
+ # The device platform.
3666
+ # @return [String]
3667
+ #
3668
+ # @!attribute [rw] release_version
3669
+ # The release version. For the latest available version, specify
3670
+ # `LATEST`.
3671
+ # @return [String]
3672
+ #
3673
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/GenerateMobileSdkReleaseUrlRequest AWS API Documentation
3674
+ #
3675
+ class GenerateMobileSdkReleaseUrlRequest < Struct.new(
3676
+ :platform,
3677
+ :release_version)
3678
+ SENSITIVE = []
3679
+ include Aws::Structure
3680
+ end
3681
+
3682
+ # @!attribute [rw] url
3683
+ # The presigned download URL for the specified SDK release.
3684
+ # @return [String]
3685
+ #
3686
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/GenerateMobileSdkReleaseUrlResponse AWS API Documentation
3687
+ #
3688
+ class GenerateMobileSdkReleaseUrlResponse < Struct.new(
3689
+ :url)
3690
+ SENSITIVE = []
3691
+ include Aws::Structure
3692
+ end
3693
+
3608
3694
  # A rule statement used to identify web requests based on country of
3609
3695
  # origin.
3610
3696
  #
@@ -3820,6 +3906,45 @@ module Aws::WAFV2
3820
3906
  include Aws::Structure
3821
3907
  end
3822
3908
 
3909
+ # @note When making an API call, you may pass GetMobileSdkReleaseRequest
3910
+ # data as a hash:
3911
+ #
3912
+ # {
3913
+ # platform: "IOS", # required, accepts IOS, ANDROID
3914
+ # release_version: "VersionKeyString", # required
3915
+ # }
3916
+ #
3917
+ # @!attribute [rw] platform
3918
+ # The device platform.
3919
+ # @return [String]
3920
+ #
3921
+ # @!attribute [rw] release_version
3922
+ # The release version. For the latest available version, specify
3923
+ # `LATEST`.
3924
+ # @return [String]
3925
+ #
3926
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/GetMobileSdkReleaseRequest AWS API Documentation
3927
+ #
3928
+ class GetMobileSdkReleaseRequest < Struct.new(
3929
+ :platform,
3930
+ :release_version)
3931
+ SENSITIVE = []
3932
+ include Aws::Structure
3933
+ end
3934
+
3935
+ # @!attribute [rw] mobile_sdk_release
3936
+ # Information for a specified SDK release, including release notes and
3937
+ # tags.
3938
+ # @return [Types::MobileSdkRelease]
3939
+ #
3940
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/GetMobileSdkReleaseResponse AWS API Documentation
3941
+ #
3942
+ class GetMobileSdkReleaseResponse < Struct.new(
3943
+ :mobile_sdk_release)
3944
+ SENSITIVE = []
3945
+ include Aws::Structure
3946
+ end
3947
+
3823
3948
  # @note When making an API call, you may pass GetPermissionPolicyRequest
3824
3949
  # data as a hash:
3825
3950
  #
@@ -4269,11 +4394,26 @@ module Aws::WAFV2
4269
4394
  # that operation.
4270
4395
  # @return [String]
4271
4396
  #
4397
+ # @!attribute [rw] application_integration_url
4398
+ # The URL to use in SDK integrations with Amazon Web Services managed
4399
+ # rule groups. For example, you can use the integration SDKs with the
4400
+ # account takeover prevention managed rule group
4401
+ # `AWSManagedRulesATPRuleSet`. This is only populated if you are using
4402
+ # a rule group in your web ACL that integrates with your applications
4403
+ # in this way. For more information, see [WAF application
4404
+ # integration][1] in the *WAF Developer Guide*.
4405
+ #
4406
+ #
4407
+ #
4408
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-application-integration.html
4409
+ # @return [String]
4410
+ #
4272
4411
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/GetWebACLResponse AWS API Documentation
4273
4412
  #
4274
4413
  class GetWebACLResponse < Struct.new(
4275
4414
  :web_acl,
4276
- :lock_token)
4415
+ :lock_token,
4416
+ :application_integration_url)
4277
4417
  SENSITIVE = []
4278
4418
  include Aws::Structure
4279
4419
  end
@@ -5257,6 +5397,65 @@ module Aws::WAFV2
5257
5397
  include Aws::Structure
5258
5398
  end
5259
5399
 
5400
+ # @note When making an API call, you may pass ListMobileSdkReleasesRequest
5401
+ # data as a hash:
5402
+ #
5403
+ # {
5404
+ # platform: "IOS", # required, accepts IOS, ANDROID
5405
+ # next_marker: "NextMarker",
5406
+ # limit: 1,
5407
+ # }
5408
+ #
5409
+ # @!attribute [rw] platform
5410
+ # The device platform to retrieve the list for.
5411
+ # @return [String]
5412
+ #
5413
+ # @!attribute [rw] next_marker
5414
+ # When you request a list of objects with a `Limit` setting, if the
5415
+ # number of objects that are still available for retrieval exceeds the
5416
+ # limit, WAF returns a `NextMarker` value in the response. To retrieve
5417
+ # the next batch of objects, provide the marker from the prior call in
5418
+ # your next request.
5419
+ # @return [String]
5420
+ #
5421
+ # @!attribute [rw] limit
5422
+ # The maximum number of objects that you want WAF to return for this
5423
+ # request. If more objects are available, in the response, WAF
5424
+ # provides a `NextMarker` value that you can use in a subsequent call
5425
+ # to get the next batch of objects.
5426
+ # @return [Integer]
5427
+ #
5428
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/ListMobileSdkReleasesRequest AWS API Documentation
5429
+ #
5430
+ class ListMobileSdkReleasesRequest < Struct.new(
5431
+ :platform,
5432
+ :next_marker,
5433
+ :limit)
5434
+ SENSITIVE = []
5435
+ include Aws::Structure
5436
+ end
5437
+
5438
+ # @!attribute [rw] release_summaries
5439
+ # High level information for the available SDK releases.
5440
+ # @return [Array<Types::ReleaseSummary>]
5441
+ #
5442
+ # @!attribute [rw] next_marker
5443
+ # When you request a list of objects with a `Limit` setting, if the
5444
+ # number of objects that are still available for retrieval exceeds the
5445
+ # limit, WAF returns a `NextMarker` value in the response. To retrieve
5446
+ # the next batch of objects, provide the marker from the prior call in
5447
+ # your next request.
5448
+ # @return [String]
5449
+ #
5450
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/ListMobileSdkReleasesResponse AWS API Documentation
5451
+ #
5452
+ class ListMobileSdkReleasesResponse < Struct.new(
5453
+ :release_summaries,
5454
+ :next_marker)
5455
+ SENSITIVE = []
5456
+ include Aws::Structure
5457
+ end
5458
+
5260
5459
  # @note When making an API call, you may pass ListRegexPatternSetsRequest
5261
5460
  # data as a hash:
5262
5461
  #
@@ -5726,6 +5925,56 @@ module Aws::WAFV2
5726
5925
  include Aws::Structure
5727
5926
  end
5728
5927
 
5928
+ # Additional information that's used by a managed rule group. Most
5929
+ # managed rule groups don't require this.
5930
+ #
5931
+ # Use this for the account takeover prevention managed rule group
5932
+ # `AWSManagedRulesATPRuleSet`, to provide information about the sign-in
5933
+ # page of your application.
5934
+ #
5935
+ # @note When making an API call, you may pass ManagedRuleGroupConfig
5936
+ # data as a hash:
5937
+ #
5938
+ # {
5939
+ # login_path: "LoginPathString",
5940
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
5941
+ # username_field: {
5942
+ # identifier: "FieldIdentifier", # required
5943
+ # },
5944
+ # password_field: {
5945
+ # identifier: "FieldIdentifier", # required
5946
+ # },
5947
+ # }
5948
+ #
5949
+ # @!attribute [rw] login_path
5950
+ # The login endpoint for your application. For example
5951
+ # `https://example.com/web/login`.
5952
+ # @return [String]
5953
+ #
5954
+ # @!attribute [rw] payload_type
5955
+ # The payload type for your login endpoint, either JSON or form
5956
+ # encoded.
5957
+ # @return [String]
5958
+ #
5959
+ # @!attribute [rw] username_field
5960
+ # Details about your login page username field.
5961
+ # @return [Types::UsernameField]
5962
+ #
5963
+ # @!attribute [rw] password_field
5964
+ # Details about your login page password field.
5965
+ # @return [Types::PasswordField]
5966
+ #
5967
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/ManagedRuleGroupConfig AWS API Documentation
5968
+ #
5969
+ class ManagedRuleGroupConfig < Struct.new(
5970
+ :login_path,
5971
+ :payload_type,
5972
+ :username_field,
5973
+ :password_field)
5974
+ SENSITIVE = []
5975
+ include Aws::Structure
5976
+ end
5977
+
5729
5978
  # A rule statement used to run the rules that are defined in a managed
5730
5979
  # rule group. To use this, provide the vendor name and the name of the
5731
5980
  # rule group in this statement. You can retrieve the required names by
@@ -5993,6 +6242,18 @@ module Aws::WAFV2
5993
6242
  # scope_down_statement: {
5994
6243
  # # recursive Statement
5995
6244
  # },
6245
+ # managed_rule_group_configs: [
6246
+ # {
6247
+ # login_path: "LoginPathString",
6248
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
6249
+ # username_field: {
6250
+ # identifier: "FieldIdentifier", # required
6251
+ # },
6252
+ # password_field: {
6253
+ # identifier: "FieldIdentifier", # required
6254
+ # },
6255
+ # },
6256
+ # ],
5996
6257
  # },
5997
6258
  # label_match_statement: {
5998
6259
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -6035,6 +6296,18 @@ module Aws::WAFV2
6035
6296
  # ],
6036
6297
  # },
6037
6298
  # },
6299
+ # managed_rule_group_configs: [
6300
+ # {
6301
+ # login_path: "LoginPathString",
6302
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
6303
+ # username_field: {
6304
+ # identifier: "FieldIdentifier", # required
6305
+ # },
6306
+ # password_field: {
6307
+ # identifier: "FieldIdentifier", # required
6308
+ # },
6309
+ # },
6310
+ # ],
6038
6311
  # }
6039
6312
  #
6040
6313
  # @!attribute [rw] vendor_name
@@ -6072,6 +6345,15 @@ module Aws::WAFV2
6072
6345
  # can for a rule statement.
6073
6346
  # @return [Types::Statement]
6074
6347
  #
6348
+ # @!attribute [rw] managed_rule_group_configs
6349
+ # Additional information that's used by a managed rule group. Most
6350
+ # managed rule groups don't require this.
6351
+ #
6352
+ # Use this for the account takeover prevention managed rule group
6353
+ # `AWSManagedRulesATPRuleSet`, to provide information about the
6354
+ # sign-in page of your application.
6355
+ # @return [Array<Types::ManagedRuleGroupConfig>]
6356
+ #
6075
6357
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/ManagedRuleGroupStatement AWS API Documentation
6076
6358
  #
6077
6359
  class ManagedRuleGroupStatement < Struct.new(
@@ -6079,7 +6361,8 @@ module Aws::WAFV2
6079
6361
  :name,
6080
6362
  :version,
6081
6363
  :excluded_rules,
6082
- :scope_down_statement)
6364
+ :scope_down_statement,
6365
+ :managed_rule_group_configs)
6083
6366
  SENSITIVE = []
6084
6367
  include Aws::Structure
6085
6368
  end
@@ -6382,6 +6665,41 @@ module Aws::WAFV2
6382
6665
  #
6383
6666
  class Method < Aws::EmptyStructure; end
6384
6667
 
6668
+ # Information for a release of the mobile SDK, including release notes
6669
+ # and tags.
6670
+ #
6671
+ # The mobile SDK is not generally available. Customers who have access
6672
+ # to the mobile SDK can use it to establish and manage Security Token
6673
+ # Service (STS) security tokens for use in HTTP(S) requests from a
6674
+ # mobile device to WAF.
6675
+ #
6676
+ # @!attribute [rw] release_version
6677
+ # The release version.
6678
+ # @return [String]
6679
+ #
6680
+ # @!attribute [rw] timestamp
6681
+ # The timestamp of the release.
6682
+ # @return [Time]
6683
+ #
6684
+ # @!attribute [rw] release_notes
6685
+ # Notes describing the release.
6686
+ # @return [String]
6687
+ #
6688
+ # @!attribute [rw] tags
6689
+ # Tags that are associated with the release.
6690
+ # @return [Array<Types::Tag>]
6691
+ #
6692
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/MobileSdkRelease AWS API Documentation
6693
+ #
6694
+ class MobileSdkRelease < Struct.new(
6695
+ :release_version,
6696
+ :timestamp,
6697
+ :release_notes,
6698
+ :tags)
6699
+ SENSITIVE = []
6700
+ include Aws::Structure
6701
+ end
6702
+
6385
6703
  # Specifies that WAF should do nothing. This is used for the
6386
6704
  # `OverrideAction` setting on a Rule when the rule uses a rule group
6387
6705
  # reference statement.
@@ -6650,6 +6968,18 @@ module Aws::WAFV2
6650
6968
  # scope_down_statement: {
6651
6969
  # # recursive Statement
6652
6970
  # },
6971
+ # managed_rule_group_configs: [
6972
+ # {
6973
+ # login_path: "LoginPathString",
6974
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
6975
+ # username_field: {
6976
+ # identifier: "FieldIdentifier", # required
6977
+ # },
6978
+ # password_field: {
6979
+ # identifier: "FieldIdentifier", # required
6980
+ # },
6981
+ # },
6982
+ # ],
6653
6983
  # },
6654
6984
  # label_match_statement: {
6655
6985
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -6957,6 +7287,18 @@ module Aws::WAFV2
6957
7287
  # scope_down_statement: {
6958
7288
  # # recursive Statement
6959
7289
  # },
7290
+ # managed_rule_group_configs: [
7291
+ # {
7292
+ # login_path: "LoginPathString",
7293
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
7294
+ # username_field: {
7295
+ # identifier: "FieldIdentifier", # required
7296
+ # },
7297
+ # password_field: {
7298
+ # identifier: "FieldIdentifier", # required
7299
+ # },
7300
+ # },
7301
+ # ],
6960
7302
  # },
6961
7303
  # label_match_statement: {
6962
7304
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -7073,6 +7415,28 @@ module Aws::WAFV2
7073
7415
  include Aws::Structure
7074
7416
  end
7075
7417
 
7418
+ # Details about your login page password field, used in a
7419
+ # `ManagedRuleGroupConfig`.
7420
+ #
7421
+ # @note When making an API call, you may pass PasswordField
7422
+ # data as a hash:
7423
+ #
7424
+ # {
7425
+ # identifier: "FieldIdentifier", # required
7426
+ # }
7427
+ #
7428
+ # @!attribute [rw] identifier
7429
+ # The name of the password field. For example `/form/password`.
7430
+ # @return [String]
7431
+ #
7432
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/PasswordField AWS API Documentation
7433
+ #
7434
+ class PasswordField < Struct.new(
7435
+ :identifier)
7436
+ SENSITIVE = []
7437
+ include Aws::Structure
7438
+ end
7439
+
7076
7440
  # @note When making an API call, you may pass PutLoggingConfigurationRequest
7077
7441
  # data as a hash:
7078
7442
  #
@@ -7615,6 +7979,18 @@ module Aws::WAFV2
7615
7979
  # scope_down_statement: {
7616
7980
  # # recursive Statement
7617
7981
  # },
7982
+ # managed_rule_group_configs: [
7983
+ # {
7984
+ # login_path: "LoginPathString",
7985
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
7986
+ # username_field: {
7987
+ # identifier: "FieldIdentifier", # required
7988
+ # },
7989
+ # password_field: {
7990
+ # identifier: "FieldIdentifier", # required
7991
+ # },
7992
+ # },
7993
+ # ],
7618
7994
  # },
7619
7995
  # label_match_statement: {
7620
7996
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -7998,6 +8374,25 @@ module Aws::WAFV2
7998
8374
  include Aws::Structure
7999
8375
  end
8000
8376
 
8377
+ # High level information for an SDK release.
8378
+ #
8379
+ # @!attribute [rw] release_version
8380
+ # The release version.
8381
+ # @return [String]
8382
+ #
8383
+ # @!attribute [rw] timestamp
8384
+ # The timestamp of the release.
8385
+ # @return [Time]
8386
+ #
8387
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/ReleaseSummary AWS API Documentation
8388
+ #
8389
+ class ReleaseSummary < Struct.new(
8390
+ :release_version,
8391
+ :timestamp)
8392
+ SENSITIVE = []
8393
+ include Aws::Structure
8394
+ end
8395
+
8001
8396
  # A single rule, which you can use in a WebACL or RuleGroup to identify
8002
8397
  # web requests that you want to allow, block, or count. Each rule
8003
8398
  # includes one top-level Statement that WAF uses to identify matching
@@ -8255,6 +8650,18 @@ module Aws::WAFV2
8255
8650
  # scope_down_statement: {
8256
8651
  # # recursive Statement
8257
8652
  # },
8653
+ # managed_rule_group_configs: [
8654
+ # {
8655
+ # login_path: "LoginPathString",
8656
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
8657
+ # username_field: {
8658
+ # identifier: "FieldIdentifier", # required
8659
+ # },
8660
+ # password_field: {
8661
+ # identifier: "FieldIdentifier", # required
8662
+ # },
8663
+ # },
8664
+ # ],
8258
8665
  # },
8259
8666
  # label_match_statement: {
8260
8667
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -9535,6 +9942,18 @@ module Aws::WAFV2
9535
9942
  # scope_down_statement: {
9536
9943
  # # recursive Statement
9537
9944
  # },
9945
+ # managed_rule_group_configs: [
9946
+ # {
9947
+ # login_path: "LoginPathString",
9948
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
9949
+ # username_field: {
9950
+ # identifier: "FieldIdentifier", # required
9951
+ # },
9952
+ # password_field: {
9953
+ # identifier: "FieldIdentifier", # required
9954
+ # },
9955
+ # },
9956
+ # ],
9538
9957
  # },
9539
9958
  # label_match_statement: {
9540
9959
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -9824,6 +10243,18 @@ module Aws::WAFV2
9824
10243
  # scope_down_statement: {
9825
10244
  # # recursive Statement
9826
10245
  # },
10246
+ # managed_rule_group_configs: [
10247
+ # {
10248
+ # login_path: "LoginPathString",
10249
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
10250
+ # username_field: {
10251
+ # identifier: "FieldIdentifier", # required
10252
+ # },
10253
+ # password_field: {
10254
+ # identifier: "FieldIdentifier", # required
10255
+ # },
10256
+ # },
10257
+ # ],
9827
10258
  # },
9828
10259
  # label_match_statement: {
9829
10260
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -10110,6 +10541,18 @@ module Aws::WAFV2
10110
10541
  # scope_down_statement: {
10111
10542
  # # recursive Statement
10112
10543
  # },
10544
+ # managed_rule_group_configs: [
10545
+ # {
10546
+ # login_path: "LoginPathString",
10547
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
10548
+ # username_field: {
10549
+ # identifier: "FieldIdentifier", # required
10550
+ # },
10551
+ # password_field: {
10552
+ # identifier: "FieldIdentifier", # required
10553
+ # },
10554
+ # },
10555
+ # ],
10113
10556
  # },
10114
10557
  # label_match_statement: {
10115
10558
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -10399,6 +10842,18 @@ module Aws::WAFV2
10399
10842
  # scope_down_statement: {
10400
10843
  # # recursive Statement
10401
10844
  # },
10845
+ # managed_rule_group_configs: [
10846
+ # {
10847
+ # login_path: "LoginPathString",
10848
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
10849
+ # username_field: {
10850
+ # identifier: "FieldIdentifier", # required
10851
+ # },
10852
+ # password_field: {
10853
+ # identifier: "FieldIdentifier", # required
10854
+ # },
10855
+ # },
10856
+ # ],
10402
10857
  # },
10403
10858
  # label_match_statement: {
10404
10859
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -10729,6 +11184,18 @@ module Aws::WAFV2
10729
11184
  # ],
10730
11185
  # },
10731
11186
  # },
11187
+ # managed_rule_group_configs: [
11188
+ # {
11189
+ # login_path: "LoginPathString",
11190
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
11191
+ # username_field: {
11192
+ # identifier: "FieldIdentifier", # required
11193
+ # },
11194
+ # password_field: {
11195
+ # identifier: "FieldIdentifier", # required
11196
+ # },
11197
+ # },
11198
+ # ],
10732
11199
  # },
10733
11200
  # label_match_statement: {
10734
11201
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -11894,6 +12361,18 @@ module Aws::WAFV2
11894
12361
  # scope_down_statement: {
11895
12362
  # # recursive Statement
11896
12363
  # },
12364
+ # managed_rule_group_configs: [
12365
+ # {
12366
+ # login_path: "LoginPathString",
12367
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
12368
+ # username_field: {
12369
+ # identifier: "FieldIdentifier", # required
12370
+ # },
12371
+ # password_field: {
12372
+ # identifier: "FieldIdentifier", # required
12373
+ # },
12374
+ # },
12375
+ # ],
11897
12376
  # },
11898
12377
  # label_match_statement: {
11899
12378
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -12411,6 +12890,18 @@ module Aws::WAFV2
12411
12890
  # scope_down_statement: {
12412
12891
  # # recursive Statement
12413
12892
  # },
12893
+ # managed_rule_group_configs: [
12894
+ # {
12895
+ # login_path: "LoginPathString",
12896
+ # payload_type: "JSON", # accepts JSON, FORM_ENCODED
12897
+ # username_field: {
12898
+ # identifier: "FieldIdentifier", # required
12899
+ # },
12900
+ # password_field: {
12901
+ # identifier: "FieldIdentifier", # required
12902
+ # },
12903
+ # },
12904
+ # ],
12414
12905
  # },
12415
12906
  # label_match_statement: {
12416
12907
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
@@ -12679,6 +13170,28 @@ module Aws::WAFV2
12679
13170
  #
12680
13171
  class UriPath < Aws::EmptyStructure; end
12681
13172
 
13173
+ # Details about your login page username field, used in a
13174
+ # `ManagedRuleGroupConfig`.
13175
+ #
13176
+ # @note When making an API call, you may pass UsernameField
13177
+ # data as a hash:
13178
+ #
13179
+ # {
13180
+ # identifier: "FieldIdentifier", # required
13181
+ # }
13182
+ #
13183
+ # @!attribute [rw] identifier
13184
+ # The name of the username field. For example `/form/username`.
13185
+ # @return [String]
13186
+ #
13187
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/UsernameField AWS API Documentation
13188
+ #
13189
+ class UsernameField < Struct.new(
13190
+ :identifier)
13191
+ SENSITIVE = []
13192
+ include Aws::Structure
13193
+ end
13194
+
12682
13195
  # A version of the named managed rule group, that the rule group's
12683
13196
  # vendor publishes for use by customers.
12684
13197
  #