aws-sdk-networkfirewall 1.106.0 → 1.108.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.
@@ -729,11 +729,11 @@ module Aws::NetworkFirewall
729
729
  # Defines the mapping between an Availability Zone and a firewall
730
730
  # endpoint for a transit gateway-attached firewall. Each mapping
731
731
  # represents where the firewall can process traffic. You use these
732
- # mappings when calling CreateFirewall, AssociateAvailabilityZones, and
733
- # DisassociateAvailabilityZones.
732
+ # mappings when calling `CreateFirewall`, `AssociateAvailabilityZones`,
733
+ # and `DisassociateAvailabilityZones`.
734
734
  #
735
735
  # To retrieve the current Availability Zone mappings for a firewall, use
736
- # DescribeFirewall.
736
+ # `DescribeFirewall`.
737
737
  #
738
738
  # @!attribute [rw] availability_zone
739
739
  # The ID of the Availability Zone where the firewall endpoint is
@@ -1156,6 +1156,88 @@ module Aws::NetworkFirewall
1156
1156
  include Aws::Structure
1157
1157
  end
1158
1158
 
1159
+ # @!attribute [rw] firewall_policy_v2_name
1160
+ # The descriptive name of the Next Generation policy. You can't
1161
+ # change the name of a firewall policy after you create it.
1162
+ # @return [String]
1163
+ #
1164
+ # @!attribute [rw] firewall_policy_v2
1165
+ # The rule groups and other settings that define the Next Generation
1166
+ # policy.
1167
+ # @return [Types::FirewallPolicyV2]
1168
+ #
1169
+ # @!attribute [rw] description
1170
+ # A description of the firewall policy.
1171
+ # @return [String]
1172
+ #
1173
+ # @!attribute [rw] tags
1174
+ # The key:value pairs to associate with the resource.
1175
+ # @return [Array<Types::Tag>]
1176
+ #
1177
+ # @!attribute [rw] dry_run
1178
+ # Indicates whether you want Network Firewall to just check the
1179
+ # validity of the request, rather than run the request.
1180
+ #
1181
+ # If set to `TRUE`, Network Firewall checks whether the request can
1182
+ # run successfully, but doesn't actually make the requested changes.
1183
+ # The call returns the value that the request would return if you ran
1184
+ # it with dry run set to `FALSE`, but doesn't make additions or
1185
+ # changes to your resources. This option allows you to make sure that
1186
+ # you have the required permissions to run the request and that your
1187
+ # request parameters are valid.
1188
+ #
1189
+ # If set to `FALSE`, Network Firewall makes the requested changes to
1190
+ # your resources.
1191
+ # @return [Boolean]
1192
+ #
1193
+ # @!attribute [rw] encryption_configuration
1194
+ # A complex type that contains settings for encryption of your
1195
+ # firewall policy resources.
1196
+ # @return [Types::EncryptionConfiguration]
1197
+ #
1198
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/CreateFirewallPolicyV2Request AWS API Documentation
1199
+ #
1200
+ class CreateFirewallPolicyV2Request < Struct.new(
1201
+ :firewall_policy_v2_name,
1202
+ :firewall_policy_v2,
1203
+ :description,
1204
+ :tags,
1205
+ :dry_run,
1206
+ :encryption_configuration)
1207
+ SENSITIVE = []
1208
+ include Aws::Structure
1209
+ end
1210
+
1211
+ # @!attribute [rw] update_token
1212
+ # A token used for optimistic locking. Network Firewall returns a
1213
+ # token to your requests that access the firewall policy. The token
1214
+ # marks the state of the policy resource at the time of the request.
1215
+ #
1216
+ # To make changes to the policy, you provide the token in your
1217
+ # request. Network Firewall uses the token to ensure that the policy
1218
+ # hasn't changed since you last retrieved it. If it has changed, the
1219
+ # operation fails with an `InvalidTokenException`. If this happens,
1220
+ # retrieve the firewall policy again to get a current copy of it with
1221
+ # current token. Reapply your changes as needed, then try the
1222
+ # operation again using the new token.
1223
+ # @return [String]
1224
+ #
1225
+ # @!attribute [rw] firewall_policy_v2_response
1226
+ # The high-level properties of the Next Generation policy. This, along
1227
+ # with the FirewallPolicyV2, define the policy. You can retrieve all
1228
+ # objects for a Next Generation policy by calling
1229
+ # DescribeFirewallPolicyV2.
1230
+ # @return [Types::FirewallPolicyV2Response]
1231
+ #
1232
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/CreateFirewallPolicyV2Response AWS API Documentation
1233
+ #
1234
+ class CreateFirewallPolicyV2Response < Struct.new(
1235
+ :update_token,
1236
+ :firewall_policy_v2_response)
1237
+ SENSITIVE = []
1238
+ include Aws::Structure
1239
+ end
1240
+
1159
1241
  # @!attribute [rw] firewall_name
1160
1242
  # The descriptive name of the firewall. You can't change the name of
1161
1243
  # a firewall after you create it.
@@ -1704,6 +1786,16 @@ module Aws::NetworkFirewall
1704
1786
  # </note>
1705
1787
  # @return [Types::RuleGroup]
1706
1788
  #
1789
+ # @!attribute [rw] firewall_rule_group
1790
+ # An object that defines the rules in a firewall engine rule group,
1791
+ # for use in a Next Generation policy.
1792
+ # @return [Types::FirewallRuleGroup]
1793
+ #
1794
+ # @!attribute [rw] ips_rule_group
1795
+ # An object that defines the rules in an IPS engine rule group, for
1796
+ # use in a Next Generation policy.
1797
+ # @return [Types::IpsRuleGroup]
1798
+ #
1707
1799
  # @!attribute [rw] rules
1708
1800
  # A string containing stateful rule group rules specifications in
1709
1801
  # Suricata flat format, with one rule per line. Use this to import
@@ -1721,9 +1813,18 @@ module Aws::NetworkFirewall
1721
1813
  # @return [String]
1722
1814
  #
1723
1815
  # @!attribute [rw] type
1724
- # Indicates whether the rule group is stateless or stateful. If the
1725
- # rule group is stateless, it contains stateless rules. If it is
1726
- # stateful, it contains stateful rules.
1816
+ # Indicates the type of the rule group. Valid values are:
1817
+ #
1818
+ # * `STATELESS` - Stateless rules, for use in a Classic Network
1819
+ # Firewall policy.
1820
+ #
1821
+ # * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
1822
+ # policy.
1823
+ #
1824
+ # * `FIREWALL` - Firewall engine rules, for use in a Next Generation
1825
+ # policy.
1826
+ #
1827
+ # * `IPS` - IPS engine rules, for use in a Next Generation policy.
1727
1828
  # @return [String]
1728
1829
  #
1729
1830
  # @!attribute [rw] description
@@ -1837,6 +1938,8 @@ module Aws::NetworkFirewall
1837
1938
  class CreateRuleGroupRequest < Struct.new(
1838
1939
  :rule_group_name,
1839
1940
  :rule_group,
1941
+ :firewall_rule_group,
1942
+ :ips_rule_group,
1840
1943
  :rules,
1841
1944
  :type,
1842
1945
  :description,
@@ -1990,8 +2093,8 @@ module Aws::NetworkFirewall
1990
2093
  #
1991
2094
  # @!attribute [rw] subnet_mapping
1992
2095
  # The ID for a subnet that's used in an association with a firewall.
1993
- # This is used in CreateFirewall, AssociateSubnets, and
1994
- # CreateVpcEndpointAssociation. Network Firewall creates an instance
2096
+ # This is used in `CreateFirewall`, `AssociateSubnets`, and
2097
+ # `CreateVpcEndpointAssociation`. Network Firewall creates an instance
1995
2098
  # of the associated firewall in each subnet that you specify, to
1996
2099
  # filter traffic in the subnet's Availability Zone.
1997
2100
  # @return [Types::SubnetMapping]
@@ -2156,6 +2259,41 @@ module Aws::NetworkFirewall
2156
2259
  include Aws::Structure
2157
2260
  end
2158
2261
 
2262
+ # @!attribute [rw] firewall_policy_v2_arn
2263
+ # The Amazon Resource Name (ARN) of the Next Generation policy.
2264
+ #
2265
+ # You must specify the ARN or the name, and you can specify both.
2266
+ # @return [String]
2267
+ #
2268
+ # @!attribute [rw] firewall_policy_v2_name
2269
+ # The descriptive name of the Next Generation policy. You can't
2270
+ # change the name of a firewall policy after you create it.
2271
+ #
2272
+ # You must specify the ARN or the name, and you can specify both.
2273
+ # @return [String]
2274
+ #
2275
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DeleteFirewallPolicyV2Request AWS API Documentation
2276
+ #
2277
+ class DeleteFirewallPolicyV2Request < Struct.new(
2278
+ :firewall_policy_v2_arn,
2279
+ :firewall_policy_v2_name)
2280
+ SENSITIVE = []
2281
+ include Aws::Structure
2282
+ end
2283
+
2284
+ # @!attribute [rw] firewall_policy_v2_response
2285
+ # The high-level properties of the Next Generation policy that you
2286
+ # asked to delete.
2287
+ # @return [Types::FirewallPolicyV2Response]
2288
+ #
2289
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DeleteFirewallPolicyV2Response AWS API Documentation
2290
+ #
2291
+ class DeleteFirewallPolicyV2Response < Struct.new(
2292
+ :firewall_policy_v2_response)
2293
+ SENSITIVE = []
2294
+ include Aws::Structure
2295
+ end
2296
+
2159
2297
  # @!attribute [rw] firewall_name
2160
2298
  # The descriptive name of the firewall. You can't change the name of
2161
2299
  # a firewall after you create it.
@@ -2471,9 +2609,18 @@ module Aws::NetworkFirewall
2471
2609
  # @return [String]
2472
2610
  #
2473
2611
  # @!attribute [rw] type
2474
- # Indicates whether the rule group is stateless or stateful. If the
2475
- # rule group is stateless, it contains stateless rules. If it is
2476
- # stateful, it contains stateful rules.
2612
+ # Indicates the type of the rule group. Valid values are:
2613
+ #
2614
+ # * `STATELESS` - Stateless rules, for use in a Classic Network
2615
+ # Firewall policy.
2616
+ #
2617
+ # * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
2618
+ # policy.
2619
+ #
2620
+ # * `FIREWALL` - Firewall engine rules, for use in a Next Generation
2621
+ # policy.
2622
+ #
2623
+ # * `IPS` - IPS engine rules, for use in a Next Generation policy.
2477
2624
  #
2478
2625
  # <note markdown="1"> This setting is required for requests that do not include the
2479
2626
  # `RuleGroupARN`.
@@ -2786,6 +2933,72 @@ module Aws::NetworkFirewall
2786
2933
  include Aws::Structure
2787
2934
  end
2788
2935
 
2936
+ # @!attribute [rw] firewall_policy_v2_arn
2937
+ # The Amazon Resource Name (ARN) of the Next Generation policy.
2938
+ #
2939
+ # You must specify the ARN or the name, and you can specify both.
2940
+ # @return [String]
2941
+ #
2942
+ # @!attribute [rw] firewall_policy_v2_name
2943
+ # The descriptive name of the Next Generation policy. You can't
2944
+ # change the name of a firewall policy after you create it.
2945
+ #
2946
+ # You must specify the ARN or the name, and you can specify both.
2947
+ # @return [String]
2948
+ #
2949
+ # @!attribute [rw] rule_output_format
2950
+ # The format in which to return the rules of any firewall engine rule
2951
+ # groups that are embedded in the policy. Specify `FIREWALL_RULES` for
2952
+ # structured `FirewallRule` objects or `RULES_STRING` for a
2953
+ # Suricata-compatible firewall-mode rule string. If you don't specify
2954
+ # a format, Network Firewall returns each embedded rule group in the
2955
+ # format you provided it in. Referenced rule groups aren't affected.
2956
+ # @return [String]
2957
+ #
2958
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeFirewallPolicyV2Request AWS API Documentation
2959
+ #
2960
+ class DescribeFirewallPolicyV2Request < Struct.new(
2961
+ :firewall_policy_v2_arn,
2962
+ :firewall_policy_v2_name,
2963
+ :rule_output_format)
2964
+ SENSITIVE = []
2965
+ include Aws::Structure
2966
+ end
2967
+
2968
+ # @!attribute [rw] update_token
2969
+ # A token used for optimistic locking. Network Firewall returns a
2970
+ # token to your requests that access the firewall policy. The token
2971
+ # marks the state of the policy resource at the time of the request.
2972
+ #
2973
+ # To make changes to the policy, you provide the token in your
2974
+ # request. Network Firewall uses the token to ensure that the policy
2975
+ # hasn't changed since you last retrieved it. If it has changed, the
2976
+ # operation fails with an `InvalidTokenException`. If this happens,
2977
+ # retrieve the firewall policy again to get a current copy of it with
2978
+ # current token. Reapply your changes as needed, then try the
2979
+ # operation again using the new token.
2980
+ # @return [String]
2981
+ #
2982
+ # @!attribute [rw] firewall_policy_v2_response
2983
+ # The high-level properties of the Next Generation policy. This, along
2984
+ # with the FirewallPolicyV2, define the policy.
2985
+ # @return [Types::FirewallPolicyV2Response]
2986
+ #
2987
+ # @!attribute [rw] firewall_policy_v2
2988
+ # The rule groups and other settings that define the specified Next
2989
+ # Generation policy.
2990
+ # @return [Types::FirewallPolicyV2]
2991
+ #
2992
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeFirewallPolicyV2Response AWS API Documentation
2993
+ #
2994
+ class DescribeFirewallPolicyV2Response < Struct.new(
2995
+ :update_token,
2996
+ :firewall_policy_v2_response,
2997
+ :firewall_policy_v2)
2998
+ SENSITIVE = []
2999
+ include Aws::Structure
3000
+ end
3001
+
2789
3002
  # @!attribute [rw] firewall_name
2790
3003
  # The descriptive name of the firewall. You can't change the name of
2791
3004
  # a firewall after you create it.
@@ -3375,9 +3588,18 @@ module Aws::NetworkFirewall
3375
3588
  # @return [String]
3376
3589
  #
3377
3590
  # @!attribute [rw] type
3378
- # Indicates whether the rule group is stateless or stateful. If the
3379
- # rule group is stateless, it contains stateless rules. If it is
3380
- # stateful, it contains stateful rules.
3591
+ # Indicates the type of the rule group. Valid values are:
3592
+ #
3593
+ # * `STATELESS` - Stateless rules, for use in a Classic Network
3594
+ # Firewall policy.
3595
+ #
3596
+ # * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
3597
+ # policy.
3598
+ #
3599
+ # * `FIREWALL` - Firewall engine rules, for use in a Next Generation
3600
+ # policy.
3601
+ #
3602
+ # * `IPS` - IPS engine rules, for use in a Next Generation policy.
3381
3603
  #
3382
3604
  # <note markdown="1"> This setting is required for requests that do not include the
3383
3605
  # `RuleGroupARN`.
@@ -3414,9 +3636,18 @@ module Aws::NetworkFirewall
3414
3636
  # @return [String]
3415
3637
  #
3416
3638
  # @!attribute [rw] type
3417
- # Indicates whether the rule group is stateless or stateful. If the
3418
- # rule group is stateless, it contains stateless rules. If it is
3419
- # stateful, it contains stateful rules.
3639
+ # Indicates the type of the rule group. Valid values are:
3640
+ #
3641
+ # * `STATELESS` - Stateless rules, for use in a Classic Network
3642
+ # Firewall policy.
3643
+ #
3644
+ # * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
3645
+ # policy.
3646
+ #
3647
+ # * `FIREWALL` - Firewall engine rules, for use in a Next Generation
3648
+ # policy.
3649
+ #
3650
+ # * `IPS` - IPS engine rules, for use in a Next Generation policy.
3420
3651
  #
3421
3652
  # <note markdown="1"> This setting is required for requests that do not include the
3422
3653
  # `RuleGroupARN`.
@@ -3490,9 +3721,18 @@ module Aws::NetworkFirewall
3490
3721
  # @return [String]
3491
3722
  #
3492
3723
  # @!attribute [rw] type
3493
- # Indicates whether the rule group is stateless or stateful. If the
3494
- # rule group is stateless, it contains stateless rules. If it is
3495
- # stateful, it contains stateful rules.
3724
+ # Indicates the type of the rule group. Valid values are:
3725
+ #
3726
+ # * `STATELESS` - Stateless rules, for use in a Classic Network
3727
+ # Firewall policy.
3728
+ #
3729
+ # * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
3730
+ # policy.
3731
+ #
3732
+ # * `FIREWALL` - Firewall engine rules, for use in a Next Generation
3733
+ # policy.
3734
+ #
3735
+ # * `IPS` - IPS engine rules, for use in a Next Generation policy.
3496
3736
  #
3497
3737
  # <note markdown="1"> This setting is required for requests that do not include the
3498
3738
  # `RuleGroupARN`.
@@ -3506,13 +3746,30 @@ module Aws::NetworkFirewall
3506
3746
  # routing. If set to `TRUE`, Network Firewall runs the analysis.
3507
3747
  # @return [Boolean]
3508
3748
  #
3749
+ # @!attribute [rw] rule_output_format
3750
+ # For a firewall engine rule group, the format in which to return the
3751
+ # rules. Specify one of the following values:
3752
+ #
3753
+ # * `FIREWALL_RULES` - Returns the rules as structured `FirewallRule`
3754
+ # objects.
3755
+ #
3756
+ # * `RULES_STRING` - Returns the rules as a Suricata-compatible
3757
+ # firewall-mode rule string.
3758
+ #
3759
+ # If you don't specify a format, Network Firewall returns the rules
3760
+ # in the format you provided them in. This setting applies only to
3761
+ # `FIREWALL` and `IPS` rule groups; IPS engine rule groups support
3762
+ # only `RULES_STRING`.
3763
+ # @return [String]
3764
+ #
3509
3765
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeRuleGroupRequest AWS API Documentation
3510
3766
  #
3511
3767
  class DescribeRuleGroupRequest < Struct.new(
3512
3768
  :rule_group_name,
3513
3769
  :rule_group_arn,
3514
3770
  :type,
3515
- :analyze_rule_group)
3771
+ :analyze_rule_group,
3772
+ :rule_output_format)
3516
3773
  SENSITIVE = []
3517
3774
  include Aws::Structure
3518
3775
  end
@@ -3547,6 +3804,16 @@ module Aws::NetworkFirewall
3547
3804
  # you can use a firewall policy in more than one firewall.
3548
3805
  # @return [Types::RuleGroup]
3549
3806
  #
3807
+ # @!attribute [rw] firewall_rule_group
3808
+ # The object that defines the rules in a firewall engine rule group,
3809
+ # for use in a Next Generation policy.
3810
+ # @return [Types::FirewallRuleGroup]
3811
+ #
3812
+ # @!attribute [rw] ips_rule_group
3813
+ # The object that defines the rules in an IPS engine rule group, for
3814
+ # use in a Next Generation policy.
3815
+ # @return [Types::IpsRuleGroup]
3816
+ #
3550
3817
  # @!attribute [rw] rule_group_response
3551
3818
  # The high-level properties of a rule group. This, along with the
3552
3819
  # RuleGroup, define the rule group. You can retrieve all objects for a
@@ -3558,6 +3825,8 @@ module Aws::NetworkFirewall
3558
3825
  class DescribeRuleGroupResponse < Struct.new(
3559
3826
  :update_token,
3560
3827
  :rule_group,
3828
+ :firewall_rule_group,
3829
+ :ips_rule_group,
3561
3830
  :rule_group_response)
3562
3831
  SENSITIVE = []
3563
3832
  include Aws::Structure
@@ -4409,12 +4678,12 @@ module Aws::NetworkFirewall
4409
4678
  # The settings that enable resolved IP validation for the policy.
4410
4679
  # Resolved IP validation verifies that a connection's destination IP
4411
4680
  # address is one that the Amazon Route 53 Resolver returned in a DNS
4412
- # response for a domain. The response must come from a VPC that's
4413
- # associated with the Route 53 Resolver DNS Firewall rule group that
4414
- # you specify. This checks how the destination IP address was
4415
- # obtained, instead of relying only on the domain that the client
4416
- # asserts in its TLS Server Name Indication (SNI) or HTTP `Host`
4417
- # header. For more information, see Route53ResolvedIPValidation.
4681
+ # response for a domain. A VPC that's associated with the Route 53
4682
+ # Resolver DNS Firewall rule group that you specify must send the
4683
+ # response. This checks how the destination IP address was obtained,
4684
+ # instead of relying only on the domain that the client asserts in its
4685
+ # TLS Server Name Indication (SNI) or HTTP `Host` header. For more
4686
+ # information, see Route53ResolvedIPValidation.
4418
4687
  # @return [Types::Route53ResolvedIPValidation]
4419
4688
  #
4420
4689
  # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallPolicy AWS API Documentation
@@ -4564,41 +4833,572 @@ module Aws::NetworkFirewall
4564
4833
  # policy.
4565
4834
  # @return [Integer]
4566
4835
  #
4567
- # @!attribute [rw] encryption_configuration
4568
- # A complex type that contains the Amazon Web Services KMS encryption
4569
- # configuration settings for your firewall policy.
4570
- # @return [Types::EncryptionConfiguration]
4836
+ # @!attribute [rw] encryption_configuration
4837
+ # A complex type that contains the Amazon Web Services KMS encryption
4838
+ # configuration settings for your firewall policy.
4839
+ # @return [Types::EncryptionConfiguration]
4840
+ #
4841
+ # @!attribute [rw] errors
4842
+ # Any configuration errors that apply to the firewall policy. Network
4843
+ # Firewall detects these errors asynchronously, after you create or
4844
+ # update the policy, so an error can appear after the request that
4845
+ # caused it has already succeeded. Each entry describes the problem
4846
+ # and how to resolve it, and Network Firewall clears it automatically
4847
+ # after you resolve the problem.
4848
+ # @return [Array<Types::FirewallPolicyError>]
4849
+ #
4850
+ # @!attribute [rw] last_modified_time
4851
+ # The last time that the firewall policy was changed.
4852
+ # @return [Time]
4853
+ #
4854
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallPolicyResponse AWS API Documentation
4855
+ #
4856
+ class FirewallPolicyResponse < Struct.new(
4857
+ :firewall_policy_name,
4858
+ :firewall_policy_arn,
4859
+ :firewall_policy_id,
4860
+ :description,
4861
+ :firewall_policy_status,
4862
+ :status_message,
4863
+ :tags,
4864
+ :consumed_stateless_rule_capacity,
4865
+ :consumed_stateful_rule_capacity,
4866
+ :consumed_stateful_domain_capacity,
4867
+ :number_of_associations,
4868
+ :encryption_configuration,
4869
+ :errors,
4870
+ :last_modified_time)
4871
+ SENSITIVE = []
4872
+ include Aws::Structure
4873
+ end
4874
+
4875
+ # The object that defines a Next Generation policy. This, along with the
4876
+ # FirewallPolicyV2Response, define the policy.
4877
+ #
4878
+ # A Next Generation policy defines how the firewall engine and IPS
4879
+ # engine inspect and control your VPC network traffic. You define the
4880
+ # policy as a firewall section and an IPS section, each a collection of
4881
+ # rule groups, along with policy-wide settings such as the policy mode
4882
+ # and default actions. For more information, see [Next Generation
4883
+ # policies][1] in the *Network Firewall Developer Guide*.
4884
+ #
4885
+ #
4886
+ #
4887
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/firewall-policies-v2.html
4888
+ #
4889
+ # @!attribute [rw] firewall_rule_group_entries
4890
+ # The firewall section of the policy—the rule groups that the firewall
4891
+ # engine evaluates. Each entry references an existing firewall engine
4892
+ # rule group or embeds a rule group directly in the policy, and each
4893
+ # entry has a unique priority that sets its evaluation order within
4894
+ # the section.
4895
+ # @return [Array<Types::FirewallRuleGroupEntry>]
4896
+ #
4897
+ # @!attribute [rw] ips_rule_group_entries
4898
+ # The IPS section of the policy—the rule groups that the IPS engine
4899
+ # evaluates. Each entry references an existing IPS engine rule group
4900
+ # or embeds a rule group directly in the policy. IPS section entries
4901
+ # don't use a priority.
4902
+ # @return [Array<Types::IpsRuleGroupEntry>]
4903
+ #
4904
+ # @!attribute [rw] policy_mode
4905
+ # Indicates whether the policy's engines enforce their verdicts or
4906
+ # only report them. In `ENFORCE` mode, the firewall engine and IPS
4907
+ # engine apply their verdicts to traffic. In `MONITOR` mode, the
4908
+ # engines evaluate traffic and generate logs and metrics, but don't
4909
+ # block traffic, so you can observe how a policy would behave before
4910
+ # you enforce it. For more information, see [Next Generation
4911
+ # policies][1] in the *Network Firewall Developer Guide*.
4912
+ #
4913
+ #
4914
+ #
4915
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/firewall-policies-v2.html
4916
+ # @return [String]
4917
+ #
4918
+ # @!attribute [rw] firewall_default_action
4919
+ # The action that the firewall engine takes on traffic that doesn't
4920
+ # match any firewall engine rule at a hook. The firewall engine is
4921
+ # drop by default. You can set the default action to one of the
4922
+ # following:
4923
+ #
4924
+ # * `DROP` - Block the traffic.
4925
+ #
4926
+ # * `ACCEPT` - Allow the traffic.
4927
+ #
4928
+ # * `REJECT` - Block the traffic and send a TCP reset packet back to
4929
+ # the client.
4930
+ #
4931
+ # * `ALERT` - Allow the traffic and generate an alert log for the
4932
+ # traffic that reaches the default action at every hook. This is
4933
+ # distinct from setting the policy mode to `MONITOR`.
4934
+ #
4935
+ # For more information, see [Next Generation policies][1] in the
4936
+ # *Network Firewall Developer Guide*.
4937
+ #
4938
+ #
4939
+ #
4940
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/firewall-policies-v2.html
4941
+ # @return [String]
4942
+ #
4943
+ # @!attribute [rw] stateful_engine_options
4944
+ # Additional options governing how the engines handle stateful
4945
+ # traffic, such as the stream exception policy and flow timeouts.
4946
+ # @return [Types::StatefulEngineOptionsV2]
4947
+ #
4948
+ # @!attribute [rw] tls_inspection_configuration_arn
4949
+ # The Amazon Resource Name (ARN) of the TLS inspection configuration
4950
+ # to use to decrypt traffic for inspection. Next Generation policies
4951
+ # support session holding only. For more information, see [Inspecting
4952
+ # SSL/TLS traffic with TLS inspection configurations][1] in the
4953
+ # *Network Firewall Developer Guide*.
4954
+ #
4955
+ #
4956
+ #
4957
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/tls-inspection.html
4958
+ # @return [String]
4959
+ #
4960
+ # @!attribute [rw] policy_variables
4961
+ # Contains variables that you can use to override default Suricata
4962
+ # settings in your Next Generation policy.
4963
+ # @return [Types::PolicyVariables]
4964
+ #
4965
+ # @!attribute [rw] route_53_resolved_ip_validation
4966
+ # The settings that enable resolved IP validation for the Next
4967
+ # Generation policy. Resolved IP validation verifies that a
4968
+ # connection's destination IP address is one that the Amazon Route 53
4969
+ # Resolver returned in a DNS response for a domain. A VPC that's
4970
+ # associated with the Route 53 Resolver DNS Firewall rule group that
4971
+ # you specify must send the response. This checks how the destination
4972
+ # IP address was obtained, instead of relying only on the domain that
4973
+ # the client asserts in its TLS Server Name Indication (SNI) or HTTP
4974
+ # `Host` header. For more information, see
4975
+ # Route53ResolvedIPValidation.
4976
+ # @return [Types::Route53ResolvedIPValidation]
4977
+ #
4978
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallPolicyV2 AWS API Documentation
4979
+ #
4980
+ class FirewallPolicyV2 < Struct.new(
4981
+ :firewall_rule_group_entries,
4982
+ :ips_rule_group_entries,
4983
+ :policy_mode,
4984
+ :firewall_default_action,
4985
+ :stateful_engine_options,
4986
+ :tls_inspection_configuration_arn,
4987
+ :policy_variables,
4988
+ :route_53_resolved_ip_validation)
4989
+ SENSITIVE = []
4990
+ include Aws::Structure
4991
+ end
4992
+
4993
+ # High-level information about a Next Generation policy, returned in a
4994
+ # list of policies. To retrieve the policy's full properties, rule
4995
+ # groups, and settings, use the Next Generation policy describe
4996
+ # operation.
4997
+ #
4998
+ # @!attribute [rw] name
4999
+ # The descriptive name of the Next Generation policy. You can't
5000
+ # change the name of a firewall policy after you create it.
5001
+ # @return [String]
5002
+ #
5003
+ # @!attribute [rw] arn
5004
+ # The Amazon Resource Name (ARN) of the Next Generation policy.
5005
+ # @return [String]
5006
+ #
5007
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallPolicyV2Metadata AWS API Documentation
5008
+ #
5009
+ class FirewallPolicyV2Metadata < Struct.new(
5010
+ :name,
5011
+ :arn)
5012
+ SENSITIVE = []
5013
+ include Aws::Structure
5014
+ end
5015
+
5016
+ # The high-level properties of a Next Generation policy. This includes
5017
+ # the policy's identity, status, consumed capacity, and association
5018
+ # count. Network Firewall returns this object in response to the Next
5019
+ # Generation policy operations. To retrieve the policy's rule groups
5020
+ # and settings, use the `FirewallPolicyV2` object.
5021
+ #
5022
+ # @!attribute [rw] firewall_policy_v2_name
5023
+ # The descriptive name of the Next Generation policy. You can't
5024
+ # change the name of a firewall policy after you create it.
5025
+ # @return [String]
5026
+ #
5027
+ # @!attribute [rw] firewall_policy_v2_arn
5028
+ # The Amazon Resource Name (ARN) of the Next Generation policy.
5029
+ # @return [String]
5030
+ #
5031
+ # @!attribute [rw] firewall_policy_v2_id
5032
+ # The unique identifier of the Next Generation policy. Network
5033
+ # Firewall assigns this identifier when you create the policy.
5034
+ # @return [String]
5035
+ #
5036
+ # @!attribute [rw] description
5037
+ # A description of the Next Generation policy.
5038
+ # @return [String]
5039
+ #
5040
+ # @!attribute [rw] firewall_policy_v2_status
5041
+ # The current status of the Next Generation policy. A policy must be
5042
+ # in the `ACTIVE` state before you can use it in a firewall.
5043
+ # @return [String]
5044
+ #
5045
+ # @!attribute [rw] status_message
5046
+ # Additional information about the current status of the Next
5047
+ # Generation policy.
5048
+ # @return [String]
5049
+ #
5050
+ # @!attribute [rw] tags
5051
+ # The key-value tag pairs that are associated with the Next Generation
5052
+ # policy.
5053
+ # @return [Array<Types::Tag>]
5054
+ #
5055
+ # @!attribute [rw] consumed_firewall_rule_capacity
5056
+ # The number of firewall engine rule capacity units that the policy's
5057
+ # firewall section currently consumes.
5058
+ # @return [Integer]
5059
+ #
5060
+ # @!attribute [rw] consumed_ips_rule_capacity
5061
+ # The number of IPS engine rule capacity units that the policy's IPS
5062
+ # section currently consumes.
5063
+ # @return [Integer]
5064
+ #
5065
+ # @!attribute [rw] consumed_ips_domain_capacity
5066
+ # The number of IPS domain list capacity units that the policy's IPS
5067
+ # section currently consumes.
5068
+ # @return [Integer]
5069
+ #
5070
+ # @!attribute [rw] number_of_associations
5071
+ # The number of firewalls that are associated with the Next Generation
5072
+ # policy.
5073
+ # @return [Integer]
5074
+ #
5075
+ # @!attribute [rw] encryption_configuration
5076
+ # A complex type that contains the Amazon Web Services KMS encryption
5077
+ # configuration settings for your Next Generation policy.
5078
+ # @return [Types::EncryptionConfiguration]
5079
+ #
5080
+ # @!attribute [rw] errors
5081
+ # Any configuration errors that apply to the Next Generation policy.
5082
+ # Network Firewall detects these errors asynchronously, after you
5083
+ # create or update the policy, so an error can appear after the
5084
+ # request that caused it has already succeeded. Each entry describes
5085
+ # the problem and how to resolve it, and Network Firewall clears it
5086
+ # automatically after you resolve the problem.
5087
+ # @return [Array<Types::FirewallPolicyError>]
5088
+ #
5089
+ # @!attribute [rw] last_modified_time
5090
+ # The last time that the Next Generation policy was changed.
5091
+ # @return [Time]
5092
+ #
5093
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallPolicyV2Response AWS API Documentation
5094
+ #
5095
+ class FirewallPolicyV2Response < Struct.new(
5096
+ :firewall_policy_v2_name,
5097
+ :firewall_policy_v2_arn,
5098
+ :firewall_policy_v2_id,
5099
+ :description,
5100
+ :firewall_policy_v2_status,
5101
+ :status_message,
5102
+ :tags,
5103
+ :consumed_firewall_rule_capacity,
5104
+ :consumed_ips_rule_capacity,
5105
+ :consumed_ips_domain_capacity,
5106
+ :number_of_associations,
5107
+ :encryption_configuration,
5108
+ :errors,
5109
+ :last_modified_time)
5110
+ SENSITIVE = []
5111
+ include Aws::Structure
5112
+ end
5113
+
5114
+ # A single structured firewall engine rule, for use in a firewall engine
5115
+ # rule group or as an embedded rule in a Next Generation policy. A
5116
+ # firewall rule accepts, drops, or rejects traffic at a connection-state
5117
+ # hook. For more information about authoring firewall engine rules, see
5118
+ # [Rule groups for a firewall using a Next Generation policy][1] in the
5119
+ # *Network Firewall Developer Guide*.
5120
+ #
5121
+ #
5122
+ #
5123
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/rule-groups-v2.html
5124
+ #
5125
+ # @!attribute [rw] action
5126
+ # The action that the firewall engine takes on traffic that matches
5127
+ # the rule. The firewall engine supports the following actions:
5128
+ #
5129
+ # * `ACCEPT` - Allow the traffic.
5130
+ #
5131
+ # * `DROP` - Block the traffic and discontinue inspection.
5132
+ #
5133
+ # * `REJECT` - Block the traffic and send a TCP reset packet back to
5134
+ # the client.
5135
+ #
5136
+ # * `REJECT_DST` - Block the traffic and send a TCP reset packet to
5137
+ # the destination.
5138
+ #
5139
+ # * `REJECT_BOTH` - Block the traffic and send a TCP reset packet to
5140
+ # both the client and the destination.
5141
+ #
5142
+ # You combine the action with an action scope, for example
5143
+ # `accept:flow`. To send accepted traffic straight to its destination
5144
+ # and skip the IPS engine, pair an accept action with the
5145
+ # `BypassIPSEnabled` setting. For more information, see [Rule groups
5146
+ # for a firewall using a Next Generation policy][1] in the *Network
5147
+ # Firewall Developer Guide*.
5148
+ #
5149
+ #
5150
+ #
5151
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/rule-groups-v2.html
5152
+ # @return [String]
5153
+ #
5154
+ # @!attribute [rw] action_scope
5155
+ # The scope that controls how much of the matched traffic the action
5156
+ # applies to. The valid scopes depend on the action: `ACCEPT` supports
5157
+ # all four scopes, and `DROP`, `REJECT`, `REJECT_DST`, and
5158
+ # `REJECT_BOTH` support only `PACKET` and `FLOW`.
5159
+ #
5160
+ # * `PACKET` - The current packet only.
5161
+ #
5162
+ # * `HOOK` - The current hook only. The firewall engine evaluates the
5163
+ # connection again at the next hook.
5164
+ #
5165
+ # * `TX` - The current transaction. The firewall engine continues to
5166
+ # evaluate later transactions on the connection.
5167
+ #
5168
+ # * `FLOW` - The entire connection. For an accept action, the
5169
+ # connection skips the firewall engine's remaining hooks and
5170
+ # advances to the IPS engine.
5171
+ #
5172
+ # In a Suricata-compatible rule string, you write the scope in
5173
+ # lowercase, for example `accept:flow`.
5174
+ # @return [String]
5175
+ #
5176
+ # @!attribute [rw] hook
5177
+ # The connection-state hook at which the firewall engine evaluates the
5178
+ # rule. The hook encodes both the protocol and the connection state,
5179
+ # for example a TCP hook or a TLS `client_hello` hook. For the hooks
5180
+ # that the firewall engine supports and how they map to the connection
5181
+ # lifecycle, see [Rule groups for a firewall using a Next Generation
5182
+ # policy][1] in the *Network Firewall Developer Guide* and the
5183
+ # [Suricata firewall mode documentation][2].
5184
+ #
5185
+ #
5186
+ #
5187
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/rule-groups-v2.html
5188
+ # [2]: https://suricata.readthedocs.io/en/suricata-8.0.3/firewall/firewall-design.html
5189
+ # @return [String]
5190
+ #
5191
+ # @!attribute [rw] protocol
5192
+ # The protocol of the rule's hook. The protocol is derived from the
5193
+ # hook and must match the hook's protocol prefix. Network Firewall
5194
+ # rejects a rule whose protocol doesn't match its hook.
5195
+ # @return [String]
5196
+ #
5197
+ # @!attribute [rw] source_i_ps
5198
+ # The source IP addresses and address ranges to inspect for, in CIDR
5199
+ # notation. A firewall rule always compiles to a forward-direction
5200
+ # rule, so you express inbound compared to outbound traffic through
5201
+ # the source and destination addresses.
5202
+ # @return [String]
5203
+ #
5204
+ # @!attribute [rw] dest_i_ps
5205
+ # The destination IP addresses and address ranges to inspect for, in
5206
+ # CIDR notation. A firewall rule always compiles to a
5207
+ # forward-direction rule, so you express inbound compared to outbound
5208
+ # traffic through the source and destination addresses.
5209
+ # @return [String]
5210
+ #
5211
+ # @!attribute [rw] source_ports
5212
+ # The source ports to inspect for.
5213
+ # @return [String]
5214
+ #
5215
+ # @!attribute [rw] dest_ports
5216
+ # The destination ports to inspect for.
5217
+ # @return [String]
5218
+ #
5219
+ # @!attribute [rw] rule_options
5220
+ # Additional options for the rule. These are the Suricata
5221
+ # `RuleOptions` settings, such as the signature ID (`sid`) and match
5222
+ # keywords.
5223
+ # @return [Array<Types::RuleOption>]
5224
+ #
5225
+ # @!attribute [rw] accept_prior_hooks
5226
+ # Whether Network Firewall automatically accepts the earlier
5227
+ # application-layer hooks that a connection must pass to reach this
5228
+ # rule's hook. Because the firewall engine is drop by default,
5229
+ # accepting prior hooks lets you author a single rule for the hook you
5230
+ # care about, instead of also authoring a rule for each earlier hook.
5231
+ # This setting accepts the earlier application-layer hooks only; it
5232
+ # doesn't accept the TCP layer. For more information, see [Rule
5233
+ # groups for a firewall using a Next Generation policy][1] in the
5234
+ # *Network Firewall Developer Guide*.
5235
+ #
5236
+ #
5237
+ #
5238
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/rule-groups-v2.html
5239
+ # @return [Boolean]
5240
+ #
5241
+ # @!attribute [rw] alert_enabled
5242
+ # Specifies whether the rule also generates an alert log for the
5243
+ # traffic that it matches. Turning on alerting adds a secondary alert
5244
+ # action to the rule, so that Network Firewall logs the match in
5245
+ # addition to taking the rule's primary action.
5246
+ # @return [Boolean]
5247
+ #
5248
+ # @!attribute [rw] bypass_ips_enabled
5249
+ # Specifies whether an accepted connection bypasses the IPS engine. By
5250
+ # default, traffic that the firewall engine accepts advances to the
5251
+ # IPS engine for threat inspection. When you turn on this setting for
5252
+ # an accept rule, the accepted traffic goes straight to its
5253
+ # destination without IPS inspection. You can set the bypass only on
5254
+ # accept rules, and it uses the same scope as the rule's accept
5255
+ # action; only the `flow` and `packet` scopes support a bypass. For
5256
+ # more information, see [Rule groups for a firewall using a Next
5257
+ # Generation policy][1] in the *Network Firewall Developer Guide*.
5258
+ #
5259
+ #
5260
+ #
5261
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/rule-groups-v2.html
5262
+ # @return [Boolean]
5263
+ #
5264
+ # @!attribute [rw] rule_metadata
5265
+ # Optional metadata for the rule: whether the rule is enabled and a
5266
+ # description. Metadata doesn't change how the rule matches or acts
5267
+ # on traffic.
5268
+ # @return [Types::RuleMetadata]
5269
+ #
5270
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallRule AWS API Documentation
5271
+ #
5272
+ class FirewallRule < Struct.new(
5273
+ :action,
5274
+ :action_scope,
5275
+ :hook,
5276
+ :protocol,
5277
+ :source_i_ps,
5278
+ :dest_i_ps,
5279
+ :source_ports,
5280
+ :dest_ports,
5281
+ :rule_options,
5282
+ :accept_prior_hooks,
5283
+ :alert_enabled,
5284
+ :bypass_ips_enabled,
5285
+ :rule_metadata)
5286
+ SENSITIVE = []
5287
+ include Aws::Structure
5288
+ end
5289
+
5290
+ # The object that defines a firewall engine rule group, for use in a
5291
+ # Next Generation policy. A firewall engine rule group provides
5292
+ # access-control rules that the firewall engine evaluates at
5293
+ # connection-state hooks. You provide the rules as a Suricata-compatible
5294
+ # rule string, as structured firewall rules, or generated from a list of
5295
+ # domain names. For more information, see [Rule groups for a firewall
5296
+ # using a Next Generation policy][1] in the *Network Firewall Developer
5297
+ # Guide*.
5298
+ #
5299
+ #
5300
+ #
5301
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/rule-groups-v2.html
5302
+ #
5303
+ # @!attribute [rw] rules_source
5304
+ # The stateful inspection criteria for the firewall engine rule group.
5305
+ # @return [Types::FirewallRulesSource]
5306
+ #
5307
+ # @!attribute [rw] rule_variables
5308
+ # Settings that are available for use in the rules in the firewall
5309
+ # engine rule group, such as IP set and port variables that the rules
5310
+ # reference.
5311
+ # @return [Types::RuleVariables]
5312
+ #
5313
+ # @!attribute [rw] reference_sets
5314
+ # The list of a rule group's reference sets. Firewall engine rule
5315
+ # groups don't support IP set references (reference sets); this
5316
+ # setting applies to IPS engine rule groups. To use CIDR ranges in
5317
+ # firewall engine rules, use rule variables instead.
5318
+ # @return [Types::ReferenceSets]
5319
+ #
5320
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallRuleGroup AWS API Documentation
5321
+ #
5322
+ class FirewallRuleGroup < Struct.new(
5323
+ :rules_source,
5324
+ :rule_variables,
5325
+ :reference_sets)
5326
+ SENSITIVE = []
5327
+ include Aws::Structure
5328
+ end
5329
+
5330
+ # A single entry in the firewall section of a Next Generation policy. An
5331
+ # entry either references an existing firewall engine rule group by ARN
5332
+ # or embeds a rule group directly in the policy, and it carries the
5333
+ # priority that sets the rule group's evaluation order within the
5334
+ # firewall section.
5335
+ #
5336
+ # @!attribute [rw] priority
5337
+ # The priority of the rule group entry within the firewall section.
5338
+ # Network Firewall evaluates the firewall section's entries in order
5339
+ # of increasing priority value. Each entry in the firewall section
5340
+ # must have a unique priority.
5341
+ # @return [Integer]
5342
+ #
5343
+ # @!attribute [rw] resource_arn
5344
+ # The Amazon Resource Name (ARN) of an existing firewall engine rule
5345
+ # group to reference in this entry. Provide either `ResourceArn` to
5346
+ # reference an existing rule group or `InlineRuleGroup` to embed a
5347
+ # rule group in the policy.
5348
+ # @return [String]
5349
+ #
5350
+ # @!attribute [rw] inline_rule_group
5351
+ # A firewall engine rule group defined directly in the policy, instead
5352
+ # of referenced by ARN. Provide either `InlineRuleGroup` to embed a
5353
+ # rule group or `ResourceArn` to reference an existing rule group. An
5354
+ # embedded rule group can't use a domain list rules source; to filter
5355
+ # on a domain list, reference a standalone rule group by ARN instead.
5356
+ # @return [Types::FirewallRuleGroup]
5357
+ #
5358
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallRuleGroupEntry AWS API Documentation
5359
+ #
5360
+ class FirewallRuleGroupEntry < Struct.new(
5361
+ :priority,
5362
+ :resource_arn,
5363
+ :inline_rule_group)
5364
+ SENSITIVE = []
5365
+ include Aws::Structure
5366
+ end
5367
+
5368
+ # The source of the rules for a firewall engine rule group. You provide
5369
+ # the rules as a single Suricata-compatible rule string, as a list of
5370
+ # structured firewall rules, or as a list of domain names to generate
5371
+ # rules from.
5372
+ #
5373
+ # @!attribute [rw] rules_string
5374
+ # Firewall engine rules, provided as a single Suricata-compatible rule
5375
+ # string in firewall mode. Use this to provide rules that you've
5376
+ # already written in the Suricata firewall-mode format. For the rule
5377
+ # format, see [Rule groups for a firewall using a Next Generation
5378
+ # policy][1] in the *Network Firewall Developer Guide*.
5379
+ #
5380
+ #
4571
5381
  #
4572
- # @!attribute [rw] errors
4573
- # Any configuration errors that apply to the firewall policy. Network
4574
- # Firewall detects these errors asynchronously, after you create or
4575
- # update the policy, so an error can appear after the request that
4576
- # caused it has already succeeded. Each entry describes the problem
4577
- # and how to resolve it, and Network Firewall clears it automatically
4578
- # after you resolve the problem.
4579
- # @return [Array<Types::FirewallPolicyError>]
5382
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/rule-groups-v2.html
5383
+ # @return [String]
4580
5384
  #
4581
- # @!attribute [rw] last_modified_time
4582
- # The last time that the firewall policy was changed.
4583
- # @return [Time]
5385
+ # @!attribute [rw] firewall_rules
5386
+ # An array of individual firewall engine rules, provided as structured
5387
+ # rules rather than as a rule string.
5388
+ # @return [Array<Types::FirewallRule>]
4584
5389
  #
4585
- # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallPolicyResponse AWS API Documentation
5390
+ # @!attribute [rw] rules_source_list
5391
+ # Stateful inspection criteria for a domain list, specified as the
5392
+ # list of domain names that Network Firewall generates firewall engine
5393
+ # rules from.
5394
+ # @return [Types::RulesSourceList]
4586
5395
  #
4587
- class FirewallPolicyResponse < Struct.new(
4588
- :firewall_policy_name,
4589
- :firewall_policy_arn,
4590
- :firewall_policy_id,
4591
- :description,
4592
- :firewall_policy_status,
4593
- :status_message,
4594
- :tags,
4595
- :consumed_stateless_rule_capacity,
4596
- :consumed_stateful_rule_capacity,
4597
- :consumed_stateful_domain_capacity,
4598
- :number_of_associations,
4599
- :encryption_configuration,
4600
- :errors,
4601
- :last_modified_time)
5396
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/FirewallRulesSource AWS API Documentation
5397
+ #
5398
+ class FirewallRulesSource < Struct.new(
5399
+ :rules_string,
5400
+ :firewall_rules,
5401
+ :rules_source_list)
4602
5402
  SENSITIVE = []
4603
5403
  include Aws::Structure
4604
5404
  end
@@ -5249,6 +6049,110 @@ module Aws::NetworkFirewall
5249
6049
  include Aws::Structure
5250
6050
  end
5251
6051
 
6052
+ # The object that defines an IPS engine rule group, for use in a Next
6053
+ # Generation policy. An IPS engine rule group provides threat-detection
6054
+ # rules that the IPS engine evaluates in the context of the traffic
6055
+ # flow. You provide the rules as a Suricata-compatible rule string. For
6056
+ # more information, see [Rule groups for a firewall using a Next
6057
+ # Generation policy][1] in the *Network Firewall Developer Guide*.
6058
+ #
6059
+ #
6060
+ #
6061
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/rule-groups-v2.html
6062
+ #
6063
+ # @!attribute [rw] rules_source
6064
+ # The stateful inspection criteria for the IPS engine rule group.
6065
+ # @return [Types::IpsRulesSource]
6066
+ #
6067
+ # @!attribute [rw] rule_variables
6068
+ # Settings that are available for use in the rules in the IPS engine
6069
+ # rule group.
6070
+ # @return [Types::RuleVariables]
6071
+ #
6072
+ # @!attribute [rw] reference_sets
6073
+ # The list of a rule group's reference sets.
6074
+ # @return [Types::ReferenceSets]
6075
+ #
6076
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/IpsRuleGroup AWS API Documentation
6077
+ #
6078
+ class IpsRuleGroup < Struct.new(
6079
+ :rules_source,
6080
+ :rule_variables,
6081
+ :reference_sets)
6082
+ SENSITIVE = []
6083
+ include Aws::Structure
6084
+ end
6085
+
6086
+ # A single entry in the IPS section of a Next Generation policy. An
6087
+ # entry either references an existing IPS engine rule group by ARN or
6088
+ # embeds a rule group directly in the policy. IPS section entries don't
6089
+ # use a priority.
6090
+ #
6091
+ # @!attribute [rw] resource_arn
6092
+ # The Amazon Resource Name (ARN) of an existing IPS engine rule group
6093
+ # to reference in this entry. Provide either `ResourceArn` to
6094
+ # reference an existing rule group or `InlineRuleGroup` to embed a
6095
+ # rule group in the policy.
6096
+ # @return [String]
6097
+ #
6098
+ # @!attribute [rw] inline_rule_group
6099
+ # An IPS engine rule group defined directly in the policy, instead of
6100
+ # referenced by ARN. Provide either `InlineRuleGroup` to embed a rule
6101
+ # group or `ResourceArn` to reference an existing rule group.
6102
+ # @return [Types::IpsRuleGroup]
6103
+ #
6104
+ # @!attribute [rw] override
6105
+ # The setting that allows the policy owner to change the behavior of
6106
+ # the IPS engine rule group within this policy, such as changing a
6107
+ # managed rule group's action from `DROP` to `ALERT`.
6108
+ # @return [Types::IpsRuleGroupOverride]
6109
+ #
6110
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/IpsRuleGroupEntry AWS API Documentation
6111
+ #
6112
+ class IpsRuleGroupEntry < Struct.new(
6113
+ :resource_arn,
6114
+ :inline_rule_group,
6115
+ :override)
6116
+ SENSITIVE = []
6117
+ include Aws::Structure
6118
+ end
6119
+
6120
+ # The setting that allows the policy owner to change the behavior of an
6121
+ # IPS engine rule group within a Next Generation policy.
6122
+ #
6123
+ # @!attribute [rw] action
6124
+ # The action that changes the rule group from `DROP` to `ALERT`. This
6125
+ # only applies to managed rule groups.
6126
+ # @return [String]
6127
+ #
6128
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/IpsRuleGroupOverride AWS API Documentation
6129
+ #
6130
+ class IpsRuleGroupOverride < Struct.new(
6131
+ :action)
6132
+ SENSITIVE = []
6133
+ include Aws::Structure
6134
+ end
6135
+
6136
+ # The source of the rules for an IPS engine rule group.
6137
+ #
6138
+ # @!attribute [rw] rules_string
6139
+ # IPS engine rules, provided as a single Suricata-compatible rule
6140
+ # string. For the rule format, see [Rules Format][1] on the Suricata
6141
+ # website.
6142
+ #
6143
+ #
6144
+ #
6145
+ # [1]: https://suricata.readthedocs.io/en/suricata-8.0.3/rules/intro.html
6146
+ # @return [String]
6147
+ #
6148
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/IpsRulesSource AWS API Documentation
6149
+ #
6150
+ class IpsRulesSource < Struct.new(
6151
+ :rules_string)
6152
+ SENSITIVE = []
6153
+ include Aws::Structure
6154
+ end
6155
+
5252
6156
  # Unable to perform the operation because doing so would violate a limit
5253
6157
  # setting.
5254
6158
  #
@@ -5417,6 +6321,53 @@ module Aws::NetworkFirewall
5417
6321
  include Aws::Structure
5418
6322
  end
5419
6323
 
6324
+ # @!attribute [rw] next_token
6325
+ # When you request a list of objects with a `MaxResults` setting, if
6326
+ # the number of objects that are still available for retrieval exceeds
6327
+ # the maximum you requested, Network Firewall returns a `NextToken`
6328
+ # value in the response. To retrieve the next batch of objects, use
6329
+ # the token returned from the prior request in your next request.
6330
+ # @return [String]
6331
+ #
6332
+ # @!attribute [rw] max_results
6333
+ # The maximum number of objects that you want Network Firewall to
6334
+ # return for this request. If more objects are available, in the
6335
+ # response, Network Firewall provides a `NextToken` value that you can
6336
+ # use in a subsequent call to get the next batch of objects.
6337
+ # @return [Integer]
6338
+ #
6339
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/ListFirewallPoliciesV2Request AWS API Documentation
6340
+ #
6341
+ class ListFirewallPoliciesV2Request < Struct.new(
6342
+ :next_token,
6343
+ :max_results)
6344
+ SENSITIVE = []
6345
+ include Aws::Structure
6346
+ end
6347
+
6348
+ # @!attribute [rw] next_token
6349
+ # When you request a list of objects with a `MaxResults` setting, if
6350
+ # the number of objects that are still available for retrieval exceeds
6351
+ # the maximum you requested, Network Firewall returns a `NextToken`
6352
+ # value in the response. To retrieve the next batch of objects, use
6353
+ # the token returned from the prior request in your next request.
6354
+ # @return [String]
6355
+ #
6356
+ # @!attribute [rw] firewall_policies_v2
6357
+ # The metadata for the Next Generation policies. Depending on your
6358
+ # setting for max results and the number of firewall policies that you
6359
+ # have, this might not be the full list.
6360
+ # @return [Array<Types::FirewallPolicyV2Metadata>]
6361
+ #
6362
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/ListFirewallPoliciesV2Response AWS API Documentation
6363
+ #
6364
+ class ListFirewallPoliciesV2Response < Struct.new(
6365
+ :next_token,
6366
+ :firewall_policies_v2)
6367
+ SENSITIVE = []
6368
+ include Aws::Structure
6369
+ end
6370
+
5420
6371
  # @!attribute [rw] next_token
5421
6372
  # When you request a list of objects with a `MaxResults` setting, if
5422
6373
  # the number of objects that are still available for retrieval exceeds
@@ -6319,7 +7270,7 @@ module Aws::NetworkFirewall
6319
7270
  end
6320
7271
 
6321
7272
  # A NAT gateway that a proxy mode firewall uses to proxy traffic. This
6322
- # is used in CreateFirewall when `NoSourcePreservation` is `TRUE`.
7273
+ # is used in `CreateFirewall` when `NoSourcePreservation` is `TRUE`.
6323
7274
  #
6324
7275
  # @!attribute [rw] nat_gateway_id
6325
7276
  # A unique identifier for the NAT gateway to use with proxy resources.
@@ -7100,6 +8051,14 @@ module Aws::NetworkFirewall
7100
8051
  # `AWS_ROUTE_53_RESOLVED_DOMAIN` target type or the
7101
8052
  # `aws_route_53_resolved_domain` rule keyword.
7102
8053
  #
8054
+ # Enabling or disabling resolved IP validation, or changing
8055
+ # `DNSFirewallRuleGroupId`, may require a restart of the stateful engine
8056
+ # in order to apply the change. When this occurs, existing connections
8057
+ # will be treated according to your stream exception policy
8058
+ # configuration. Changes to `Action`, `DNSExpiryExceptionPolicy`,
8059
+ # `SourceIPRanges`, and `BypassDestinationValidationIPRanges` don't
8060
+ # require a restart.
8061
+ #
7103
8062
  # @!attribute [rw] action
7104
8063
  # The action that Network Firewall takes for a connection whose
7105
8064
  # destination IP address fails resolved IP validation. A destination
@@ -7136,6 +8095,9 @@ module Aws::NetworkFirewall
7136
8095
  # have only one managed Route 53 Resolver DNS Firewall association.
7137
8096
  # While a swap is in progress, Network Firewall rejects further
7138
8097
  # changes to this setting. Wait until the swap completes, then retry.
8098
+ # The change may also require a restart of the stateful engine. When
8099
+ # this occurs, existing connections will be treated according to your
8100
+ # stream exception policy configuration.
7139
8101
  # @return [String]
7140
8102
  #
7141
8103
  # @!attribute [rw] dns_expiry_exception_policy
@@ -7364,9 +8326,18 @@ module Aws::NetworkFirewall
7364
8326
  # @return [String]
7365
8327
  #
7366
8328
  # @!attribute [rw] type
7367
- # Indicates whether the rule group is stateless or stateful. If the
7368
- # rule group is stateless, it contains stateless rules. If it is
7369
- # stateful, it contains stateful rules.
8329
+ # Indicates the type of the rule group. Valid values are:
8330
+ #
8331
+ # * `STATELESS` - Stateless rules, for use in a Classic Network
8332
+ # Firewall policy.
8333
+ #
8334
+ # * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
8335
+ # policy.
8336
+ #
8337
+ # * `FIREWALL` - Firewall engine rules, for use in a Next Generation
8338
+ # policy.
8339
+ #
8340
+ # * `IPS` - IPS engine rules, for use in a Next Generation policy.
7370
8341
  # @return [String]
7371
8342
  #
7372
8343
  # @!attribute [rw] capacity
@@ -7470,6 +8441,34 @@ module Aws::NetworkFirewall
7470
8441
  include Aws::Structure
7471
8442
  end
7472
8443
 
8444
+ # Metadata for a single firewall engine rule. Use it to disable a rule
8445
+ # without removing it and to attach a description. When you describe a
8446
+ # rule group in `RULES_STRING` format, Network Firewall renders a
8447
+ # disabled rule and its description as `#` comment lines above the rule.
8448
+ #
8449
+ # @!attribute [rw] rule_enabled
8450
+ # Specifies whether the rule is active. The default is `TRUE`. When
8451
+ # you set this to `FALSE`, Network Firewall keeps the rule in the rule
8452
+ # group but doesn't evaluate it against traffic and doesn't count it
8453
+ # toward the rule group's consumed capacity.
8454
+ # @return [Boolean]
8455
+ #
8456
+ # @!attribute [rw] rule_description
8457
+ # A description of the rule, up to 512 characters. The description can
8458
+ # span multiple lines. A description line can't itself look like a
8459
+ # firewall rule; to disable a rule, set `RuleEnabled` to `FALSE`
8460
+ # instead.
8461
+ # @return [String]
8462
+ #
8463
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/RuleMetadata AWS API Documentation
8464
+ #
8465
+ class RuleMetadata < Struct.new(
8466
+ :rule_enabled,
8467
+ :rule_description)
8468
+ SENSITIVE = []
8469
+ include Aws::Structure
8470
+ end
8471
+
7473
8472
  # Additional settings for a stateful rule. This is part of the
7474
8473
  # StatefulRule configuration.
7475
8474
  #
@@ -7586,7 +8585,7 @@ module Aws::NetworkFirewall
7586
8585
  # together in a stateful rule group. Use this option to specify simple
7587
8586
  # Suricata rules with protocol, source and destination, ports,
7588
8587
  # direction, and rule options. For information about the Suricata
7589
- # `Rules` format, see [Rules Format][1].
8588
+ # `Rules` format, see [Rules Format][1] on the Suricata website.
7590
8589
  #
7591
8590
  #
7592
8591
  #
@@ -8184,11 +9183,41 @@ module Aws::NetworkFirewall
8184
9183
  include Aws::Structure
8185
9184
  end
8186
9185
 
9186
+ # Configuration settings for the handling of stateful traffic in a Next
9187
+ # Generation policy.
9188
+ #
9189
+ # @!attribute [rw] stream_exception_policy
9190
+ # How Network Firewall handles traffic on a network connection that
9191
+ # breaks midstream. A Next Generation policy supports `DROP` and
9192
+ # `REJECT`. For more information, see [Stream exception policy options
9193
+ # in your firewall policy][1] in the *Network Firewall Developer
9194
+ # Guide*.
9195
+ #
9196
+ #
9197
+ #
9198
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/stream-exception-policy.html
9199
+ # @return [String]
9200
+ #
9201
+ # @!attribute [rw] flow_timeouts
9202
+ # The amount of time that can pass without any traffic sent through
9203
+ # the firewall before the firewall determines that the connection is
9204
+ # idle.
9205
+ # @return [Types::FlowTimeouts]
9206
+ #
9207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/StatefulEngineOptionsV2 AWS API Documentation
9208
+ #
9209
+ class StatefulEngineOptionsV2 < Struct.new(
9210
+ :stream_exception_policy,
9211
+ :flow_timeouts)
9212
+ SENSITIVE = []
9213
+ include Aws::Structure
9214
+ end
9215
+
8187
9216
  # A single Suricata rules specification, for use in a stateful rule
8188
9217
  # group. Use this option to specify a simple Suricata rule with
8189
9218
  # protocol, source and destination, ports, direction, and rule options.
8190
9219
  # For information about the Suricata `Rules` format, see [Rules
8191
- # Format][1].
9220
+ # Format][1] on the Suricata website.
8192
9221
  #
8193
9222
  #
8194
9223
  #
@@ -8429,9 +9458,9 @@ module Aws::NetworkFirewall
8429
9458
  end
8430
9459
 
8431
9460
  # The ID for a subnet that's used in an association with a firewall.
8432
- # This is used in CreateFirewall, AssociateSubnets, and
8433
- # CreateVpcEndpointAssociation. Network Firewall creates an instance of
8434
- # the associated firewall in each subnet that you specify, to filter
9461
+ # This is used in `CreateFirewall`, `AssociateSubnets`, and
9462
+ # `CreateVpcEndpointAssociation`. Network Firewall creates an instance
9463
+ # of the associated firewall in each subnet that you specify, to filter
8435
9464
  # traffic in the subnet's Availability Zone.
8436
9465
  #
8437
9466
  # @!attribute [rw] subnet_id
@@ -9818,6 +10847,107 @@ module Aws::NetworkFirewall
9818
10847
  include Aws::Structure
9819
10848
  end
9820
10849
 
10850
+ # @!attribute [rw] update_token
10851
+ # A token used for optimistic locking. Network Firewall returns a
10852
+ # token to your requests that access the firewall policy. The token
10853
+ # marks the state of the policy resource at the time of the request.
10854
+ #
10855
+ # To make changes to the policy, you provide the token in your
10856
+ # request. Network Firewall uses the token to ensure that the policy
10857
+ # hasn't changed since you last retrieved it. If it has changed, the
10858
+ # operation fails with an `InvalidTokenException`. If this happens,
10859
+ # retrieve the firewall policy again to get a current copy of it with
10860
+ # current token. Reapply your changes as needed, then try the
10861
+ # operation again using the new token.
10862
+ # @return [String]
10863
+ #
10864
+ # @!attribute [rw] firewall_policy_v2_arn
10865
+ # The Amazon Resource Name (ARN) of the Next Generation policy.
10866
+ #
10867
+ # You must specify the ARN or the name, and you can specify both.
10868
+ # @return [String]
10869
+ #
10870
+ # @!attribute [rw] firewall_policy_v2_name
10871
+ # The descriptive name of the Next Generation policy. You can't
10872
+ # change the name of a firewall policy after you create it.
10873
+ #
10874
+ # You must specify the ARN or the name, and you can specify both.
10875
+ # @return [String]
10876
+ #
10877
+ # @!attribute [rw] firewall_policy_v2
10878
+ # The updated rule groups and other settings that define the Next
10879
+ # Generation policy.
10880
+ # @return [Types::FirewallPolicyV2]
10881
+ #
10882
+ # @!attribute [rw] description
10883
+ # A description of the firewall policy.
10884
+ # @return [String]
10885
+ #
10886
+ # @!attribute [rw] dry_run
10887
+ # Indicates whether you want Network Firewall to just check the
10888
+ # validity of the request, rather than run the request.
10889
+ #
10890
+ # If set to `TRUE`, Network Firewall checks whether the request can
10891
+ # run successfully, but doesn't actually make the requested changes.
10892
+ # The call returns the value that the request would return if you ran
10893
+ # it with dry run set to `FALSE`, but doesn't make additions or
10894
+ # changes to your resources. This option allows you to make sure that
10895
+ # you have the required permissions to run the request and that your
10896
+ # request parameters are valid.
10897
+ #
10898
+ # If set to `FALSE`, Network Firewall makes the requested changes to
10899
+ # your resources.
10900
+ # @return [Boolean]
10901
+ #
10902
+ # @!attribute [rw] encryption_configuration
10903
+ # A complex type that contains settings for encryption of your
10904
+ # firewall policy resources.
10905
+ # @return [Types::EncryptionConfiguration]
10906
+ #
10907
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/UpdateFirewallPolicyV2Request AWS API Documentation
10908
+ #
10909
+ class UpdateFirewallPolicyV2Request < Struct.new(
10910
+ :update_token,
10911
+ :firewall_policy_v2_arn,
10912
+ :firewall_policy_v2_name,
10913
+ :firewall_policy_v2,
10914
+ :description,
10915
+ :dry_run,
10916
+ :encryption_configuration)
10917
+ SENSITIVE = []
10918
+ include Aws::Structure
10919
+ end
10920
+
10921
+ # @!attribute [rw] update_token
10922
+ # A token used for optimistic locking. Network Firewall returns a
10923
+ # token to your requests that access the firewall policy. The token
10924
+ # marks the state of the policy resource at the time of the request.
10925
+ #
10926
+ # To make changes to the policy, you provide the token in your
10927
+ # request. Network Firewall uses the token to ensure that the policy
10928
+ # hasn't changed since you last retrieved it. If it has changed, the
10929
+ # operation fails with an `InvalidTokenException`. If this happens,
10930
+ # retrieve the firewall policy again to get a current copy of it with
10931
+ # current token. Reapply your changes as needed, then try the
10932
+ # operation again using the new token.
10933
+ # @return [String]
10934
+ #
10935
+ # @!attribute [rw] firewall_policy_v2_response
10936
+ # The high-level properties of the Next Generation policy. This, along
10937
+ # with the FirewallPolicyV2, define the policy. You can retrieve all
10938
+ # objects for a Next Generation policy by calling
10939
+ # DescribeFirewallPolicyV2.
10940
+ # @return [Types::FirewallPolicyV2Response]
10941
+ #
10942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/UpdateFirewallPolicyV2Response AWS API Documentation
10943
+ #
10944
+ class UpdateFirewallPolicyV2Response < Struct.new(
10945
+ :update_token,
10946
+ :firewall_policy_v2_response)
10947
+ SENSITIVE = []
10948
+ include Aws::Structure
10949
+ end
10950
+
9821
10951
  # @!attribute [rw] firewall_arn
9822
10952
  # The Amazon Resource Name (ARN) of the firewall.
9823
10953
  #
@@ -10453,6 +11583,16 @@ module Aws::NetworkFirewall
10453
11583
  # </note>
10454
11584
  # @return [Types::RuleGroup]
10455
11585
  #
11586
+ # @!attribute [rw] firewall_rule_group
11587
+ # An object that defines the rules in a firewall engine rule group,
11588
+ # for use in a Next Generation policy.
11589
+ # @return [Types::FirewallRuleGroup]
11590
+ #
11591
+ # @!attribute [rw] ips_rule_group
11592
+ # An object that defines the rules in an IPS engine rule group, for
11593
+ # use in a Next Generation policy.
11594
+ # @return [Types::IpsRuleGroup]
11595
+ #
10456
11596
  # @!attribute [rw] rules
10457
11597
  # A string containing stateful rule group rules specifications in
10458
11598
  # Suricata flat format, with one rule per line. Use this to import
@@ -10470,9 +11610,18 @@ module Aws::NetworkFirewall
10470
11610
  # @return [String]
10471
11611
  #
10472
11612
  # @!attribute [rw] type
10473
- # Indicates whether the rule group is stateless or stateful. If the
10474
- # rule group is stateless, it contains stateless rules. If it is
10475
- # stateful, it contains stateful rules.
11613
+ # Indicates the type of the rule group. Valid values are:
11614
+ #
11615
+ # * `STATELESS` - Stateless rules, for use in a Classic Network
11616
+ # Firewall policy.
11617
+ #
11618
+ # * `STATEFUL` - Stateful rules, for use in a Classic Network Firewall
11619
+ # policy.
11620
+ #
11621
+ # * `FIREWALL` - Firewall engine rules, for use in a Next Generation
11622
+ # policy.
11623
+ #
11624
+ # * `IPS` - IPS engine rules, for use in a Next Generation policy.
10476
11625
  #
10477
11626
  # <note markdown="1"> This setting is required for requests that do not include the
10478
11627
  # `RuleGroupARN`.
@@ -10532,6 +11681,8 @@ module Aws::NetworkFirewall
10532
11681
  :rule_group_arn,
10533
11682
  :rule_group_name,
10534
11683
  :rule_group,
11684
+ :firewall_rule_group,
11685
+ :ips_rule_group,
10535
11686
  :rules,
10536
11687
  :type,
10537
11688
  :description,
@@ -10778,11 +11929,11 @@ module Aws::NetworkFirewall
10778
11929
  include Aws::Structure
10779
11930
  end
10780
11931
 
10781
- # The VPC and subnets for a proxy mode firewall endpoint. This is used
10782
- # in CreateFirewall when `NoSourcePreservation` is `TRUE`, to specify
10783
- # where Network Firewall creates the firewall endpoint.
11932
+ # Contains the VPC and subnets for a proxy mode firewall endpoint. You
11933
+ # use it in `CreateFirewall` when `NoSourcePreservation` is `TRUE`, to
11934
+ # specify where Network Firewall creates the firewall endpoint.
10784
11935
  #
10785
- # This differs from VpcEndpointAssociation, which defines additional
11936
+ # This differs from `VpcEndpointAssociation`, which defines additional
10786
11937
  # secondary endpoints for a firewall in other VPCs.
10787
11938
  #
10788
11939
  # @!attribute [rw] vpc_id
@@ -10870,8 +12021,8 @@ module Aws::NetworkFirewall
10870
12021
  #
10871
12022
  # @!attribute [rw] subnet_mapping
10872
12023
  # The ID for a subnet that's used in an association with a firewall.
10873
- # This is used in CreateFirewall, AssociateSubnets, and
10874
- # CreateVpcEndpointAssociation. Network Firewall creates an instance
12024
+ # This is used in `CreateFirewall`, `AssociateSubnets`, and
12025
+ # `CreateVpcEndpointAssociation`. Network Firewall creates an instance
10875
12026
  # of the associated firewall in each subnet that you specify, to
10876
12027
  # filter traffic in the subnet's Availability Zone.
10877
12028
  # @return [Types::SubnetMapping]