aws-sdk-networkfirewall 1.101.0 → 1.102.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9cf1b16591a00d56cdc829c2b68811a21f067fffa335e2d8fa8af8e992a73c9c
4
- data.tar.gz: 02ea0ab221a83cafe5a9325b757082fd63c28116568e3860efd9ad0e57188877
3
+ metadata.gz: 8d95481e84999a06af3f932e14065ec9bcc5d3a37eb1fcfd22d9090fe8200fdc
4
+ data.tar.gz: db9012f7dbdd99d0fda7252f276f5911e5f54f15a1164de5047c6c88c076a210
5
5
  SHA512:
6
- metadata.gz: 2cb6381ece5ab3ca33b2d4a5399a2cc6a970b841a16b6758d171be2b089485d275aab746efb12957b472b21ad7fd7e765b282ea209c88a08358bf6ab889bafe3
7
- data.tar.gz: 93e989ac12407ac2a3af45b8dd3728ceb93fc87783ae407d99f63373d129a9ba84460ba2cbb7a9ced7fd806758c52f7dfb7ea430fec381257866cb8eb438bae8
6
+ metadata.gz: 6cfc7df260b361d403dbe64068bb3f3316beea454f69c6dc9e5f71602337462559f4e9cd81168e10c70771a71fc3dd22c5b728acd12523652199fe88105b718d
7
+ data.tar.gz: bedeea5a8b525d9e8499f51bcce511ce64db1395d2281120c972c4e75c966b878bbb76b1c49b1f740b01b86d4ff61828cefaa8116387cfc6561145e26c7408c6
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.102.0 (2026-10-21)
5
+ ------------------
6
+
7
+ * Feature - Adds support for Network Firewall Resolved IP validation.
8
+
4
9
  1.101.0 (2026-10-20)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.101.0
1
+ 1.102.0
@@ -1331,6 +1331,21 @@ module Aws::NetworkFirewall
1331
1331
  # },
1332
1332
  # },
1333
1333
  # enable_tls_session_holding: false,
1334
+ # route_53_resolved_ip_validation: {
1335
+ # action: "REJECT", # required, accepts REJECT, DROP, ALERT
1336
+ # dns_firewall_rule_group_id: "DNSFirewallRuleGroupId", # required
1337
+ # dns_expiry_exception_policy: "REJECT", # required, accepts REJECT, DROP, CONTINUE
1338
+ # bypass_destination_validation_ip_ranges: [
1339
+ # {
1340
+ # address_definition: "AddressDefinition", # required
1341
+ # },
1342
+ # ],
1343
+ # source_ip_ranges: [
1344
+ # {
1345
+ # address_definition: "AddressDefinition", # required
1346
+ # },
1347
+ # ],
1348
+ # },
1334
1349
  # },
1335
1350
  # description: "Description",
1336
1351
  # tags: [
@@ -1353,7 +1368,8 @@ module Aws::NetworkFirewall
1353
1368
  # resp.firewall_policy_response.firewall_policy_arn #=> String
1354
1369
  # resp.firewall_policy_response.firewall_policy_id #=> String
1355
1370
  # resp.firewall_policy_response.description #=> String
1356
- # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
1371
+ # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
1372
+ # resp.firewall_policy_response.status_message #=> String
1357
1373
  # resp.firewall_policy_response.tags #=> Array
1358
1374
  # resp.firewall_policy_response.tags[0].key #=> String
1359
1375
  # resp.firewall_policy_response.tags[0].value #=> String
@@ -1363,6 +1379,10 @@ module Aws::NetworkFirewall
1363
1379
  # resp.firewall_policy_response.number_of_associations #=> Integer
1364
1380
  # resp.firewall_policy_response.encryption_configuration.key_id #=> String
1365
1381
  # resp.firewall_policy_response.encryption_configuration.type #=> String, one of "CUSTOMER_KMS", "AWS_OWNED_KMS_KEY"
1382
+ # resp.firewall_policy_response.errors #=> Array
1383
+ # resp.firewall_policy_response.errors[0].code #=> String, one of "DNS_FIREWALL_RULE_GROUP_UNAVAILABLE", "ROUTE53_RESOLVED_IP_VALIDATION_MISSING"
1384
+ # resp.firewall_policy_response.errors[0].message #=> String
1385
+ # resp.firewall_policy_response.errors[0].resource_id #=> String
1366
1386
  # resp.firewall_policy_response.last_modified_time #=> Time
1367
1387
  #
1368
1388
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/CreateFirewallPolicy AWS API Documentation
@@ -2004,7 +2024,7 @@ module Aws::NetworkFirewall
2004
2024
  # rules_string: "RulesString",
2005
2025
  # rules_source_list: {
2006
2026
  # targets: ["CollectionMember_String"], # required
2007
- # target_types: ["TLS_SNI"], # required, accepts TLS_SNI, HTTP_HOST
2027
+ # target_types: ["TLS_SNI"], # required, accepts TLS_SNI, HTTP_HOST, AWS_ROUTE_53_RESOLVED_DOMAIN
2008
2028
  # generated_rules_type: "ALLOWLIST", # required, accepts ALLOWLIST, DENYLIST, REJECTLIST, ALERTLIST
2009
2029
  # },
2010
2030
  # stateful_rules: [
@@ -2120,7 +2140,7 @@ module Aws::NetworkFirewall
2120
2140
  # resp.rule_group_response.description #=> String
2121
2141
  # resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN"
2122
2142
  # resp.rule_group_response.capacity #=> Integer
2123
- # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
2143
+ # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
2124
2144
  # resp.rule_group_response.tags #=> Array
2125
2145
  # resp.rule_group_response.tags[0].key #=> String
2126
2146
  # resp.rule_group_response.tags[0].value #=> String
@@ -2299,7 +2319,7 @@ module Aws::NetworkFirewall
2299
2319
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_arn #=> String
2300
2320
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_name #=> String
2301
2321
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_id #=> String
2302
- # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
2322
+ # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
2303
2323
  # resp.tls_inspection_configuration_response.description #=> String
2304
2324
  # resp.tls_inspection_configuration_response.tags #=> Array
2305
2325
  # resp.tls_inspection_configuration_response.tags[0].key #=> String
@@ -2588,7 +2608,8 @@ module Aws::NetworkFirewall
2588
2608
  # resp.firewall_policy_response.firewall_policy_arn #=> String
2589
2609
  # resp.firewall_policy_response.firewall_policy_id #=> String
2590
2610
  # resp.firewall_policy_response.description #=> String
2591
- # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
2611
+ # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
2612
+ # resp.firewall_policy_response.status_message #=> String
2592
2613
  # resp.firewall_policy_response.tags #=> Array
2593
2614
  # resp.firewall_policy_response.tags[0].key #=> String
2594
2615
  # resp.firewall_policy_response.tags[0].value #=> String
@@ -2598,6 +2619,10 @@ module Aws::NetworkFirewall
2598
2619
  # resp.firewall_policy_response.number_of_associations #=> Integer
2599
2620
  # resp.firewall_policy_response.encryption_configuration.key_id #=> String
2600
2621
  # resp.firewall_policy_response.encryption_configuration.type #=> String, one of "CUSTOMER_KMS", "AWS_OWNED_KMS_KEY"
2622
+ # resp.firewall_policy_response.errors #=> Array
2623
+ # resp.firewall_policy_response.errors[0].code #=> String, one of "DNS_FIREWALL_RULE_GROUP_UNAVAILABLE", "ROUTE53_RESOLVED_IP_VALIDATION_MISSING"
2624
+ # resp.firewall_policy_response.errors[0].message #=> String
2625
+ # resp.firewall_policy_response.errors[0].resource_id #=> String
2601
2626
  # resp.firewall_policy_response.last_modified_time #=> Time
2602
2627
  #
2603
2628
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DeleteFirewallPolicy AWS API Documentation
@@ -2916,7 +2941,7 @@ module Aws::NetworkFirewall
2916
2941
  # resp.rule_group_response.description #=> String
2917
2942
  # resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN"
2918
2943
  # resp.rule_group_response.capacity #=> Integer
2919
- # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
2944
+ # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
2920
2945
  # resp.rule_group_response.tags #=> Array
2921
2946
  # resp.rule_group_response.tags[0].key #=> String
2922
2947
  # resp.rule_group_response.tags[0].value #=> String
@@ -2974,7 +2999,7 @@ module Aws::NetworkFirewall
2974
2999
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_arn #=> String
2975
3000
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_name #=> String
2976
3001
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_id #=> String
2977
- # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
3002
+ # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
2978
3003
  # resp.tls_inspection_configuration_response.description #=> String
2979
3004
  # resp.tls_inspection_configuration_response.tags #=> Array
2980
3005
  # resp.tls_inspection_configuration_response.tags[0].key #=> String
@@ -3286,7 +3311,8 @@ module Aws::NetworkFirewall
3286
3311
  # resp.firewall_policy_response.firewall_policy_arn #=> String
3287
3312
  # resp.firewall_policy_response.firewall_policy_id #=> String
3288
3313
  # resp.firewall_policy_response.description #=> String
3289
- # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
3314
+ # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
3315
+ # resp.firewall_policy_response.status_message #=> String
3290
3316
  # resp.firewall_policy_response.tags #=> Array
3291
3317
  # resp.firewall_policy_response.tags[0].key #=> String
3292
3318
  # resp.firewall_policy_response.tags[0].value #=> String
@@ -3296,6 +3322,10 @@ module Aws::NetworkFirewall
3296
3322
  # resp.firewall_policy_response.number_of_associations #=> Integer
3297
3323
  # resp.firewall_policy_response.encryption_configuration.key_id #=> String
3298
3324
  # resp.firewall_policy_response.encryption_configuration.type #=> String, one of "CUSTOMER_KMS", "AWS_OWNED_KMS_KEY"
3325
+ # resp.firewall_policy_response.errors #=> Array
3326
+ # resp.firewall_policy_response.errors[0].code #=> String, one of "DNS_FIREWALL_RULE_GROUP_UNAVAILABLE", "ROUTE53_RESOLVED_IP_VALIDATION_MISSING"
3327
+ # resp.firewall_policy_response.errors[0].message #=> String
3328
+ # resp.firewall_policy_response.errors[0].resource_id #=> String
3299
3329
  # resp.firewall_policy_response.last_modified_time #=> Time
3300
3330
  # resp.firewall_policy.stateless_rule_group_references #=> Array
3301
3331
  # resp.firewall_policy.stateless_rule_group_references[0].resource_arn #=> String
@@ -3323,6 +3353,18 @@ module Aws::NetworkFirewall
3323
3353
  # resp.firewall_policy.policy_variables.rule_variables["RuleVariableName"].definition #=> Array
3324
3354
  # resp.firewall_policy.policy_variables.rule_variables["RuleVariableName"].definition[0] #=> String
3325
3355
  # resp.firewall_policy.enable_tls_session_holding #=> Boolean
3356
+ # resp.firewall_policy.route_53_resolved_ip_validation.action #=> String, one of "REJECT", "DROP", "ALERT"
3357
+ # resp.firewall_policy.route_53_resolved_ip_validation.dns_firewall_rule_group_id #=> String
3358
+ # resp.firewall_policy.route_53_resolved_ip_validation.dns_expiry_exception_policy #=> String, one of "REJECT", "DROP", "CONTINUE"
3359
+ # resp.firewall_policy.route_53_resolved_ip_validation.bypass_destination_validation_ip_ranges #=> Array
3360
+ # resp.firewall_policy.route_53_resolved_ip_validation.bypass_destination_validation_ip_ranges[0].address_definition #=> String
3361
+ # resp.firewall_policy.route_53_resolved_ip_validation.source_ip_ranges #=> Array
3362
+ # resp.firewall_policy.route_53_resolved_ip_validation.source_ip_ranges[0].address_definition #=> String
3363
+ #
3364
+ #
3365
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
3366
+ #
3367
+ # * firewall_policy_active
3326
3368
  #
3327
3369
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeFirewallPolicy AWS API Documentation
3328
3370
  #
@@ -3339,12 +3381,20 @@ module Aws::NetworkFirewall
3339
3381
  # The Amazon Resource Name (ARN) of the firewall.
3340
3382
  #
3341
3383
  # @option params [String] :availability_zone
3342
- # The ID of the Availability Zone where the firewall is located. For
3384
+ # The name of the Availability Zone where the firewall is located. For
3343
3385
  # example, `us-east-2a`.
3344
3386
  #
3345
3387
  # Defines the scope a flow operation. You can use up to 20 filters to
3346
3388
  # configure a single flow operation.
3347
3389
  #
3390
+ # @option params [String] :availability_zone_id
3391
+ # The ID of the Availability Zone where the firewall is located. For
3392
+ # example, `use2-az1`. Availability Zone IDs are the same in every
3393
+ # Amazon Web Services account, so use this parameter when you coordinate
3394
+ # resources across accounts. Specify either `AvailabilityZone` or
3395
+ # `AvailabilityZoneId`, not both. If you specify both, the request
3396
+ # fails.
3397
+ #
3348
3398
  # @option params [String] :vpc_endpoint_association_arn
3349
3399
  # The Amazon Resource Name (ARN) of a VPC endpoint association.
3350
3400
  #
@@ -3361,6 +3411,7 @@ module Aws::NetworkFirewall
3361
3411
  #
3362
3412
  # * {Types::DescribeFlowOperationResponse#firewall_arn #firewall_arn} => String
3363
3413
  # * {Types::DescribeFlowOperationResponse#availability_zone #availability_zone} => String
3414
+ # * {Types::DescribeFlowOperationResponse#availability_zone_id #availability_zone_id} => String
3364
3415
  # * {Types::DescribeFlowOperationResponse#vpc_endpoint_association_arn #vpc_endpoint_association_arn} => String
3365
3416
  # * {Types::DescribeFlowOperationResponse#vpc_endpoint_id #vpc_endpoint_id} => String
3366
3417
  # * {Types::DescribeFlowOperationResponse#flow_operation_id #flow_operation_id} => String
@@ -3375,6 +3426,7 @@ module Aws::NetworkFirewall
3375
3426
  # resp = client.describe_flow_operation({
3376
3427
  # firewall_arn: "ResourceArn", # required
3377
3428
  # availability_zone: "AvailabilityZone",
3429
+ # availability_zone_id: "AvailabilityZoneId",
3378
3430
  # vpc_endpoint_association_arn: "ResourceArn",
3379
3431
  # vpc_endpoint_id: "VpcEndpointId",
3380
3432
  # flow_operation_id: "FlowOperationId", # required
@@ -3384,6 +3436,7 @@ module Aws::NetworkFirewall
3384
3436
  #
3385
3437
  # resp.firewall_arn #=> String
3386
3438
  # resp.availability_zone #=> String
3439
+ # resp.availability_zone_id #=> String
3387
3440
  # resp.vpc_endpoint_association_arn #=> String
3388
3441
  # resp.vpc_endpoint_id #=> String
3389
3442
  # resp.flow_operation_id #=> String
@@ -3781,7 +3834,7 @@ module Aws::NetworkFirewall
3781
3834
  # resp.rule_group.rules_source.rules_source_list.targets #=> Array
3782
3835
  # resp.rule_group.rules_source.rules_source_list.targets[0] #=> String
3783
3836
  # resp.rule_group.rules_source.rules_source_list.target_types #=> Array
3784
- # resp.rule_group.rules_source.rules_source_list.target_types[0] #=> String, one of "TLS_SNI", "HTTP_HOST"
3837
+ # resp.rule_group.rules_source.rules_source_list.target_types[0] #=> String, one of "TLS_SNI", "HTTP_HOST", "AWS_ROUTE_53_RESOLVED_DOMAIN"
3785
3838
  # resp.rule_group.rules_source.rules_source_list.generated_rules_type #=> String, one of "ALLOWLIST", "DENYLIST", "REJECTLIST", "ALERTLIST"
3786
3839
  # resp.rule_group.rules_source.stateful_rules #=> Array
3787
3840
  # resp.rule_group.rules_source.stateful_rules[0].action #=> String, one of "PASS", "DROP", "ALERT", "REJECT"
@@ -3827,7 +3880,7 @@ module Aws::NetworkFirewall
3827
3880
  # resp.rule_group_response.description #=> String
3828
3881
  # resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN"
3829
3882
  # resp.rule_group_response.capacity #=> Integer
3830
- # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
3883
+ # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
3831
3884
  # resp.rule_group_response.tags #=> Array
3832
3885
  # resp.rule_group_response.tags[0].key #=> String
3833
3886
  # resp.rule_group_response.tags[0].value #=> String
@@ -4041,7 +4094,7 @@ module Aws::NetworkFirewall
4041
4094
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_arn #=> String
4042
4095
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_name #=> String
4043
4096
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_id #=> String
4044
- # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
4097
+ # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
4045
4098
  # resp.tls_inspection_configuration_response.description #=> String
4046
4099
  # resp.tls_inspection_configuration_response.tags #=> Array
4047
4100
  # resp.tls_inspection_configuration_response.tags[0].key #=> String
@@ -4675,12 +4728,20 @@ module Aws::NetworkFirewall
4675
4728
  # subsequent call to get the next batch of objects.
4676
4729
  #
4677
4730
  # @option params [String] :availability_zone
4678
- # The ID of the Availability Zone where the firewall is located. For
4731
+ # The name of the Availability Zone where the firewall is located. For
4679
4732
  # example, `us-east-2a`.
4680
4733
  #
4681
4734
  # Defines the scope a flow operation. You can use up to 20 filters to
4682
4735
  # configure a single flow operation.
4683
4736
  #
4737
+ # @option params [String] :availability_zone_id
4738
+ # The ID of the Availability Zone where the firewall is located. For
4739
+ # example, `use2-az1`. Availability Zone IDs are the same in every
4740
+ # Amazon Web Services account, so use this parameter when you coordinate
4741
+ # resources across accounts. Specify either `AvailabilityZone` or
4742
+ # `AvailabilityZoneId`, not both. If you specify both, the request
4743
+ # fails.
4744
+ #
4684
4745
  # @option params [String] :vpc_endpoint_id
4685
4746
  # A unique identifier for the primary endpoint associated with a
4686
4747
  # firewall.
@@ -4692,6 +4753,7 @@ module Aws::NetworkFirewall
4692
4753
  #
4693
4754
  # * {Types::ListFlowOperationResultsResponse#firewall_arn #firewall_arn} => String
4694
4755
  # * {Types::ListFlowOperationResultsResponse#availability_zone #availability_zone} => String
4756
+ # * {Types::ListFlowOperationResultsResponse#availability_zone_id #availability_zone_id} => String
4695
4757
  # * {Types::ListFlowOperationResultsResponse#vpc_endpoint_association_arn #vpc_endpoint_association_arn} => String
4696
4758
  # * {Types::ListFlowOperationResultsResponse#vpc_endpoint_id #vpc_endpoint_id} => String
4697
4759
  # * {Types::ListFlowOperationResultsResponse#flow_operation_id #flow_operation_id} => String
@@ -4711,6 +4773,7 @@ module Aws::NetworkFirewall
4711
4773
  # next_token: "PaginationToken",
4712
4774
  # max_results: 1,
4713
4775
  # availability_zone: "AvailabilityZone",
4776
+ # availability_zone_id: "AvailabilityZoneId",
4714
4777
  # vpc_endpoint_id: "VpcEndpointId",
4715
4778
  # vpc_endpoint_association_arn: "ResourceArn",
4716
4779
  # })
@@ -4719,6 +4782,7 @@ module Aws::NetworkFirewall
4719
4782
  #
4720
4783
  # resp.firewall_arn #=> String
4721
4784
  # resp.availability_zone #=> String
4785
+ # resp.availability_zone_id #=> String
4722
4786
  # resp.vpc_endpoint_association_arn #=> String
4723
4787
  # resp.vpc_endpoint_id #=> String
4724
4788
  # resp.flow_operation_id #=> String
@@ -4762,12 +4826,20 @@ module Aws::NetworkFirewall
4762
4826
  # The Amazon Resource Name (ARN) of the firewall.
4763
4827
  #
4764
4828
  # @option params [String] :availability_zone
4765
- # The ID of the Availability Zone where the firewall is located. For
4829
+ # The name of the Availability Zone where the firewall is located. For
4766
4830
  # example, `us-east-2a`.
4767
4831
  #
4768
4832
  # Defines the scope a flow operation. You can use up to 20 filters to
4769
4833
  # configure a single flow operation.
4770
4834
  #
4835
+ # @option params [String] :availability_zone_id
4836
+ # The ID of the Availability Zone where the firewall is located. For
4837
+ # example, `use2-az1`. Availability Zone IDs are the same in every
4838
+ # Amazon Web Services account, so use this parameter when you coordinate
4839
+ # resources across accounts. Specify either `AvailabilityZone` or
4840
+ # `AvailabilityZoneId`, not both. If you specify both, the request
4841
+ # fails.
4842
+ #
4771
4843
  # @option params [String] :vpc_endpoint_association_arn
4772
4844
  # The Amazon Resource Name (ARN) of a VPC endpoint association.
4773
4845
  #
@@ -4804,6 +4876,7 @@ module Aws::NetworkFirewall
4804
4876
  # resp = client.list_flow_operations({
4805
4877
  # firewall_arn: "ResourceArn", # required
4806
4878
  # availability_zone: "AvailabilityZone",
4879
+ # availability_zone_id: "AvailabilityZoneId",
4807
4880
  # vpc_endpoint_association_arn: "ResourceArn",
4808
4881
  # vpc_endpoint_id: "VpcEndpointId",
4809
4882
  # flow_operation_type: "FLOW_FLUSH", # accepts FLOW_FLUSH, FLOW_CAPTURE
@@ -5409,12 +5482,20 @@ module Aws::NetworkFirewall
5409
5482
  # The Amazon Resource Name (ARN) of the firewall.
5410
5483
  #
5411
5484
  # @option params [String] :availability_zone
5412
- # The ID of the Availability Zone where the firewall is located. For
5485
+ # The name of the Availability Zone where the firewall is located. For
5413
5486
  # example, `us-east-2a`.
5414
5487
  #
5415
5488
  # Defines the scope a flow operation. You can use up to 20 filters to
5416
5489
  # configure a single flow operation.
5417
5490
  #
5491
+ # @option params [String] :availability_zone_id
5492
+ # The ID of the Availability Zone where the firewall is located. For
5493
+ # example, `use2-az1`. Availability Zone IDs are the same in every
5494
+ # Amazon Web Services account, so use this parameter when you coordinate
5495
+ # resources across accounts. Specify either `AvailabilityZone` or
5496
+ # `AvailabilityZoneId`, not both. If you specify both, the request
5497
+ # fails.
5498
+ #
5418
5499
  # @option params [String] :vpc_endpoint_association_arn
5419
5500
  # The Amazon Resource Name (ARN) of a VPC endpoint association.
5420
5501
  #
@@ -5447,6 +5528,7 @@ module Aws::NetworkFirewall
5447
5528
  # resp = client.start_flow_capture({
5448
5529
  # firewall_arn: "ResourceArn", # required
5449
5530
  # availability_zone: "AvailabilityZone",
5531
+ # availability_zone_id: "AvailabilityZoneId",
5450
5532
  # vpc_endpoint_association_arn: "ResourceArn",
5451
5533
  # vpc_endpoint_id: "VpcEndpointId",
5452
5534
  # minimum_flow_age_in_seconds: 1,
@@ -5494,12 +5576,20 @@ module Aws::NetworkFirewall
5494
5576
  # The Amazon Resource Name (ARN) of the firewall.
5495
5577
  #
5496
5578
  # @option params [String] :availability_zone
5497
- # The ID of the Availability Zone where the firewall is located. For
5579
+ # The name of the Availability Zone where the firewall is located. For
5498
5580
  # example, `us-east-2a`.
5499
5581
  #
5500
5582
  # Defines the scope a flow operation. You can use up to 20 filters to
5501
5583
  # configure a single flow operation.
5502
5584
  #
5585
+ # @option params [String] :availability_zone_id
5586
+ # The ID of the Availability Zone where the firewall is located. For
5587
+ # example, `use2-az1`. Availability Zone IDs are the same in every
5588
+ # Amazon Web Services account, so use this parameter when you coordinate
5589
+ # resources across accounts. Specify either `AvailabilityZone` or
5590
+ # `AvailabilityZoneId`, not both. If you specify both, the request
5591
+ # fails.
5592
+ #
5503
5593
  # @option params [String] :vpc_endpoint_association_arn
5504
5594
  # The Amazon Resource Name (ARN) of a VPC endpoint association.
5505
5595
  #
@@ -5527,6 +5617,7 @@ module Aws::NetworkFirewall
5527
5617
  # resp = client.start_flow_flush({
5528
5618
  # firewall_arn: "ResourceArn", # required
5529
5619
  # availability_zone: "AvailabilityZone",
5620
+ # availability_zone_id: "AvailabilityZoneId",
5530
5621
  # vpc_endpoint_association_arn: "ResourceArn",
5531
5622
  # vpc_endpoint_id: "VpcEndpointId",
5532
5623
  # minimum_flow_age_in_seconds: 1,
@@ -6233,6 +6324,21 @@ module Aws::NetworkFirewall
6233
6324
  # },
6234
6325
  # },
6235
6326
  # enable_tls_session_holding: false,
6327
+ # route_53_resolved_ip_validation: {
6328
+ # action: "REJECT", # required, accepts REJECT, DROP, ALERT
6329
+ # dns_firewall_rule_group_id: "DNSFirewallRuleGroupId", # required
6330
+ # dns_expiry_exception_policy: "REJECT", # required, accepts REJECT, DROP, CONTINUE
6331
+ # bypass_destination_validation_ip_ranges: [
6332
+ # {
6333
+ # address_definition: "AddressDefinition", # required
6334
+ # },
6335
+ # ],
6336
+ # source_ip_ranges: [
6337
+ # {
6338
+ # address_definition: "AddressDefinition", # required
6339
+ # },
6340
+ # ],
6341
+ # },
6236
6342
  # },
6237
6343
  # description: "Description",
6238
6344
  # dry_run: false,
@@ -6249,7 +6355,8 @@ module Aws::NetworkFirewall
6249
6355
  # resp.firewall_policy_response.firewall_policy_arn #=> String
6250
6356
  # resp.firewall_policy_response.firewall_policy_id #=> String
6251
6357
  # resp.firewall_policy_response.description #=> String
6252
- # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
6358
+ # resp.firewall_policy_response.firewall_policy_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
6359
+ # resp.firewall_policy_response.status_message #=> String
6253
6360
  # resp.firewall_policy_response.tags #=> Array
6254
6361
  # resp.firewall_policy_response.tags[0].key #=> String
6255
6362
  # resp.firewall_policy_response.tags[0].value #=> String
@@ -6259,6 +6366,10 @@ module Aws::NetworkFirewall
6259
6366
  # resp.firewall_policy_response.number_of_associations #=> Integer
6260
6367
  # resp.firewall_policy_response.encryption_configuration.key_id #=> String
6261
6368
  # resp.firewall_policy_response.encryption_configuration.type #=> String, one of "CUSTOMER_KMS", "AWS_OWNED_KMS_KEY"
6369
+ # resp.firewall_policy_response.errors #=> Array
6370
+ # resp.firewall_policy_response.errors[0].code #=> String, one of "DNS_FIREWALL_RULE_GROUP_UNAVAILABLE", "ROUTE53_RESOLVED_IP_VALIDATION_MISSING"
6371
+ # resp.firewall_policy_response.errors[0].message #=> String
6372
+ # resp.firewall_policy_response.errors[0].resource_id #=> String
6262
6373
  # resp.firewall_policy_response.last_modified_time #=> Time
6263
6374
  #
6264
6375
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/UpdateFirewallPolicy AWS API Documentation
@@ -7087,7 +7198,7 @@ module Aws::NetworkFirewall
7087
7198
  # rules_string: "RulesString",
7088
7199
  # rules_source_list: {
7089
7200
  # targets: ["CollectionMember_String"], # required
7090
- # target_types: ["TLS_SNI"], # required, accepts TLS_SNI, HTTP_HOST
7201
+ # target_types: ["TLS_SNI"], # required, accepts TLS_SNI, HTTP_HOST, AWS_ROUTE_53_RESOLVED_DOMAIN
7091
7202
  # generated_rules_type: "ALLOWLIST", # required, accepts ALLOWLIST, DENYLIST, REJECTLIST, ALERTLIST
7092
7203
  # },
7093
7204
  # stateful_rules: [
@@ -7196,7 +7307,7 @@ module Aws::NetworkFirewall
7196
7307
  # resp.rule_group_response.description #=> String
7197
7308
  # resp.rule_group_response.type #=> String, one of "STATELESS", "STATEFUL", "STATEFUL_DOMAIN"
7198
7309
  # resp.rule_group_response.capacity #=> Integer
7199
- # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
7310
+ # resp.rule_group_response.rule_group_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
7200
7311
  # resp.rule_group_response.tags #=> Array
7201
7312
  # resp.rule_group_response.tags[0].key #=> String
7202
7313
  # resp.rule_group_response.tags[0].value #=> String
@@ -7425,7 +7536,7 @@ module Aws::NetworkFirewall
7425
7536
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_arn #=> String
7426
7537
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_name #=> String
7427
7538
  # resp.tls_inspection_configuration_response.tls_inspection_configuration_id #=> String
7428
- # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR"
7539
+ # resp.tls_inspection_configuration_response.tls_inspection_configuration_status #=> String, one of "ACTIVE", "DELETING", "ERROR", "UPDATING"
7429
7540
  # resp.tls_inspection_configuration_response.description #=> String
7430
7541
  # resp.tls_inspection_configuration_response.tags #=> Array
7431
7542
  # resp.tls_inspection_configuration_response.tags[0].key #=> String
@@ -7471,14 +7582,127 @@ module Aws::NetworkFirewall
7471
7582
  tracer: tracer
7472
7583
  )
7473
7584
  context[:gem_name] = 'aws-sdk-networkfirewall'
7474
- context[:gem_version] = '1.101.0'
7585
+ context[:gem_version] = '1.102.0'
7475
7586
  Seahorse::Client::Request.new(handlers, context)
7476
7587
  end
7477
7588
 
7589
+ # Polls an API operation until a resource enters a desired state.
7590
+ #
7591
+ # ## Basic Usage
7592
+ #
7593
+ # A waiter will call an API operation until:
7594
+ #
7595
+ # * It is successful
7596
+ # * It enters a terminal state
7597
+ # * It makes the maximum number of attempts
7598
+ #
7599
+ # In between attempts, the waiter will sleep.
7600
+ #
7601
+ # # polls in a loop, sleeping between attempts
7602
+ # client.wait_until(waiter_name, params)
7603
+ #
7604
+ # ## Configuration
7605
+ #
7606
+ # You can configure the maximum number of polling attempts, and the
7607
+ # delay (in seconds) between each polling attempt. You can pass
7608
+ # configuration as the final arguments hash.
7609
+ #
7610
+ # # poll for ~25 seconds
7611
+ # client.wait_until(waiter_name, params, {
7612
+ # max_attempts: 5,
7613
+ # delay: 5,
7614
+ # })
7615
+ #
7616
+ # ## Callbacks
7617
+ #
7618
+ # You can be notified before each polling attempt and before each
7619
+ # delay. If you throw `:success` or `:failure` from these callbacks,
7620
+ # it will terminate the waiter.
7621
+ #
7622
+ # started_at = Time.now
7623
+ # client.wait_until(waiter_name, params, {
7624
+ #
7625
+ # # disable max attempts
7626
+ # max_attempts: nil,
7627
+ #
7628
+ # # poll for 1 hour, instead of a number of attempts
7629
+ # before_wait: -> (attempts, response) do
7630
+ # throw :failure if Time.now - started_at > 3600
7631
+ # end
7632
+ # })
7633
+ #
7634
+ # ## Handling Errors
7635
+ #
7636
+ # When a waiter is unsuccessful, it will raise an error.
7637
+ # All of the failure errors extend from
7638
+ # {Aws::Waiters::Errors::WaiterFailed}.
7639
+ #
7640
+ # begin
7641
+ # client.wait_until(...)
7642
+ # rescue Aws::Waiters::Errors::WaiterFailed
7643
+ # # resource did not enter the desired state in time
7644
+ # end
7645
+ #
7646
+ # ## Valid Waiters
7647
+ #
7648
+ # The following table lists the valid waiter names, the operations they call,
7649
+ # and the default `:delay` and `:max_attempts` values.
7650
+ #
7651
+ # | waiter_name | params | :delay | :max_attempts |
7652
+ # | ---------------------- | --------------------------------- | -------- | ------------- |
7653
+ # | firewall_policy_active | {Client#describe_firewall_policy} | 15 | 40 |
7654
+ #
7655
+ # @raise [Errors::FailureStateError] Raised when the waiter terminates
7656
+ # because the waiter has entered a state that it will not transition
7657
+ # out of, preventing success.
7658
+ #
7659
+ # @raise [Errors::TooManyAttemptsError] Raised when the configured
7660
+ # maximum number of attempts have been made, and the waiter is not
7661
+ # yet successful.
7662
+ #
7663
+ # @raise [Errors::UnexpectedError] Raised when an error is encounted
7664
+ # while polling for a resource that is not expected.
7665
+ #
7666
+ # @raise [Errors::NoSuchWaiterError] Raised when you request to wait
7667
+ # for an unknown state.
7668
+ #
7669
+ # @return [Boolean] Returns `true` if the waiter was successful.
7670
+ # @param [Symbol] waiter_name
7671
+ # @param [Hash] params ({})
7672
+ # @param [Hash] options ({})
7673
+ # @option options [Integer] :max_attempts
7674
+ # @option options [Integer] :delay
7675
+ # @option options [Proc] :before_attempt
7676
+ # @option options [Proc] :before_wait
7677
+ def wait_until(waiter_name, params = {}, options = {})
7678
+ w = waiter(waiter_name, options)
7679
+ yield(w.waiter) if block_given? # deprecated
7680
+ w.wait(params)
7681
+ end
7682
+
7478
7683
  # @api private
7479
7684
  # @deprecated
7480
7685
  def waiter_names
7481
- []
7686
+ waiters.keys
7687
+ end
7688
+
7689
+ private
7690
+
7691
+ # @param [Symbol] waiter_name
7692
+ # @param [Hash] options ({})
7693
+ def waiter(waiter_name, options = {})
7694
+ waiter_class = waiters[waiter_name]
7695
+ if waiter_class
7696
+ waiter_class.new(options.merge(client: self))
7697
+ else
7698
+ raise Aws::Waiters::Errors::NoSuchWaiterError.new(waiter_name, waiters.keys)
7699
+ end
7700
+ end
7701
+
7702
+ def waiters
7703
+ {
7704
+ firewall_policy_active: Waiters::FirewallPolicyActive
7705
+ }
7482
7706
  end
7483
7707
 
7484
7708
  class << self