aws-sdk-networkfirewall 1.67.0 → 1.69.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.
@@ -37,6 +37,59 @@ module Aws::NetworkFirewall
37
37
  include Aws::Structure
38
38
  end
39
39
 
40
+ # @!attribute [rw] transit_gateway_attachment_id
41
+ # Required. The unique identifier of the transit gateway attachment to
42
+ # accept. This ID is returned in the response when creating a transit
43
+ # gateway-attached firewall.
44
+ # @return [String]
45
+ #
46
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/AcceptNetworkFirewallTransitGatewayAttachmentRequest AWS API Documentation
47
+ #
48
+ class AcceptNetworkFirewallTransitGatewayAttachmentRequest < Struct.new(
49
+ :transit_gateway_attachment_id)
50
+ SENSITIVE = []
51
+ include Aws::Structure
52
+ end
53
+
54
+ # @!attribute [rw] transit_gateway_attachment_id
55
+ # The unique identifier of the transit gateway attachment that was
56
+ # accepted.
57
+ # @return [String]
58
+ #
59
+ # @!attribute [rw] transit_gateway_attachment_status
60
+ # The current status of the transit gateway attachment. Valid values
61
+ # are:
62
+ #
63
+ # * `CREATING` - The attachment is being created
64
+ #
65
+ # * `DELETING` - The attachment is being deleted
66
+ #
67
+ # * `DELETED` - The attachment has been deleted
68
+ #
69
+ # * `FAILED` - The attachment creation has failed and cannot be
70
+ # recovered
71
+ #
72
+ # * `ERROR` - The attachment is in an error state that might be
73
+ # recoverable
74
+ #
75
+ # * `READY` - The attachment is active and processing traffic
76
+ #
77
+ # * `PENDING_ACCEPTANCE` - The attachment is waiting to be accepted
78
+ #
79
+ # * `REJECTING` - The attachment is in the process of being rejected
80
+ #
81
+ # * `REJECTED` - The attachment has been rejected
82
+ # @return [String]
83
+ #
84
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/AcceptNetworkFirewallTransitGatewayAttachmentResponse AWS API Documentation
85
+ #
86
+ class AcceptNetworkFirewallTransitGatewayAttachmentResponse < Struct.new(
87
+ :transit_gateway_attachment_id,
88
+ :transit_gateway_attachment_status)
89
+ SENSITIVE = []
90
+ include Aws::Structure
91
+ end
92
+
40
93
  # A custom action to use in stateless rule actions settings. This is
41
94
  # used in CustomAction.
42
95
  #
@@ -253,6 +306,101 @@ module Aws::NetworkFirewall
253
306
  include Aws::Structure
254
307
  end
255
308
 
309
+ # @!attribute [rw] update_token
310
+ # An optional token that you can use for optimistic locking. Network
311
+ # Firewall returns a token to your requests that access the firewall.
312
+ # The token marks the state of the firewall resource at the time of
313
+ # the request.
314
+ #
315
+ # To make an unconditional change to the firewall, omit the token in
316
+ # your update request. Without the token, Network Firewall performs
317
+ # your updates regardless of whether the firewall has changed since
318
+ # you last retrieved it.
319
+ #
320
+ # To make a conditional change to the firewall, provide the token in
321
+ # your update request. Network Firewall uses the token to ensure that
322
+ # the firewall hasn't changed since you last retrieved it. If it has
323
+ # changed, the operation fails with an `InvalidTokenException`. If
324
+ # this happens, retrieve the firewall again to get a current copy of
325
+ # it with a new token. Reapply your changes as needed, then try the
326
+ # operation again using the new token.
327
+ # @return [String]
328
+ #
329
+ # @!attribute [rw] firewall_arn
330
+ # The Amazon Resource Name (ARN) of the firewall.
331
+ #
332
+ # You must specify the ARN or the name, and you can specify both.
333
+ # @return [String]
334
+ #
335
+ # @!attribute [rw] firewall_name
336
+ # The descriptive name of the firewall. You can't change the name of
337
+ # a firewall after you create it.
338
+ #
339
+ # You must specify the ARN or the name, and you can specify both.
340
+ # @return [String]
341
+ #
342
+ # @!attribute [rw] availability_zone_mappings
343
+ # Required. The Availability Zones where you want to create firewall
344
+ # endpoints. You must specify at least one Availability Zone.
345
+ # @return [Array<Types::AvailabilityZoneMapping>]
346
+ #
347
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/AssociateAvailabilityZonesRequest AWS API Documentation
348
+ #
349
+ class AssociateAvailabilityZonesRequest < Struct.new(
350
+ :update_token,
351
+ :firewall_arn,
352
+ :firewall_name,
353
+ :availability_zone_mappings)
354
+ SENSITIVE = []
355
+ include Aws::Structure
356
+ end
357
+
358
+ # @!attribute [rw] firewall_arn
359
+ # The Amazon Resource Name (ARN) of the firewall.
360
+ # @return [String]
361
+ #
362
+ # @!attribute [rw] firewall_name
363
+ # The descriptive name of the firewall. You can't change the name of
364
+ # a firewall after you create it.
365
+ # @return [String]
366
+ #
367
+ # @!attribute [rw] availability_zone_mappings
368
+ # The Availability Zones where Network Firewall created firewall
369
+ # endpoints. Each mapping specifies an Availability Zone where the
370
+ # firewall processes traffic.
371
+ # @return [Array<Types::AvailabilityZoneMapping>]
372
+ #
373
+ # @!attribute [rw] update_token
374
+ # An optional token that you can use for optimistic locking. Network
375
+ # Firewall returns a token to your requests that access the firewall.
376
+ # The token marks the state of the firewall resource at the time of
377
+ # the request.
378
+ #
379
+ # To make an unconditional change to the firewall, omit the token in
380
+ # your update request. Without the token, Network Firewall performs
381
+ # your updates regardless of whether the firewall has changed since
382
+ # you last retrieved it.
383
+ #
384
+ # To make a conditional change to the firewall, provide the token in
385
+ # your update request. Network Firewall uses the token to ensure that
386
+ # the firewall hasn't changed since you last retrieved it. If it has
387
+ # changed, the operation fails with an `InvalidTokenException`. If
388
+ # this happens, retrieve the firewall again to get a current copy of
389
+ # it with a new token. Reapply your changes as needed, then try the
390
+ # operation again using the new token.
391
+ # @return [String]
392
+ #
393
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/AssociateAvailabilityZonesResponse AWS API Documentation
394
+ #
395
+ class AssociateAvailabilityZonesResponse < Struct.new(
396
+ :firewall_arn,
397
+ :firewall_name,
398
+ :availability_zone_mappings,
399
+ :update_token)
400
+ SENSITIVE = []
401
+ include Aws::Structure
402
+ end
403
+
256
404
  # @!attribute [rw] update_token
257
405
  # An optional token that you can use for optimistic locking. Network
258
406
  # Firewall returns a token to your requests that access the firewall.
@@ -499,6 +647,29 @@ module Aws::NetworkFirewall
499
647
  include Aws::Structure
500
648
  end
501
649
 
650
+ # Defines the mapping between an Availability Zone and a firewall
651
+ # endpoint for a transit gateway-attached firewall. Each mapping
652
+ # represents where the firewall can process traffic. You use these
653
+ # mappings when calling CreateFirewall, AssociateAvailabilityZones, and
654
+ # DisassociateAvailabilityZones.
655
+ #
656
+ # To retrieve the current Availability Zone mappings for a firewall, use
657
+ # DescribeFirewall.
658
+ #
659
+ # @!attribute [rw] availability_zone
660
+ # The ID of the Availability Zone where the firewall endpoint is
661
+ # located. For example, `us-east-2a`. The Availability Zone must be in
662
+ # the same Region as the transit gateway.
663
+ # @return [String]
664
+ #
665
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/AvailabilityZoneMapping AWS API Documentation
666
+ #
667
+ class AvailabilityZoneMapping < Struct.new(
668
+ :availability_zone)
669
+ SENSITIVE = []
670
+ include Aws::Structure
671
+ end
672
+
502
673
  # High-level information about an Availability Zone where the firewall
503
674
  # has an endpoint defined.
504
675
  #
@@ -753,6 +924,50 @@ module Aws::NetworkFirewall
753
924
  # to enable on the firewall.
754
925
  # @return [Array<String>]
755
926
  #
927
+ # @!attribute [rw] transit_gateway_id
928
+ # Required when creating a transit gateway-attached firewall. The
929
+ # unique identifier of the transit gateway to attach to this firewall.
930
+ # You can provide either a transit gateway from your account or one
931
+ # that has been shared with you through Resource Access Manager.
932
+ #
933
+ # After creating the firewall, you cannot change the transit gateway
934
+ # association. To use a different transit gateway, you must create a
935
+ # new firewall.
936
+ #
937
+ # For information about creating firewalls, see CreateFirewall. For
938
+ # specific guidance about transit gateway-attached firewalls, see
939
+ # [Considerations for transit gateway-attached firewalls][1] in the
940
+ # *Network Firewall Developer Guide*.
941
+ #
942
+ #
943
+ #
944
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/tgw-firewall-considerations.html
945
+ # @return [String]
946
+ #
947
+ # @!attribute [rw] availability_zone_mappings
948
+ # Required. The Availability Zones where you want to create firewall
949
+ # endpoints for a transit gateway-attached firewall. You must specify
950
+ # at least one Availability Zone. Consider enabling the firewall in
951
+ # every Availability Zone where you have workloads to maintain
952
+ # Availability Zone independence.
953
+ #
954
+ # You can modify Availability Zones later using
955
+ # AssociateAvailabilityZones or DisassociateAvailabilityZones, but
956
+ # this may briefly disrupt traffic. The
957
+ # `AvailabilityZoneChangeProtection` setting controls whether you can
958
+ # make these modifications.
959
+ # @return [Array<Types::AvailabilityZoneMapping>]
960
+ #
961
+ # @!attribute [rw] availability_zone_change_protection
962
+ # Optional. A setting indicating whether the firewall is protected
963
+ # against changes to its Availability Zone configuration. When set to
964
+ # `TRUE`, you cannot add or remove Availability Zones without first
965
+ # disabling this protection using
966
+ # UpdateAvailabilityZoneChangeProtection.
967
+ #
968
+ # Default value: `FALSE`
969
+ # @return [Boolean]
970
+ #
756
971
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/CreateFirewallRequest AWS API Documentation
757
972
  #
758
973
  class CreateFirewallRequest < Struct.new(
@@ -766,7 +981,10 @@ module Aws::NetworkFirewall
766
981
  :description,
767
982
  :tags,
768
983
  :encryption_configuration,
769
- :enabled_analysis_types)
984
+ :enabled_analysis_types,
985
+ :transit_gateway_id,
986
+ :availability_zone_mappings,
987
+ :availability_zone_change_protection)
770
988
  SENSITIVE = []
771
989
  include Aws::Structure
772
990
  end
@@ -1268,6 +1486,59 @@ module Aws::NetworkFirewall
1268
1486
  include Aws::Structure
1269
1487
  end
1270
1488
 
1489
+ # @!attribute [rw] transit_gateway_attachment_id
1490
+ # Required. The unique identifier of the transit gateway attachment to
1491
+ # delete.
1492
+ # @return [String]
1493
+ #
1494
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DeleteNetworkFirewallTransitGatewayAttachmentRequest AWS API Documentation
1495
+ #
1496
+ class DeleteNetworkFirewallTransitGatewayAttachmentRequest < Struct.new(
1497
+ :transit_gateway_attachment_id)
1498
+ SENSITIVE = []
1499
+ include Aws::Structure
1500
+ end
1501
+
1502
+ # @!attribute [rw] transit_gateway_attachment_id
1503
+ # The ID of the transit gateway attachment that was deleted.
1504
+ # @return [String]
1505
+ #
1506
+ # @!attribute [rw] transit_gateway_attachment_status
1507
+ # The current status of the transit gateway attachment deletion
1508
+ # process.
1509
+ #
1510
+ # Valid values are:
1511
+ #
1512
+ # * `CREATING` - The attachment is being created
1513
+ #
1514
+ # * `DELETING` - The attachment is being deleted
1515
+ #
1516
+ # * `DELETED` - The attachment has been deleted
1517
+ #
1518
+ # * `FAILED` - The attachment creation has failed and cannot be
1519
+ # recovered
1520
+ #
1521
+ # * `ERROR` - The attachment is in an error state that might be
1522
+ # recoverable
1523
+ #
1524
+ # * `READY` - The attachment is active and processing traffic
1525
+ #
1526
+ # * `PENDING_ACCEPTANCE` - The attachment is waiting to be accepted
1527
+ #
1528
+ # * `REJECTING` - The attachment is in the process of being rejected
1529
+ #
1530
+ # * `REJECTED` - The attachment has been rejected
1531
+ # @return [String]
1532
+ #
1533
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DeleteNetworkFirewallTransitGatewayAttachmentResponse AWS API Documentation
1534
+ #
1535
+ class DeleteNetworkFirewallTransitGatewayAttachmentResponse < Struct.new(
1536
+ :transit_gateway_attachment_id,
1537
+ :transit_gateway_attachment_status)
1538
+ SENSITIVE = []
1539
+ include Aws::Structure
1540
+ end
1541
+
1271
1542
  # @!attribute [rw] resource_arn
1272
1543
  # The Amazon Resource Name (ARN) of the rule group or firewall policy
1273
1544
  # whose resource policy you want to delete.
@@ -1444,6 +1715,12 @@ module Aws::NetworkFirewall
1444
1715
  # defined.
1445
1716
  # @return [Hash<String,Types::AvailabilityZoneMetadata>]
1446
1717
  #
1718
+ # @!attribute [rw] transit_gateway_attachment_id
1719
+ # The unique identifier of the transit gateway attachment associated
1720
+ # with this firewall. This field is only present for transit
1721
+ # gateway-attached firewalls.
1722
+ # @return [String]
1723
+ #
1447
1724
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeFirewallMetadataResponse AWS API Documentation
1448
1725
  #
1449
1726
  class DescribeFirewallMetadataResponse < Struct.new(
@@ -1451,7 +1728,8 @@ module Aws::NetworkFirewall
1451
1728
  :firewall_policy_arn,
1452
1729
  :description,
1453
1730
  :status,
1454
- :supported_availability_zones)
1731
+ :supported_availability_zones,
1732
+ :transit_gateway_attachment_id)
1455
1733
  SENSITIVE = []
1456
1734
  include Aws::Structure
1457
1735
  end
@@ -1725,11 +2003,21 @@ module Aws::NetworkFirewall
1725
2003
  # Defines how Network Firewall performs logging for a Firewall.
1726
2004
  # @return [Types::LoggingConfiguration]
1727
2005
  #
2006
+ # @!attribute [rw] enable_monitoring_dashboard
2007
+ # A boolean that reflects whether or not the firewall monitoring
2008
+ # dashboard is enabled on a firewall.
2009
+ #
2010
+ # Returns `TRUE` when the firewall monitoring dashboard is enabled on
2011
+ # the firewall. Returns `FALSE` when the firewall monitoring dashboard
2012
+ # is not enabled on the firewall.
2013
+ # @return [Boolean]
2014
+ #
1728
2015
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeLoggingConfigurationResponse AWS API Documentation
1729
2016
  #
1730
2017
  class DescribeLoggingConfigurationResponse < Struct.new(
1731
2018
  :firewall_arn,
1732
- :logging_configuration)
2019
+ :logging_configuration,
2020
+ :enable_monitoring_dashboard)
1733
2021
  SENSITIVE = []
1734
2022
  include Aws::Structure
1735
2023
  end
@@ -1841,7 +2129,7 @@ module Aws::NetworkFirewall
1841
2129
  # @return [Types::StatefulRuleOptions]
1842
2130
  #
1843
2131
  # @!attribute [rw] last_modified_time
1844
- # The last time that the rule group was changed.
2132
+ # A timestamp indicating when the rule group was last modified.
1845
2133
  # @return [Time]
1846
2134
  #
1847
2135
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeRuleGroupMetadataResponse AWS API Documentation
@@ -2089,6 +2377,100 @@ module Aws::NetworkFirewall
2089
2377
  include Aws::Structure
2090
2378
  end
2091
2379
 
2380
+ # @!attribute [rw] update_token
2381
+ # An optional token that you can use for optimistic locking. Network
2382
+ # Firewall returns a token to your requests that access the firewall.
2383
+ # The token marks the state of the firewall resource at the time of
2384
+ # the request.
2385
+ #
2386
+ # To make an unconditional change to the firewall, omit the token in
2387
+ # your update request. Without the token, Network Firewall performs
2388
+ # your updates regardless of whether the firewall has changed since
2389
+ # you last retrieved it.
2390
+ #
2391
+ # To make a conditional change to the firewall, provide the token in
2392
+ # your update request. Network Firewall uses the token to ensure that
2393
+ # the firewall hasn't changed since you last retrieved it. If it has
2394
+ # changed, the operation fails with an `InvalidTokenException`. If
2395
+ # this happens, retrieve the firewall again to get a current copy of
2396
+ # it with a new token. Reapply your changes as needed, then try the
2397
+ # operation again using the new token.
2398
+ # @return [String]
2399
+ #
2400
+ # @!attribute [rw] firewall_arn
2401
+ # The Amazon Resource Name (ARN) of the firewall.
2402
+ #
2403
+ # You must specify the ARN or the name, and you can specify both.
2404
+ # @return [String]
2405
+ #
2406
+ # @!attribute [rw] firewall_name
2407
+ # The descriptive name of the firewall. You can't change the name of
2408
+ # a firewall after you create it.
2409
+ #
2410
+ # You must specify the ARN or the name, and you can specify both.
2411
+ # @return [String]
2412
+ #
2413
+ # @!attribute [rw] availability_zone_mappings
2414
+ # Required. The Availability Zones to remove from the firewall's
2415
+ # configuration.
2416
+ # @return [Array<Types::AvailabilityZoneMapping>]
2417
+ #
2418
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DisassociateAvailabilityZonesRequest AWS API Documentation
2419
+ #
2420
+ class DisassociateAvailabilityZonesRequest < Struct.new(
2421
+ :update_token,
2422
+ :firewall_arn,
2423
+ :firewall_name,
2424
+ :availability_zone_mappings)
2425
+ SENSITIVE = []
2426
+ include Aws::Structure
2427
+ end
2428
+
2429
+ # @!attribute [rw] firewall_arn
2430
+ # The Amazon Resource Name (ARN) of the firewall.
2431
+ # @return [String]
2432
+ #
2433
+ # @!attribute [rw] firewall_name
2434
+ # The descriptive name of the firewall. You can't change the name of
2435
+ # a firewall after you create it.
2436
+ # @return [String]
2437
+ #
2438
+ # @!attribute [rw] availability_zone_mappings
2439
+ # The remaining Availability Zones where the firewall has endpoints
2440
+ # after the disassociation.
2441
+ # @return [Array<Types::AvailabilityZoneMapping>]
2442
+ #
2443
+ # @!attribute [rw] update_token
2444
+ # An optional token that you can use for optimistic locking. Network
2445
+ # Firewall returns a token to your requests that access the firewall.
2446
+ # The token marks the state of the firewall resource at the time of
2447
+ # the request.
2448
+ #
2449
+ # To make an unconditional change to the firewall, omit the token in
2450
+ # your update request. Without the token, Network Firewall performs
2451
+ # your updates regardless of whether the firewall has changed since
2452
+ # you last retrieved it.
2453
+ #
2454
+ # To make a conditional change to the firewall, provide the token in
2455
+ # your update request. Network Firewall uses the token to ensure that
2456
+ # the firewall hasn't changed since you last retrieved it. If it has
2457
+ # changed, the operation fails with an `InvalidTokenException`. If
2458
+ # this happens, retrieve the firewall again to get a current copy of
2459
+ # it with a new token. Reapply your changes as needed, then try the
2460
+ # operation again using the new token.
2461
+ # @return [String]
2462
+ #
2463
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DisassociateAvailabilityZonesResponse AWS API Documentation
2464
+ #
2465
+ class DisassociateAvailabilityZonesResponse < Struct.new(
2466
+ :firewall_arn,
2467
+ :firewall_name,
2468
+ :availability_zone_mappings,
2469
+ :update_token)
2470
+ SENSITIVE = []
2471
+ include Aws::Structure
2472
+ end
2473
+
2092
2474
  # @!attribute [rw] update_token
2093
2475
  # An optional token that you can use for optimistic locking. Network
2094
2476
  # Firewall returns a token to your requests that access the firewall.
@@ -2330,6 +2712,31 @@ module Aws::NetworkFirewall
2330
2712
  # to enable on the firewall.
2331
2713
  # @return [Array<String>]
2332
2714
  #
2715
+ # @!attribute [rw] transit_gateway_id
2716
+ # The unique identifier of the transit gateway associated with this
2717
+ # firewall. This field is only present for transit gateway-attached
2718
+ # firewalls.
2719
+ # @return [String]
2720
+ #
2721
+ # @!attribute [rw] transit_gateway_owner_account_id
2722
+ # The Amazon Web Services account ID that owns the transit gateway.
2723
+ # This may be different from the firewall owner's account ID when
2724
+ # using a shared transit gateway.
2725
+ # @return [String]
2726
+ #
2727
+ # @!attribute [rw] availability_zone_mappings
2728
+ # The Availability Zones where the firewall endpoints are created for
2729
+ # a transit gateway-attached firewall. Each mapping specifies an
2730
+ # Availability Zone where the firewall processes traffic.
2731
+ # @return [Array<Types::AvailabilityZoneMapping>]
2732
+ #
2733
+ # @!attribute [rw] availability_zone_change_protection
2734
+ # A setting indicating whether the firewall is protected against
2735
+ # changes to its Availability Zone configuration. When set to `TRUE`,
2736
+ # you must first disable this protection before adding or removing
2737
+ # Availability Zones.
2738
+ # @return [Boolean]
2739
+ #
2333
2740
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/Firewall AWS API Documentation
2334
2741
  #
2335
2742
  class Firewall < Struct.new(
@@ -2346,7 +2753,11 @@ module Aws::NetworkFirewall
2346
2753
  :tags,
2347
2754
  :encryption_configuration,
2348
2755
  :number_of_associations,
2349
- :enabled_analysis_types)
2756
+ :enabled_analysis_types,
2757
+ :transit_gateway_id,
2758
+ :transit_gateway_owner_account_id,
2759
+ :availability_zone_mappings,
2760
+ :availability_zone_change_protection)
2350
2761
  SENSITIVE = []
2351
2762
  include Aws::Structure
2352
2763
  end
@@ -2364,11 +2775,18 @@ module Aws::NetworkFirewall
2364
2775
  # The Amazon Resource Name (ARN) of the firewall.
2365
2776
  # @return [String]
2366
2777
  #
2778
+ # @!attribute [rw] transit_gateway_attachment_id
2779
+ # The unique identifier of the transit gateway attachment associated
2780
+ # with this firewall. This field is only present for transit
2781
+ # gateway-attached firewalls.
2782
+ # @return [String]
2783
+ #
2367
2784
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallMetadata AWS API Documentation
2368
2785
  #
2369
2786
  class FirewallMetadata < Struct.new(
2370
2787
  :firewall_name,
2371
- :firewall_arn)
2788
+ :firewall_arn,
2789
+ :transit_gateway_attachment_id)
2372
2790
  SENSITIVE = []
2373
2791
  include Aws::Structure
2374
2792
  end
@@ -2641,13 +3059,21 @@ module Aws::NetworkFirewall
2641
3059
  # all of the reference sets in a firewall.
2642
3060
  # @return [Types::CapacityUsageSummary]
2643
3061
  #
3062
+ # @!attribute [rw] transit_gateway_attachment_sync_state
3063
+ # The synchronization state of the transit gateway attachment. This
3064
+ # indicates whether the firewall's transit gateway configuration is
3065
+ # properly synchronized and operational. Use this to verify that your
3066
+ # transit gateway configuration changes have been applied.
3067
+ # @return [Types::TransitGatewayAttachmentSyncState]
3068
+ #
2644
3069
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallStatus AWS API Documentation
2645
3070
  #
2646
3071
  class FirewallStatus < Struct.new(
2647
3072
  :status,
2648
3073
  :configuration_sync_state_summary,
2649
3074
  :sync_states,
2650
- :capacity_usage_summary)
3075
+ :capacity_usage_summary,
3076
+ :transit_gateway_attachment_sync_state)
2651
3077
  SENSITIVE = []
2652
3078
  include Aws::Structure
2653
3079
  end
@@ -4166,6 +4592,67 @@ module Aws::NetworkFirewall
4166
4592
  include Aws::Structure
4167
4593
  end
4168
4594
 
4595
+ # @!attribute [rw] transit_gateway_attachment_id
4596
+ # Required. The unique identifier of the transit gateway attachment to
4597
+ # reject. This ID is returned in the response when creating a transit
4598
+ # gateway-attached firewall.
4599
+ # @return [String]
4600
+ #
4601
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/RejectNetworkFirewallTransitGatewayAttachmentRequest AWS API Documentation
4602
+ #
4603
+ class RejectNetworkFirewallTransitGatewayAttachmentRequest < Struct.new(
4604
+ :transit_gateway_attachment_id)
4605
+ SENSITIVE = []
4606
+ include Aws::Structure
4607
+ end
4608
+
4609
+ # @!attribute [rw] transit_gateway_attachment_id
4610
+ # The unique identifier of the transit gateway attachment that was
4611
+ # rejected.
4612
+ # @return [String]
4613
+ #
4614
+ # @!attribute [rw] transit_gateway_attachment_status
4615
+ # The current status of the transit gateway attachment. Valid values
4616
+ # are:
4617
+ #
4618
+ # * `CREATING` - The attachment is being created
4619
+ #
4620
+ # * `DELETING` - The attachment is being deleted
4621
+ #
4622
+ # * `DELETED` - The attachment has been deleted
4623
+ #
4624
+ # * `FAILED` - The attachment creation has failed and cannot be
4625
+ # recovered
4626
+ #
4627
+ # * `ERROR` - The attachment is in an error state that might be
4628
+ # recoverable
4629
+ #
4630
+ # * `READY` - The attachment is active and processing traffic
4631
+ #
4632
+ # * `PENDING_ACCEPTANCE` - The attachment is waiting to be accepted
4633
+ #
4634
+ # * `REJECTING` - The attachment is in the process of being rejected
4635
+ #
4636
+ # * `REJECTED` - The attachment has been rejected
4637
+ #
4638
+ # For information about troubleshooting endpoint failures, see
4639
+ # [Troubleshooting firewall endpoint failures][1] in the *Network
4640
+ # Firewall Developer Guide*.
4641
+ #
4642
+ #
4643
+ #
4644
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/firewall-troubleshooting-endpoint-failures.html
4645
+ # @return [String]
4646
+ #
4647
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/RejectNetworkFirewallTransitGatewayAttachmentResponse AWS API Documentation
4648
+ #
4649
+ class RejectNetworkFirewallTransitGatewayAttachmentResponse < Struct.new(
4650
+ :transit_gateway_attachment_id,
4651
+ :transit_gateway_attachment_status)
4652
+ SENSITIVE = []
4653
+ include Aws::Structure
4654
+ end
4655
+
4169
4656
  # Unable to locate a resource using the parameters that you provided.
4170
4657
  #
4171
4658
  # @!attribute [rw] message
@@ -4397,7 +4884,7 @@ module Aws::NetworkFirewall
4397
4884
  # @return [Types::SourceMetadata]
4398
4885
  #
4399
4886
  # @!attribute [rw] sns_topic
4400
- # The Amazon resource name (ARN) of the Amazon Simple Notification
4887
+ # The Amazon Resource Name (ARN) of the Amazon Simple Notification
4401
4888
  # Service SNS topic that's used to record changes to the managed rule
4402
4889
  # group. You can subscribe to the SNS topic to receive notifications
4403
4890
  # when the managed rule group is modified, such as for new versions
@@ -4481,7 +4968,8 @@ module Aws::NetworkFirewall
4481
4968
  end
4482
4969
 
4483
4970
  # Settings that are available for use in the rules in the RuleGroup
4484
- # where this is defined.
4971
+ # where this is defined. See CreateRuleGroup or UpdateRuleGroup for
4972
+ # usage.
4485
4973
  #
4486
4974
  # @!attribute [rw] ip_sets
4487
4975
  # A list of IP addresses and address ranges, in CIDR notation.
@@ -4672,9 +5160,8 @@ module Aws::NetworkFirewall
4672
5160
  # Authority.
4673
5161
  #
4674
5162
  # For more information about configuring certificates for outbound
4675
- # inspection, see [Using SSL/TLS certificates with certificates with
4676
- # TLS inspection configurations][1] in the *Network Firewall Developer
4677
- # Guide*.
5163
+ # inspection, see [Using SSL/TLS certificates with TLS inspection
5164
+ # configurations][1] in the *Network Firewall Developer Guide*.
4678
5165
  #
4679
5166
  # For information about working with certificates in ACM, see
4680
5167
  # [Importing certificates][2] in the *Certificate Manager User Guide*.
@@ -4991,17 +5478,18 @@ module Aws::NetworkFirewall
4991
5478
  #
4992
5479
  # @!attribute [rw] rule_order
4993
5480
  # Indicates how to manage the order of stateful rule evaluation for
4994
- # the policy. `STRICT_ORDER` is the default and recommended option.
4995
- # With `STRICT_ORDER`, provide your rules in the order that you want
4996
- # them to be evaluated. You can then choose one or more default
4997
- # actions for packets that don't match any rules. Choose
4998
- # `STRICT_ORDER` to have the stateful rules engine determine the
4999
- # evaluation order of your rules. The default action for this rule
5000
- # order is `PASS`, followed by `DROP`, `REJECT`, and `ALERT` actions.
5001
- # Stateful rules are provided to the rule engine as Suricata
5002
- # compatible strings, and Suricata evaluates them based on your
5003
- # settings. For more information, see [Evaluation order for stateful
5004
- # rules][1] in the *Network Firewall Developer Guide*.
5481
+ # the policy. `STRICT_ORDER` is the recommended option, but
5482
+ # `DEFAULT_ACTION_ORDER` is the default option. With `STRICT_ORDER`,
5483
+ # provide your rules in the order that you want them to be evaluated.
5484
+ # You can then choose one or more default actions for packets that
5485
+ # don't match any rules. Choose `STRICT_ORDER` to have the stateful
5486
+ # rules engine determine the evaluation order of your rules. The
5487
+ # default action for this rule order is `PASS`, followed by `DROP`,
5488
+ # `REJECT`, and `ALERT` actions. Stateful rules are provided to the
5489
+ # rule engine as Suricata compatible strings, and Suricata evaluates
5490
+ # them based on your settings. For more information, see [Evaluation
5491
+ # order for stateful rules][1] in the *Network Firewall Developer
5492
+ # Guide*.
5005
5493
  #
5006
5494
  #
5007
5495
  #
@@ -5602,6 +6090,87 @@ module Aws::NetworkFirewall
5602
6090
  include Aws::Structure
5603
6091
  end
5604
6092
 
6093
+ # Contains information about the synchronization state of a transit
6094
+ # gateway attachment, including its current status and any error
6095
+ # messages. Network Firewall uses this to track the state of your
6096
+ # transit gateway configuration changes.
6097
+ #
6098
+ # @!attribute [rw] attachment_id
6099
+ # The unique identifier of the transit gateway attachment.
6100
+ # @return [String]
6101
+ #
6102
+ # @!attribute [rw] transit_gateway_attachment_status
6103
+ # The current status of the transit gateway attachment.
6104
+ #
6105
+ # Valid values are:
6106
+ #
6107
+ # * `CREATING` - The attachment is being created
6108
+ #
6109
+ # * `DELETING` - The attachment is being deleted
6110
+ #
6111
+ # * `DELETED` - The attachment has been deleted
6112
+ #
6113
+ # * `FAILED` - The attachment creation has failed and cannot be
6114
+ # recovered
6115
+ #
6116
+ # * `ERROR` - The attachment is in an error state that might be
6117
+ # recoverable
6118
+ #
6119
+ # * `READY` - The attachment is active and processing traffic
6120
+ #
6121
+ # * `PENDING_ACCEPTANCE` - The attachment is waiting to be accepted
6122
+ #
6123
+ # * `REJECTING` - The attachment is in the process of being rejected
6124
+ #
6125
+ # * `REJECTED` - The attachment has been rejected
6126
+ # @return [String]
6127
+ #
6128
+ # @!attribute [rw] status_message
6129
+ # A message providing additional information about the current status,
6130
+ # particularly useful when the transit gateway attachment is in a
6131
+ # non-`READY` state.
6132
+ #
6133
+ # Valid values are:
6134
+ #
6135
+ # * `CREATING` - The attachment is being created
6136
+ #
6137
+ # * `DELETING` - The attachment is being deleted
6138
+ #
6139
+ # * `DELETED` - The attachment has been deleted
6140
+ #
6141
+ # * `FAILED` - The attachment creation has failed and cannot be
6142
+ # recovered
6143
+ #
6144
+ # * `ERROR` - The attachment is in an error state that might be
6145
+ # recoverable
6146
+ #
6147
+ # * `READY` - The attachment is active and processing traffic
6148
+ #
6149
+ # * `PENDING_ACCEPTANCE` - The attachment is waiting to be accepted
6150
+ #
6151
+ # * `REJECTING` - The attachment is in the process of being rejected
6152
+ #
6153
+ # * `REJECTED` - The attachment has been rejected
6154
+ #
6155
+ # For information about troubleshooting endpoint failures, see
6156
+ # [Troubleshooting firewall endpoint failures][1] in the *Network
6157
+ # Firewall Developer Guide*.
6158
+ #
6159
+ #
6160
+ #
6161
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/firewall-troubleshooting-endpoint-failures.html
6162
+ # @return [String]
6163
+ #
6164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/TransitGatewayAttachmentSyncState AWS API Documentation
6165
+ #
6166
+ class TransitGatewayAttachmentSyncState < Struct.new(
6167
+ :attachment_id,
6168
+ :transit_gateway_attachment_status,
6169
+ :status_message)
6170
+ SENSITIVE = []
6171
+ include Aws::Structure
6172
+ end
6173
+
5605
6174
  # A unique source IP address that connected to a domain.
5606
6175
  #
5607
6176
  # @!attribute [rw] count
@@ -5649,6 +6218,106 @@ module Aws::NetworkFirewall
5649
6218
  #
5650
6219
  class UntagResourceResponse < Aws::EmptyStructure; end
5651
6220
 
6221
+ # @!attribute [rw] update_token
6222
+ # An optional token that you can use for optimistic locking. Network
6223
+ # Firewall returns a token to your requests that access the firewall.
6224
+ # The token marks the state of the firewall resource at the time of
6225
+ # the request.
6226
+ #
6227
+ # To make an unconditional change to the firewall, omit the token in
6228
+ # your update request. Without the token, Network Firewall performs
6229
+ # your updates regardless of whether the firewall has changed since
6230
+ # you last retrieved it.
6231
+ #
6232
+ # To make a conditional change to the firewall, provide the token in
6233
+ # your update request. Network Firewall uses the token to ensure that
6234
+ # the firewall hasn't changed since you last retrieved it. If it has
6235
+ # changed, the operation fails with an `InvalidTokenException`. If
6236
+ # this happens, retrieve the firewall again to get a current copy of
6237
+ # it with a new token. Reapply your changes as needed, then try the
6238
+ # operation again using the new token.
6239
+ # @return [String]
6240
+ #
6241
+ # @!attribute [rw] firewall_arn
6242
+ # The Amazon Resource Name (ARN) of the firewall.
6243
+ #
6244
+ # You must specify the ARN or the name, and you can specify both.
6245
+ # @return [String]
6246
+ #
6247
+ # @!attribute [rw] firewall_name
6248
+ # The descriptive name of the firewall. You can't change the name of
6249
+ # a firewall after you create it.
6250
+ #
6251
+ # You must specify the ARN or the name, and you can specify both.
6252
+ # @return [String]
6253
+ #
6254
+ # @!attribute [rw] availability_zone_change_protection
6255
+ # A setting indicating whether the firewall is protected against
6256
+ # changes to the subnet associations. Use this setting to protect
6257
+ # against accidentally modifying the subnet associations for a
6258
+ # firewall that is in use. When you create a firewall, the operation
6259
+ # initializes this setting to `TRUE`.
6260
+ # @return [Boolean]
6261
+ #
6262
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/UpdateAvailabilityZoneChangeProtectionRequest AWS API Documentation
6263
+ #
6264
+ class UpdateAvailabilityZoneChangeProtectionRequest < Struct.new(
6265
+ :update_token,
6266
+ :firewall_arn,
6267
+ :firewall_name,
6268
+ :availability_zone_change_protection)
6269
+ SENSITIVE = []
6270
+ include Aws::Structure
6271
+ end
6272
+
6273
+ # @!attribute [rw] update_token
6274
+ # An optional token that you can use for optimistic locking. Network
6275
+ # Firewall returns a token to your requests that access the firewall.
6276
+ # The token marks the state of the firewall resource at the time of
6277
+ # the request.
6278
+ #
6279
+ # To make an unconditional change to the firewall, omit the token in
6280
+ # your update request. Without the token, Network Firewall performs
6281
+ # your updates regardless of whether the firewall has changed since
6282
+ # you last retrieved it.
6283
+ #
6284
+ # To make a conditional change to the firewall, provide the token in
6285
+ # your update request. Network Firewall uses the token to ensure that
6286
+ # the firewall hasn't changed since you last retrieved it. If it has
6287
+ # changed, the operation fails with an `InvalidTokenException`. If
6288
+ # this happens, retrieve the firewall again to get a current copy of
6289
+ # it with a new token. Reapply your changes as needed, then try the
6290
+ # operation again using the new token.
6291
+ # @return [String]
6292
+ #
6293
+ # @!attribute [rw] firewall_arn
6294
+ # The Amazon Resource Name (ARN) of the firewall.
6295
+ # @return [String]
6296
+ #
6297
+ # @!attribute [rw] firewall_name
6298
+ # The descriptive name of the firewall. You can't change the name of
6299
+ # a firewall after you create it.
6300
+ # @return [String]
6301
+ #
6302
+ # @!attribute [rw] availability_zone_change_protection
6303
+ # A setting indicating whether the firewall is protected against
6304
+ # changes to the subnet associations. Use this setting to protect
6305
+ # against accidentally modifying the subnet associations for a
6306
+ # firewall that is in use. When you create a firewall, the operation
6307
+ # initializes this setting to `TRUE`.
6308
+ # @return [Boolean]
6309
+ #
6310
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/UpdateAvailabilityZoneChangeProtectionResponse AWS API Documentation
6311
+ #
6312
+ class UpdateAvailabilityZoneChangeProtectionResponse < Struct.new(
6313
+ :update_token,
6314
+ :firewall_arn,
6315
+ :firewall_name,
6316
+ :availability_zone_change_protection)
6317
+ SENSITIVE = []
6318
+ include Aws::Structure
6319
+ end
6320
+
5652
6321
  # @!attribute [rw] enabled_analysis_types
5653
6322
  # An optional setting indicating the specific traffic analysis types
5654
6323
  # to enable on the firewall.
@@ -6273,12 +6942,27 @@ module Aws::NetworkFirewall
6273
6942
  # firewall.
6274
6943
  # @return [Types::LoggingConfiguration]
6275
6944
  #
6945
+ # @!attribute [rw] enable_monitoring_dashboard
6946
+ # A boolean that lets you enable or disable the detailed firewall
6947
+ # monitoring dashboard on the firewall.
6948
+ #
6949
+ # The monitoring dashboard provides comprehensive visibility into your
6950
+ # firewall's flow logs and alert logs. After you enable detailed
6951
+ # monitoring, you can access these dashboards directly from the
6952
+ # **Monitoring** page of the Network Firewall console.
6953
+ #
6954
+ # Specify `TRUE` to enable the the detailed monitoring dashboard on
6955
+ # the firewall. Specify `FALSE` to disable the the detailed monitoring
6956
+ # dashboard on the firewall.
6957
+ # @return [Boolean]
6958
+ #
6276
6959
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/UpdateLoggingConfigurationRequest AWS API Documentation
6277
6960
  #
6278
6961
  class UpdateLoggingConfigurationRequest < Struct.new(
6279
6962
  :firewall_arn,
6280
6963
  :firewall_name,
6281
- :logging_configuration)
6964
+ :logging_configuration,
6965
+ :enable_monitoring_dashboard)
6282
6966
  SENSITIVE = []
6283
6967
  include Aws::Structure
6284
6968
  end
@@ -6296,12 +6980,22 @@ module Aws::NetworkFirewall
6296
6980
  # Defines how Network Firewall performs logging for a Firewall.
6297
6981
  # @return [Types::LoggingConfiguration]
6298
6982
  #
6983
+ # @!attribute [rw] enable_monitoring_dashboard
6984
+ # A boolean that reflects whether or not the firewall monitoring
6985
+ # dashboard is enabled on a firewall.
6986
+ #
6987
+ # Returns `TRUE` when the firewall monitoring dashboard is enabled on
6988
+ # the firewall. Returns `FALSE` when the firewall monitoring dashboard
6989
+ # is not enabled on the firewall.
6990
+ # @return [Boolean]
6991
+ #
6299
6992
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/UpdateLoggingConfigurationResponse AWS API Documentation
6300
6993
  #
6301
6994
  class UpdateLoggingConfigurationResponse < Struct.new(
6302
6995
  :firewall_arn,
6303
6996
  :firewall_name,
6304
- :logging_configuration)
6997
+ :logging_configuration,
6998
+ :enable_monitoring_dashboard)
6305
6999
  SENSITIVE = []
6306
7000
  include Aws::Structure
6307
7001
  end