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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-networkfirewall/client.rb +1001 -36
- data/lib/aws-sdk-networkfirewall/client_api.rb +260 -0
- data/lib/aws-sdk-networkfirewall/types.rb +1227 -76
- data/lib/aws-sdk-networkfirewall.rb +1 -1
- data/sig/client.rbs +97 -9
- data/sig/params.rbs +105 -9
- data/sig/types.rbs +196 -9
- metadata +3 -3
|
@@ -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
|
|
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
|
|
1725
|
-
#
|
|
1726
|
-
#
|
|
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
|
|
1994
|
-
# CreateVpcEndpointAssociation
|
|
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
|
|
2475
|
-
#
|
|
2476
|
-
#
|
|
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
|
|
3379
|
-
#
|
|
3380
|
-
#
|
|
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
|
|
3418
|
-
#
|
|
3419
|
-
#
|
|
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
|
|
3494
|
-
#
|
|
3495
|
-
#
|
|
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.
|
|
4413
|
-
#
|
|
4414
|
-
#
|
|
4415
|
-
#
|
|
4416
|
-
#
|
|
4417
|
-
#
|
|
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
|
-
#
|
|
4573
|
-
#
|
|
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]
|
|
4582
|
-
#
|
|
4583
|
-
#
|
|
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
|
-
#
|
|
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
|
-
|
|
4588
|
-
|
|
4589
|
-
|
|
4590
|
-
:
|
|
4591
|
-
:
|
|
4592
|
-
:
|
|
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
|
|
7368
|
-
#
|
|
7369
|
-
#
|
|
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
|
|
8433
|
-
# CreateVpcEndpointAssociation
|
|
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
|
|
10474
|
-
#
|
|
10475
|
-
#
|
|
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
|
-
#
|
|
10782
|
-
# in CreateFirewall when `NoSourcePreservation` is `TRUE`, to
|
|
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
|
|
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
|
|
10874
|
-
# CreateVpcEndpointAssociation
|
|
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]
|