aws-cdk-lib 2.209.1__py3-none-any.whl → 2.211.0__py3-none-any.whl
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.
Potentially problematic release.
This version of aws-cdk-lib might be problematic. Click here for more details.
- aws_cdk/__init__.py +6 -11
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.209.1.jsii.tgz → aws-cdk-lib@2.211.0.jsii.tgz} +0 -0
- aws_cdk/aws_amazonmq/__init__.py +2 -1
- aws_cdk/aws_appconfig/__init__.py +9 -0
- aws_cdk/aws_arcregionswitch/__init__.py +4962 -0
- aws_cdk/aws_athena/__init__.py +23 -19
- aws_cdk/aws_autoscaling/__init__.py +6 -6
- aws_cdk/aws_batch/__init__.py +721 -51
- aws_cdk/aws_cassandra/__init__.py +28 -1
- aws_cdk/aws_cloudfront/__init__.py +20 -8
- aws_cdk/aws_cognito/__init__.py +9 -2
- aws_cdk/aws_datazone/__init__.py +118 -77
- aws_cdk/aws_dax/__init__.py +39 -0
- aws_cdk/aws_deadline/__init__.py +155 -7
- aws_cdk/aws_docdb/__init__.py +20 -11
- aws_cdk/aws_dynamodb/__init__.py +160 -20
- aws_cdk/aws_ec2/__init__.py +978 -256
- aws_cdk/aws_ecr/__init__.py +274 -0
- aws_cdk/aws_ecs/__init__.py +335 -220
- aws_cdk/aws_eks/__init__.py +51 -3
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +9 -7
- aws_cdk/aws_entityresolution/__init__.py +240 -45
- aws_cdk/aws_evs/__init__.py +20 -45
- aws_cdk/aws_iot/__init__.py +387 -0
- aws_cdk/aws_iotsitewise/__init__.py +1247 -139
- aws_cdk/aws_ivs/__init__.py +443 -33
- aws_cdk/aws_kinesisfirehose/__init__.py +2 -0
- aws_cdk/aws_kms/__init__.py +15 -0
- aws_cdk/aws_lambda/__init__.py +3 -3
- aws_cdk/aws_lightsail/__init__.py +590 -0
- aws_cdk/aws_logs/__init__.py +97 -3
- aws_cdk/aws_medialive/__init__.py +270 -7
- aws_cdk/aws_mediapackagev2/__init__.py +204 -6
- aws_cdk/aws_neptune/__init__.py +41 -2
- aws_cdk/aws_networkfirewall/__init__.py +490 -134
- aws_cdk/aws_observabilityadmin/__init__.py +1468 -0
- aws_cdk/aws_opensearchserverless/__init__.py +2 -2
- aws_cdk/aws_opsworks/__init__.py +125 -125
- aws_cdk/aws_opsworkscm/__init__.py +1 -53
- aws_cdk/aws_pcs/__init__.py +36 -0
- aws_cdk/aws_qbusiness/__init__.py +3 -3
- aws_cdk/aws_quicksight/__init__.py +107 -0
- aws_cdk/aws_rds/__init__.py +274 -0
- aws_cdk/aws_s3/__init__.py +56 -1
- aws_cdk/aws_s3express/__init__.py +52 -1
- aws_cdk/aws_sagemaker/__init__.py +4033 -218
- aws_cdk/aws_ses/__init__.py +172 -9
- aws_cdk/aws_ssm/__init__.py +8 -4
- aws_cdk/aws_verifiedpermissions/__init__.py +23 -2
- aws_cdk/aws_wisdom/__init__.py +2 -2
- aws_cdk/aws_workspacesweb/__init__.py +949 -157
- {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/METADATA +8 -8
- {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/RECORD +58 -56
- {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/top_level.txt +0 -0
|
@@ -76,7 +76,7 @@ class CfnFirewall(
|
|
|
76
76
|
metaclass=jsii.JSIIMeta,
|
|
77
77
|
jsii_type="aws-cdk-lib.aws_networkfirewall.CfnFirewall",
|
|
78
78
|
):
|
|
79
|
-
'''Use the
|
|
79
|
+
'''Use the firewall to provide stateful, managed, network firewall and intrusion detection and prevention filtering for your VPCs in Amazon VPC .
|
|
80
80
|
|
|
81
81
|
The firewall defines the configuration settings for an AWS Network Firewall firewall. The settings include the firewall policy, the subnets in your VPC to use for the firewall endpoints, and any tags that are attached to the firewall AWS resource.
|
|
82
82
|
|
|
@@ -93,24 +93,29 @@ class CfnFirewall(
|
|
|
93
93
|
cfn_firewall = networkfirewall.CfnFirewall(self, "MyCfnFirewall",
|
|
94
94
|
firewall_name="firewallName",
|
|
95
95
|
firewall_policy_arn="firewallPolicyArn",
|
|
96
|
-
subnet_mappings=[networkfirewall.CfnFirewall.SubnetMappingProperty(
|
|
97
|
-
subnet_id="subnetId",
|
|
98
|
-
|
|
99
|
-
# the properties below are optional
|
|
100
|
-
ip_address_type="ipAddressType"
|
|
101
|
-
)],
|
|
102
|
-
vpc_id="vpcId",
|
|
103
96
|
|
|
104
97
|
# the properties below are optional
|
|
98
|
+
availability_zone_change_protection=False,
|
|
99
|
+
availability_zone_mappings=[networkfirewall.CfnFirewall.AvailabilityZoneMappingProperty(
|
|
100
|
+
availability_zone="availabilityZone"
|
|
101
|
+
)],
|
|
105
102
|
delete_protection=False,
|
|
106
103
|
description="description",
|
|
107
104
|
enabled_analysis_types=["enabledAnalysisTypes"],
|
|
108
105
|
firewall_policy_change_protection=False,
|
|
109
106
|
subnet_change_protection=False,
|
|
107
|
+
subnet_mappings=[networkfirewall.CfnFirewall.SubnetMappingProperty(
|
|
108
|
+
subnet_id="subnetId",
|
|
109
|
+
|
|
110
|
+
# the properties below are optional
|
|
111
|
+
ip_address_type="ipAddressType"
|
|
112
|
+
)],
|
|
110
113
|
tags=[CfnTag(
|
|
111
114
|
key="key",
|
|
112
115
|
value="value"
|
|
113
|
-
)]
|
|
116
|
+
)],
|
|
117
|
+
transit_gateway_id="transitGatewayId",
|
|
118
|
+
vpc_id="vpcId"
|
|
114
119
|
)
|
|
115
120
|
'''
|
|
116
121
|
|
|
@@ -121,28 +126,34 @@ class CfnFirewall(
|
|
|
121
126
|
*,
|
|
122
127
|
firewall_name: builtins.str,
|
|
123
128
|
firewall_policy_arn: builtins.str,
|
|
124
|
-
|
|
125
|
-
|
|
129
|
+
availability_zone_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
130
|
+
availability_zone_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFirewall.AvailabilityZoneMappingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
126
131
|
delete_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
127
132
|
description: typing.Optional[builtins.str] = None,
|
|
128
133
|
enabled_analysis_types: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
129
134
|
firewall_policy_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
130
135
|
subnet_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
136
|
+
subnet_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFirewall.SubnetMappingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
131
137
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
138
|
+
transit_gateway_id: typing.Optional[builtins.str] = None,
|
|
139
|
+
vpc_id: typing.Optional[builtins.str] = None,
|
|
132
140
|
) -> None:
|
|
133
141
|
'''
|
|
134
142
|
:param scope: Scope in which this resource is defined.
|
|
135
143
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
136
144
|
:param firewall_name: The descriptive name of the firewall. You can't change the name of a firewall after you create it.
|
|
137
145
|
:param firewall_policy_arn: The Amazon Resource Name (ARN) of the firewall policy. The relationship of firewall to firewall policy is many to one. Each firewall requires one firewall policy association, and you can use the same firewall policy for multiple firewalls.
|
|
138
|
-
:param
|
|
139
|
-
:param
|
|
146
|
+
:param availability_zone_change_protection: A setting indicating whether the firewall is protected against changes to its Availability Zone configuration. When set to ``TRUE`` , you must first disable this protection before adding or removing Availability Zones.
|
|
147
|
+
:param availability_zone_mappings: The Availability Zones where the firewall endpoints are created for a transit gateway-attached firewall. Each mapping specifies an Availability Zone where the firewall processes traffic.
|
|
140
148
|
:param delete_protection: A flag indicating whether it is possible to delete the firewall. A setting of ``TRUE`` indicates that the firewall is protected against deletion. Use this setting to protect against accidentally deleting a firewall that is in use. When you create a firewall, the operation initializes this flag to ``TRUE`` .
|
|
141
149
|
:param description: A description of the firewall.
|
|
142
150
|
:param enabled_analysis_types: An optional setting indicating the specific traffic analysis types to enable on the firewall.
|
|
143
151
|
:param firewall_policy_change_protection: A setting indicating whether the firewall is protected against a change to the firewall policy association. Use this setting to protect against accidentally modifying the firewall policy for a firewall that is in use. When you create a firewall, the operation initializes this setting to ``TRUE`` .
|
|
144
152
|
:param subnet_change_protection: A setting indicating whether the firewall is protected against changes to the subnet associations. Use this setting to protect against accidentally modifying the subnet associations for a firewall that is in use. When you create a firewall, the operation initializes this setting to ``TRUE`` .
|
|
153
|
+
:param subnet_mappings: The primary public subnets that Network Firewall is using for the firewall. Network Firewall creates a firewall endpoint in each subnet. Create a subnet mapping for each Availability Zone where you want to use the firewall. These subnets are all defined for a single, primary VPC, and each must belong to a different Availability Zone. Each of these subnets establishes the availability of the firewall in its Availability Zone. In addition to these subnets, you can define other endpoints for the firewall in ``VpcEndpointAssociation`` resources. You can define these additional endpoints for any VPC, and for any of the Availability Zones where the firewall resource already has a subnet mapping. VPC endpoint associations give you the ability to protect multiple VPCs using a single firewall, and to define multiple firewall endpoints for a VPC in a single Availability Zone.
|
|
145
154
|
:param tags: An array of key-value pairs to apply to this resource. For more information, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
|
|
155
|
+
:param transit_gateway_id: The unique identifier of the transit gateway associated with this firewall. This field is only present for transit gateway-attached firewalls.
|
|
156
|
+
:param vpc_id: The unique identifier of the VPC where the firewall is in use. You can't change the VPC of a firewall after you create the firewall.
|
|
146
157
|
'''
|
|
147
158
|
if __debug__:
|
|
148
159
|
type_hints = typing.get_type_hints(_typecheckingstub__8735e4ce7e79159823190ad059af802b7721b71930c6b4b8805c4676b38d4d56)
|
|
@@ -151,14 +162,17 @@ class CfnFirewall(
|
|
|
151
162
|
props = CfnFirewallProps(
|
|
152
163
|
firewall_name=firewall_name,
|
|
153
164
|
firewall_policy_arn=firewall_policy_arn,
|
|
154
|
-
|
|
155
|
-
|
|
165
|
+
availability_zone_change_protection=availability_zone_change_protection,
|
|
166
|
+
availability_zone_mappings=availability_zone_mappings,
|
|
156
167
|
delete_protection=delete_protection,
|
|
157
168
|
description=description,
|
|
158
169
|
enabled_analysis_types=enabled_analysis_types,
|
|
159
170
|
firewall_policy_change_protection=firewall_policy_change_protection,
|
|
160
171
|
subnet_change_protection=subnet_change_protection,
|
|
172
|
+
subnet_mappings=subnet_mappings,
|
|
161
173
|
tags=tags,
|
|
174
|
+
transit_gateway_id=transit_gateway_id,
|
|
175
|
+
vpc_id=vpc_id,
|
|
162
176
|
)
|
|
163
177
|
|
|
164
178
|
jsii.create(self.__class__, self, [scope, id, props])
|
|
@@ -207,7 +221,7 @@ class CfnFirewall(
|
|
|
207
221
|
@builtins.property
|
|
208
222
|
@jsii.member(jsii_name="attrFirewallArn")
|
|
209
223
|
def attr_firewall_arn(self) -> builtins.str:
|
|
210
|
-
'''The Amazon Resource Name (ARN) of the
|
|
224
|
+
'''The Amazon Resource Name (ARN) of the firewall.
|
|
211
225
|
|
|
212
226
|
:cloudformationAttribute: FirewallArn
|
|
213
227
|
'''
|
|
@@ -216,7 +230,7 @@ class CfnFirewall(
|
|
|
216
230
|
@builtins.property
|
|
217
231
|
@jsii.member(jsii_name="attrFirewallId")
|
|
218
232
|
def attr_firewall_id(self) -> builtins.str:
|
|
219
|
-
'''The name of the
|
|
233
|
+
'''The name of the firewallresource.
|
|
220
234
|
|
|
221
235
|
:cloudformationAttribute: FirewallId
|
|
222
236
|
'''
|
|
@@ -260,35 +274,40 @@ class CfnFirewall(
|
|
|
260
274
|
jsii.set(self, "firewallPolicyArn", value) # pyright: ignore[reportArgumentType]
|
|
261
275
|
|
|
262
276
|
@builtins.property
|
|
263
|
-
@jsii.member(jsii_name="
|
|
264
|
-
def
|
|
277
|
+
@jsii.member(jsii_name="availabilityZoneChangeProtection")
|
|
278
|
+
def availability_zone_change_protection(
|
|
265
279
|
self,
|
|
266
|
-
) -> typing.
|
|
267
|
-
'''
|
|
268
|
-
return typing.cast(typing.
|
|
280
|
+
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
281
|
+
'''A setting indicating whether the firewall is protected against changes to its Availability Zone configuration.'''
|
|
282
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "availabilityZoneChangeProtection"))
|
|
269
283
|
|
|
270
|
-
@
|
|
271
|
-
def
|
|
284
|
+
@availability_zone_change_protection.setter
|
|
285
|
+
def availability_zone_change_protection(
|
|
272
286
|
self,
|
|
273
|
-
value: typing.
|
|
287
|
+
value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
|
|
274
288
|
) -> None:
|
|
275
289
|
if __debug__:
|
|
276
|
-
type_hints = typing.get_type_hints(
|
|
290
|
+
type_hints = typing.get_type_hints(_typecheckingstub__9264301e2259874347a035c96f8c2b41c3eace108b10ab012df466442d7477f1)
|
|
277
291
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
278
|
-
jsii.set(self, "
|
|
292
|
+
jsii.set(self, "availabilityZoneChangeProtection", value) # pyright: ignore[reportArgumentType]
|
|
279
293
|
|
|
280
294
|
@builtins.property
|
|
281
|
-
@jsii.member(jsii_name="
|
|
282
|
-
def
|
|
283
|
-
|
|
284
|
-
|
|
295
|
+
@jsii.member(jsii_name="availabilityZoneMappings")
|
|
296
|
+
def availability_zone_mappings(
|
|
297
|
+
self,
|
|
298
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnFirewall.AvailabilityZoneMappingProperty"]]]]:
|
|
299
|
+
'''The Availability Zones where the firewall endpoints are created for a transit gateway-attached firewall.'''
|
|
300
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnFirewall.AvailabilityZoneMappingProperty"]]]], jsii.get(self, "availabilityZoneMappings"))
|
|
285
301
|
|
|
286
|
-
@
|
|
287
|
-
def
|
|
302
|
+
@availability_zone_mappings.setter
|
|
303
|
+
def availability_zone_mappings(
|
|
304
|
+
self,
|
|
305
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnFirewall.AvailabilityZoneMappingProperty"]]]],
|
|
306
|
+
) -> None:
|
|
288
307
|
if __debug__:
|
|
289
|
-
type_hints = typing.get_type_hints(
|
|
308
|
+
type_hints = typing.get_type_hints(_typecheckingstub__cf571f7b78cee2a31a1b36a9ada83e153f52c7a14fea3f65c9362d1d4634dd77)
|
|
290
309
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
291
|
-
jsii.set(self, "
|
|
310
|
+
jsii.set(self, "availabilityZoneMappings", value) # pyright: ignore[reportArgumentType]
|
|
292
311
|
|
|
293
312
|
@builtins.property
|
|
294
313
|
@jsii.member(jsii_name="deleteProtection")
|
|
@@ -373,6 +392,24 @@ class CfnFirewall(
|
|
|
373
392
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
374
393
|
jsii.set(self, "subnetChangeProtection", value) # pyright: ignore[reportArgumentType]
|
|
375
394
|
|
|
395
|
+
@builtins.property
|
|
396
|
+
@jsii.member(jsii_name="subnetMappings")
|
|
397
|
+
def subnet_mappings(
|
|
398
|
+
self,
|
|
399
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnFirewall.SubnetMappingProperty"]]]]:
|
|
400
|
+
'''The primary public subnets that Network Firewall is using for the firewall.'''
|
|
401
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnFirewall.SubnetMappingProperty"]]]], jsii.get(self, "subnetMappings"))
|
|
402
|
+
|
|
403
|
+
@subnet_mappings.setter
|
|
404
|
+
def subnet_mappings(
|
|
405
|
+
self,
|
|
406
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnFirewall.SubnetMappingProperty"]]]],
|
|
407
|
+
) -> None:
|
|
408
|
+
if __debug__:
|
|
409
|
+
type_hints = typing.get_type_hints(_typecheckingstub__0f2f1e41c3294b6f9ed43f3936b8feb28ed4bd73021f059aae4743db717241ab)
|
|
410
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
411
|
+
jsii.set(self, "subnetMappings", value) # pyright: ignore[reportArgumentType]
|
|
412
|
+
|
|
376
413
|
@builtins.property
|
|
377
414
|
@jsii.member(jsii_name="tagsRaw")
|
|
378
415
|
def tags_raw(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
@@ -386,6 +423,90 @@ class CfnFirewall(
|
|
|
386
423
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
387
424
|
jsii.set(self, "tagsRaw", value) # pyright: ignore[reportArgumentType]
|
|
388
425
|
|
|
426
|
+
@builtins.property
|
|
427
|
+
@jsii.member(jsii_name="transitGatewayId")
|
|
428
|
+
def transit_gateway_id(self) -> typing.Optional[builtins.str]:
|
|
429
|
+
'''The unique identifier of the transit gateway associated with this firewall.'''
|
|
430
|
+
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "transitGatewayId"))
|
|
431
|
+
|
|
432
|
+
@transit_gateway_id.setter
|
|
433
|
+
def transit_gateway_id(self, value: typing.Optional[builtins.str]) -> None:
|
|
434
|
+
if __debug__:
|
|
435
|
+
type_hints = typing.get_type_hints(_typecheckingstub__ebf25e7b4ccdda1a25794e9d426e24b28f37c786df4576a4b499042b55c26bc6)
|
|
436
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
437
|
+
jsii.set(self, "transitGatewayId", value) # pyright: ignore[reportArgumentType]
|
|
438
|
+
|
|
439
|
+
@builtins.property
|
|
440
|
+
@jsii.member(jsii_name="vpcId")
|
|
441
|
+
def vpc_id(self) -> typing.Optional[builtins.str]:
|
|
442
|
+
'''The unique identifier of the VPC where the firewall is in use.'''
|
|
443
|
+
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "vpcId"))
|
|
444
|
+
|
|
445
|
+
@vpc_id.setter
|
|
446
|
+
def vpc_id(self, value: typing.Optional[builtins.str]) -> None:
|
|
447
|
+
if __debug__:
|
|
448
|
+
type_hints = typing.get_type_hints(_typecheckingstub__ba092b3d0c9ca8819ad31fd4320cebdee3150a45603af80de70f2c0bbb9e04b5)
|
|
449
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
450
|
+
jsii.set(self, "vpcId", value) # pyright: ignore[reportArgumentType]
|
|
451
|
+
|
|
452
|
+
@jsii.data_type(
|
|
453
|
+
jsii_type="aws-cdk-lib.aws_networkfirewall.CfnFirewall.AvailabilityZoneMappingProperty",
|
|
454
|
+
jsii_struct_bases=[],
|
|
455
|
+
name_mapping={"availability_zone": "availabilityZone"},
|
|
456
|
+
)
|
|
457
|
+
class AvailabilityZoneMappingProperty:
|
|
458
|
+
def __init__(self, *, availability_zone: builtins.str) -> None:
|
|
459
|
+
'''Defines the mapping between an Availability Zone and a firewall endpoint for a transit gateway-attached firewall.
|
|
460
|
+
|
|
461
|
+
Each mapping represents where the firewall can process traffic. You use these mappings when calling ``CreateFirewall`` , ``AssociateAvailabilityZones`` , and ``DisassociateAvailabilityZones`` .
|
|
462
|
+
|
|
463
|
+
To retrieve the current Availability Zone mappings for a firewall, use ``DescribeFirewall`` .
|
|
464
|
+
|
|
465
|
+
:param availability_zone: The ID of the Availability Zone where the firewall endpoint is located. For example, ``us-east-2a`` . The Availability Zone must be in the same Region as the transit gateway.
|
|
466
|
+
|
|
467
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-firewall-availabilityzonemapping.html
|
|
468
|
+
:exampleMetadata: fixture=_generated
|
|
469
|
+
|
|
470
|
+
Example::
|
|
471
|
+
|
|
472
|
+
# The code below shows an example of how to instantiate this type.
|
|
473
|
+
# The values are placeholders you should change.
|
|
474
|
+
from aws_cdk import aws_networkfirewall as networkfirewall
|
|
475
|
+
|
|
476
|
+
availability_zone_mapping_property = networkfirewall.CfnFirewall.AvailabilityZoneMappingProperty(
|
|
477
|
+
availability_zone="availabilityZone"
|
|
478
|
+
)
|
|
479
|
+
'''
|
|
480
|
+
if __debug__:
|
|
481
|
+
type_hints = typing.get_type_hints(_typecheckingstub__e12d4b074bc6fa59b990e1d43ef30390330da9da999dbf3bac9bf5e98eb30caf)
|
|
482
|
+
check_type(argname="argument availability_zone", value=availability_zone, expected_type=type_hints["availability_zone"])
|
|
483
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
484
|
+
"availability_zone": availability_zone,
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
@builtins.property
|
|
488
|
+
def availability_zone(self) -> builtins.str:
|
|
489
|
+
'''The ID of the Availability Zone where the firewall endpoint is located.
|
|
490
|
+
|
|
491
|
+
For example, ``us-east-2a`` . The Availability Zone must be in the same Region as the transit gateway.
|
|
492
|
+
|
|
493
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-firewall-availabilityzonemapping.html#cfn-networkfirewall-firewall-availabilityzonemapping-availabilityzone
|
|
494
|
+
'''
|
|
495
|
+
result = self._values.get("availability_zone")
|
|
496
|
+
assert result is not None, "Required property 'availability_zone' is missing"
|
|
497
|
+
return typing.cast(builtins.str, result)
|
|
498
|
+
|
|
499
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
500
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
501
|
+
|
|
502
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
503
|
+
return not (rhs == self)
|
|
504
|
+
|
|
505
|
+
def __repr__(self) -> str:
|
|
506
|
+
return "AvailabilityZoneMappingProperty(%s)" % ", ".join(
|
|
507
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
508
|
+
)
|
|
509
|
+
|
|
389
510
|
@jsii.data_type(
|
|
390
511
|
jsii_type="aws-cdk-lib.aws_networkfirewall.CfnFirewall.SubnetMappingProperty",
|
|
391
512
|
jsii_struct_bases=[],
|
|
@@ -470,7 +591,7 @@ class CfnFirewallPolicy(
|
|
|
470
591
|
metaclass=jsii.JSIIMeta,
|
|
471
592
|
jsii_type="aws-cdk-lib.aws_networkfirewall.CfnFirewallPolicy",
|
|
472
593
|
):
|
|
473
|
-
'''Use the
|
|
594
|
+
'''Use the firewall policy to define the stateless and stateful network traffic filtering behavior for your firewall.
|
|
474
595
|
|
|
475
596
|
You can use one firewall policy for multiple firewalls.
|
|
476
597
|
|
|
@@ -509,6 +630,7 @@ class CfnFirewallPolicy(
|
|
|
509
630
|
resource_arn="resourceArn",
|
|
510
631
|
|
|
511
632
|
# the properties below are optional
|
|
633
|
+
deep_threat_inspection=False,
|
|
512
634
|
override=networkfirewall.CfnFirewallPolicy.StatefulRuleGroupOverrideProperty(
|
|
513
635
|
action="action"
|
|
514
636
|
),
|
|
@@ -605,7 +727,7 @@ class CfnFirewallPolicy(
|
|
|
605
727
|
@builtins.property
|
|
606
728
|
@jsii.member(jsii_name="attrFirewallPolicyArn")
|
|
607
729
|
def attr_firewall_policy_arn(self) -> builtins.str:
|
|
608
|
-
'''The Amazon Resource Name (ARN) of the
|
|
730
|
+
'''The Amazon Resource Name (ARN) of the firewall policy.
|
|
609
731
|
|
|
610
732
|
:cloudformationAttribute: FirewallPolicyArn
|
|
611
733
|
'''
|
|
@@ -614,7 +736,7 @@ class CfnFirewallPolicy(
|
|
|
614
736
|
@builtins.property
|
|
615
737
|
@jsii.member(jsii_name="attrFirewallPolicyId")
|
|
616
738
|
def attr_firewall_policy_id(self) -> builtins.str:
|
|
617
|
-
'''The unique ID of the
|
|
739
|
+
'''The unique ID of the firewall policy resource.
|
|
618
740
|
|
|
619
741
|
:cloudformationAttribute: FirewallPolicyId
|
|
620
742
|
'''
|
|
@@ -776,8 +898,8 @@ class CfnFirewallPolicy(
|
|
|
776
898
|
|
|
777
899
|
You can use custom actions in the following places:
|
|
778
900
|
|
|
779
|
-
- In an ``
|
|
780
|
-
- In an
|
|
901
|
+
- In an ``StatelessRulesAndCustomActions`` . The custom actions are available for use by name inside the ``StatelessRulesAndCustomActions`` where you define them. You can use them for your stateless rule actions to specify what to do with a packet that matches the rule's match attributes.
|
|
902
|
+
- In an firewall policy specification, in ``StatelessCustomActions`` . The custom actions are available for use inside the policy where you define them. You can use them for the policy's default stateless actions settings to specify what to do with packets that don't match any of the policy's stateless rules.
|
|
781
903
|
|
|
782
904
|
:param action_definition: The custom action associated with the action name.
|
|
783
905
|
:param action_name: The descriptive name of the custom action. You can't change the name of a custom action after you create it.
|
|
@@ -978,6 +1100,7 @@ class CfnFirewallPolicy(
|
|
|
978
1100
|
resource_arn="resourceArn",
|
|
979
1101
|
|
|
980
1102
|
# the properties below are optional
|
|
1103
|
+
deep_threat_inspection=False,
|
|
981
1104
|
override=networkfirewall.CfnFirewallPolicy.StatefulRuleGroupOverrideProperty(
|
|
982
1105
|
action="action"
|
|
983
1106
|
),
|
|
@@ -1241,7 +1364,7 @@ class CfnFirewallPolicy(
|
|
|
1241
1364
|
) -> None:
|
|
1242
1365
|
'''A list of IP addresses and address ranges, in CIDR notation.
|
|
1243
1366
|
|
|
1244
|
-
This is part of a
|
|
1367
|
+
This is part of a rule variable.
|
|
1245
1368
|
|
|
1246
1369
|
:param definition: The list of IP addresses and address ranges, in CIDR notation.
|
|
1247
1370
|
|
|
@@ -1568,6 +1691,7 @@ class CfnFirewallPolicy(
|
|
|
1568
1691
|
jsii_struct_bases=[],
|
|
1569
1692
|
name_mapping={
|
|
1570
1693
|
"resource_arn": "resourceArn",
|
|
1694
|
+
"deep_threat_inspection": "deepThreatInspection",
|
|
1571
1695
|
"override": "override",
|
|
1572
1696
|
"priority": "priority",
|
|
1573
1697
|
},
|
|
@@ -1577,14 +1701,16 @@ class CfnFirewallPolicy(
|
|
|
1577
1701
|
self,
|
|
1578
1702
|
*,
|
|
1579
1703
|
resource_arn: builtins.str,
|
|
1704
|
+
deep_threat_inspection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
1580
1705
|
override: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFirewallPolicy.StatefulRuleGroupOverrideProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1581
1706
|
priority: typing.Optional[jsii.Number] = None,
|
|
1582
1707
|
) -> None:
|
|
1583
1708
|
'''Identifier for a single stateful rule group, used in a firewall policy to refer to a rule group.
|
|
1584
1709
|
|
|
1585
1710
|
:param resource_arn: The Amazon Resource Name (ARN) of the stateful rule group.
|
|
1711
|
+
:param deep_threat_inspection: AWS Network Firewall plans to augment the active threat defense managed rule group with an additional deep threat inspection capability. When this capability is released, AWS will analyze service logs of network traffic processed by these rule groups to identify threat indicators across customers. AWS will use these threat indicators to improve the active threat defense managed rule groups and protect the security of AWS customers and services. .. epigraph:: Customers can opt-out of deep threat inspection at any time through the AWS Network Firewall console or API. When customers opt out, AWS Network Firewall will not use the network traffic processed by those customers' active threat defense rule groups for rule group improvement.
|
|
1586
1712
|
:param override: The action that allows the policy owner to override the behavior of the rule group within a policy.
|
|
1587
|
-
:param priority: An integer setting that indicates the order in which to run the stateful rule groups in a single
|
|
1713
|
+
:param priority: An integer setting that indicates the order in which to run the stateful rule groups in a single firewall policy. This setting only applies to firewall policies that specify the ``STRICT_ORDER`` rule order in the stateful engine options settings. Network Firewall evalutes each stateful rule group against a packet starting with the group that has the lowest priority setting. You must ensure that the priority settings are unique within each policy. You can change the priority settings of your rule groups at any time. To make it easier to insert rule groups later, number them so there's a wide range in between, for example use 100, 200, and so on.
|
|
1588
1714
|
|
|
1589
1715
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-firewallpolicy-statefulrulegroupreference.html
|
|
1590
1716
|
:exampleMetadata: fixture=_generated
|
|
@@ -1599,6 +1725,7 @@ class CfnFirewallPolicy(
|
|
|
1599
1725
|
resource_arn="resourceArn",
|
|
1600
1726
|
|
|
1601
1727
|
# the properties below are optional
|
|
1728
|
+
deep_threat_inspection=False,
|
|
1602
1729
|
override=networkfirewall.CfnFirewallPolicy.StatefulRuleGroupOverrideProperty(
|
|
1603
1730
|
action="action"
|
|
1604
1731
|
),
|
|
@@ -1608,11 +1735,14 @@ class CfnFirewallPolicy(
|
|
|
1608
1735
|
if __debug__:
|
|
1609
1736
|
type_hints = typing.get_type_hints(_typecheckingstub__b35f780a3045f4df1ecbf5bb69deb711659429dcfd9f87d388080942e7b17ef8)
|
|
1610
1737
|
check_type(argname="argument resource_arn", value=resource_arn, expected_type=type_hints["resource_arn"])
|
|
1738
|
+
check_type(argname="argument deep_threat_inspection", value=deep_threat_inspection, expected_type=type_hints["deep_threat_inspection"])
|
|
1611
1739
|
check_type(argname="argument override", value=override, expected_type=type_hints["override"])
|
|
1612
1740
|
check_type(argname="argument priority", value=priority, expected_type=type_hints["priority"])
|
|
1613
1741
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1614
1742
|
"resource_arn": resource_arn,
|
|
1615
1743
|
}
|
|
1744
|
+
if deep_threat_inspection is not None:
|
|
1745
|
+
self._values["deep_threat_inspection"] = deep_threat_inspection
|
|
1616
1746
|
if override is not None:
|
|
1617
1747
|
self._values["override"] = override
|
|
1618
1748
|
if priority is not None:
|
|
@@ -1628,6 +1758,22 @@ class CfnFirewallPolicy(
|
|
|
1628
1758
|
assert result is not None, "Required property 'resource_arn' is missing"
|
|
1629
1759
|
return typing.cast(builtins.str, result)
|
|
1630
1760
|
|
|
1761
|
+
@builtins.property
|
|
1762
|
+
def deep_threat_inspection(
|
|
1763
|
+
self,
|
|
1764
|
+
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
1765
|
+
'''AWS Network Firewall plans to augment the active threat defense managed rule group with an additional deep threat inspection capability.
|
|
1766
|
+
|
|
1767
|
+
When this capability is released, AWS will analyze service logs of network traffic processed by these rule groups to identify threat indicators across customers. AWS will use these threat indicators to improve the active threat defense managed rule groups and protect the security of AWS customers and services.
|
|
1768
|
+
.. epigraph::
|
|
1769
|
+
|
|
1770
|
+
Customers can opt-out of deep threat inspection at any time through the AWS Network Firewall console or API. When customers opt out, AWS Network Firewall will not use the network traffic processed by those customers' active threat defense rule groups for rule group improvement.
|
|
1771
|
+
|
|
1772
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-firewallpolicy-statefulrulegroupreference.html#cfn-networkfirewall-firewallpolicy-statefulrulegroupreference-deepthreatinspection
|
|
1773
|
+
'''
|
|
1774
|
+
result = self._values.get("deep_threat_inspection")
|
|
1775
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
|
|
1776
|
+
|
|
1631
1777
|
@builtins.property
|
|
1632
1778
|
def override(
|
|
1633
1779
|
self,
|
|
@@ -1641,7 +1787,7 @@ class CfnFirewallPolicy(
|
|
|
1641
1787
|
|
|
1642
1788
|
@builtins.property
|
|
1643
1789
|
def priority(self) -> typing.Optional[jsii.Number]:
|
|
1644
|
-
'''An integer setting that indicates the order in which to run the stateful rule groups in a single
|
|
1790
|
+
'''An integer setting that indicates the order in which to run the stateful rule groups in a single firewall policy.
|
|
1645
1791
|
|
|
1646
1792
|
This setting only applies to firewall policies that specify the ``STRICT_ORDER`` rule order in the stateful engine options settings.
|
|
1647
1793
|
|
|
@@ -1679,7 +1825,7 @@ class CfnFirewallPolicy(
|
|
|
1679
1825
|
) -> None:
|
|
1680
1826
|
'''Identifier for a single stateless rule group, used in a firewall policy to refer to the rule group.
|
|
1681
1827
|
|
|
1682
|
-
:param priority: An integer setting that indicates the order in which to run the stateless rule groups in a single
|
|
1828
|
+
:param priority: An integer setting that indicates the order in which to run the stateless rule groups in a single firewall policy. Network Firewall applies each stateless rule group to a packet starting with the group that has the lowest priority setting. You must ensure that the priority settings are unique within each policy.
|
|
1683
1829
|
:param resource_arn: The Amazon Resource Name (ARN) of the stateless rule group.
|
|
1684
1830
|
|
|
1685
1831
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-firewallpolicy-statelessrulegroupreference.html
|
|
@@ -1707,7 +1853,7 @@ class CfnFirewallPolicy(
|
|
|
1707
1853
|
|
|
1708
1854
|
@builtins.property
|
|
1709
1855
|
def priority(self) -> jsii.Number:
|
|
1710
|
-
'''An integer setting that indicates the order in which to run the stateless rule groups in a single
|
|
1856
|
+
'''An integer setting that indicates the order in which to run the stateless rule groups in a single firewall policy.
|
|
1711
1857
|
|
|
1712
1858
|
Network Firewall applies each stateless rule group to a packet starting with the group that has the lowest priority setting. You must ensure that the priority settings are unique within each policy.
|
|
1713
1859
|
|
|
@@ -1799,6 +1945,7 @@ class CfnFirewallPolicyProps:
|
|
|
1799
1945
|
resource_arn="resourceArn",
|
|
1800
1946
|
|
|
1801
1947
|
# the properties below are optional
|
|
1948
|
+
deep_threat_inspection=False,
|
|
1802
1949
|
override=networkfirewall.CfnFirewallPolicy.StatefulRuleGroupOverrideProperty(
|
|
1803
1950
|
action="action"
|
|
1804
1951
|
),
|
|
@@ -1907,14 +2054,17 @@ class CfnFirewallPolicyProps:
|
|
|
1907
2054
|
name_mapping={
|
|
1908
2055
|
"firewall_name": "firewallName",
|
|
1909
2056
|
"firewall_policy_arn": "firewallPolicyArn",
|
|
1910
|
-
"
|
|
1911
|
-
"
|
|
2057
|
+
"availability_zone_change_protection": "availabilityZoneChangeProtection",
|
|
2058
|
+
"availability_zone_mappings": "availabilityZoneMappings",
|
|
1912
2059
|
"delete_protection": "deleteProtection",
|
|
1913
2060
|
"description": "description",
|
|
1914
2061
|
"enabled_analysis_types": "enabledAnalysisTypes",
|
|
1915
2062
|
"firewall_policy_change_protection": "firewallPolicyChangeProtection",
|
|
1916
2063
|
"subnet_change_protection": "subnetChangeProtection",
|
|
2064
|
+
"subnet_mappings": "subnetMappings",
|
|
1917
2065
|
"tags": "tags",
|
|
2066
|
+
"transit_gateway_id": "transitGatewayId",
|
|
2067
|
+
"vpc_id": "vpcId",
|
|
1918
2068
|
},
|
|
1919
2069
|
)
|
|
1920
2070
|
class CfnFirewallProps:
|
|
@@ -1923,27 +2073,33 @@ class CfnFirewallProps:
|
|
|
1923
2073
|
*,
|
|
1924
2074
|
firewall_name: builtins.str,
|
|
1925
2075
|
firewall_policy_arn: builtins.str,
|
|
1926
|
-
|
|
1927
|
-
|
|
2076
|
+
availability_zone_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
2077
|
+
availability_zone_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFirewall.AvailabilityZoneMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
1928
2078
|
delete_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
1929
2079
|
description: typing.Optional[builtins.str] = None,
|
|
1930
2080
|
enabled_analysis_types: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
1931
2081
|
firewall_policy_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
1932
2082
|
subnet_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
2083
|
+
subnet_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFirewall.SubnetMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
1933
2084
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2085
|
+
transit_gateway_id: typing.Optional[builtins.str] = None,
|
|
2086
|
+
vpc_id: typing.Optional[builtins.str] = None,
|
|
1934
2087
|
) -> None:
|
|
1935
2088
|
'''Properties for defining a ``CfnFirewall``.
|
|
1936
2089
|
|
|
1937
2090
|
:param firewall_name: The descriptive name of the firewall. You can't change the name of a firewall after you create it.
|
|
1938
2091
|
:param firewall_policy_arn: The Amazon Resource Name (ARN) of the firewall policy. The relationship of firewall to firewall policy is many to one. Each firewall requires one firewall policy association, and you can use the same firewall policy for multiple firewalls.
|
|
1939
|
-
:param
|
|
1940
|
-
:param
|
|
2092
|
+
:param availability_zone_change_protection: A setting indicating whether the firewall is protected against changes to its Availability Zone configuration. When set to ``TRUE`` , you must first disable this protection before adding or removing Availability Zones.
|
|
2093
|
+
:param availability_zone_mappings: The Availability Zones where the firewall endpoints are created for a transit gateway-attached firewall. Each mapping specifies an Availability Zone where the firewall processes traffic.
|
|
1941
2094
|
:param delete_protection: A flag indicating whether it is possible to delete the firewall. A setting of ``TRUE`` indicates that the firewall is protected against deletion. Use this setting to protect against accidentally deleting a firewall that is in use. When you create a firewall, the operation initializes this flag to ``TRUE`` .
|
|
1942
2095
|
:param description: A description of the firewall.
|
|
1943
2096
|
:param enabled_analysis_types: An optional setting indicating the specific traffic analysis types to enable on the firewall.
|
|
1944
2097
|
:param firewall_policy_change_protection: A setting indicating whether the firewall is protected against a change to the firewall policy association. Use this setting to protect against accidentally modifying the firewall policy for a firewall that is in use. When you create a firewall, the operation initializes this setting to ``TRUE`` .
|
|
1945
2098
|
:param subnet_change_protection: A setting indicating whether the firewall is protected against changes to the subnet associations. Use this setting to protect against accidentally modifying the subnet associations for a firewall that is in use. When you create a firewall, the operation initializes this setting to ``TRUE`` .
|
|
2099
|
+
:param subnet_mappings: The primary public subnets that Network Firewall is using for the firewall. Network Firewall creates a firewall endpoint in each subnet. Create a subnet mapping for each Availability Zone where you want to use the firewall. These subnets are all defined for a single, primary VPC, and each must belong to a different Availability Zone. Each of these subnets establishes the availability of the firewall in its Availability Zone. In addition to these subnets, you can define other endpoints for the firewall in ``VpcEndpointAssociation`` resources. You can define these additional endpoints for any VPC, and for any of the Availability Zones where the firewall resource already has a subnet mapping. VPC endpoint associations give you the ability to protect multiple VPCs using a single firewall, and to define multiple firewall endpoints for a VPC in a single Availability Zone.
|
|
1946
2100
|
:param tags: An array of key-value pairs to apply to this resource. For more information, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
|
|
2101
|
+
:param transit_gateway_id: The unique identifier of the transit gateway associated with this firewall. This field is only present for transit gateway-attached firewalls.
|
|
2102
|
+
:param vpc_id: The unique identifier of the VPC where the firewall is in use. You can't change the VPC of a firewall after you create the firewall.
|
|
1947
2103
|
|
|
1948
2104
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html
|
|
1949
2105
|
:exampleMetadata: fixture=_generated
|
|
@@ -1957,44 +2113,54 @@ class CfnFirewallProps:
|
|
|
1957
2113
|
cfn_firewall_props = networkfirewall.CfnFirewallProps(
|
|
1958
2114
|
firewall_name="firewallName",
|
|
1959
2115
|
firewall_policy_arn="firewallPolicyArn",
|
|
1960
|
-
subnet_mappings=[networkfirewall.CfnFirewall.SubnetMappingProperty(
|
|
1961
|
-
subnet_id="subnetId",
|
|
1962
|
-
|
|
1963
|
-
# the properties below are optional
|
|
1964
|
-
ip_address_type="ipAddressType"
|
|
1965
|
-
)],
|
|
1966
|
-
vpc_id="vpcId",
|
|
1967
2116
|
|
|
1968
2117
|
# the properties below are optional
|
|
2118
|
+
availability_zone_change_protection=False,
|
|
2119
|
+
availability_zone_mappings=[networkfirewall.CfnFirewall.AvailabilityZoneMappingProperty(
|
|
2120
|
+
availability_zone="availabilityZone"
|
|
2121
|
+
)],
|
|
1969
2122
|
delete_protection=False,
|
|
1970
2123
|
description="description",
|
|
1971
2124
|
enabled_analysis_types=["enabledAnalysisTypes"],
|
|
1972
2125
|
firewall_policy_change_protection=False,
|
|
1973
2126
|
subnet_change_protection=False,
|
|
2127
|
+
subnet_mappings=[networkfirewall.CfnFirewall.SubnetMappingProperty(
|
|
2128
|
+
subnet_id="subnetId",
|
|
2129
|
+
|
|
2130
|
+
# the properties below are optional
|
|
2131
|
+
ip_address_type="ipAddressType"
|
|
2132
|
+
)],
|
|
1974
2133
|
tags=[CfnTag(
|
|
1975
2134
|
key="key",
|
|
1976
2135
|
value="value"
|
|
1977
|
-
)]
|
|
2136
|
+
)],
|
|
2137
|
+
transit_gateway_id="transitGatewayId",
|
|
2138
|
+
vpc_id="vpcId"
|
|
1978
2139
|
)
|
|
1979
2140
|
'''
|
|
1980
2141
|
if __debug__:
|
|
1981
2142
|
type_hints = typing.get_type_hints(_typecheckingstub__8d4108d5c35b1608da0d36c8bb60f52501d3b0634ca4324342a71c57bc238e99)
|
|
1982
2143
|
check_type(argname="argument firewall_name", value=firewall_name, expected_type=type_hints["firewall_name"])
|
|
1983
2144
|
check_type(argname="argument firewall_policy_arn", value=firewall_policy_arn, expected_type=type_hints["firewall_policy_arn"])
|
|
1984
|
-
check_type(argname="argument
|
|
1985
|
-
check_type(argname="argument
|
|
2145
|
+
check_type(argname="argument availability_zone_change_protection", value=availability_zone_change_protection, expected_type=type_hints["availability_zone_change_protection"])
|
|
2146
|
+
check_type(argname="argument availability_zone_mappings", value=availability_zone_mappings, expected_type=type_hints["availability_zone_mappings"])
|
|
1986
2147
|
check_type(argname="argument delete_protection", value=delete_protection, expected_type=type_hints["delete_protection"])
|
|
1987
2148
|
check_type(argname="argument description", value=description, expected_type=type_hints["description"])
|
|
1988
2149
|
check_type(argname="argument enabled_analysis_types", value=enabled_analysis_types, expected_type=type_hints["enabled_analysis_types"])
|
|
1989
2150
|
check_type(argname="argument firewall_policy_change_protection", value=firewall_policy_change_protection, expected_type=type_hints["firewall_policy_change_protection"])
|
|
1990
2151
|
check_type(argname="argument subnet_change_protection", value=subnet_change_protection, expected_type=type_hints["subnet_change_protection"])
|
|
2152
|
+
check_type(argname="argument subnet_mappings", value=subnet_mappings, expected_type=type_hints["subnet_mappings"])
|
|
1991
2153
|
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
2154
|
+
check_type(argname="argument transit_gateway_id", value=transit_gateway_id, expected_type=type_hints["transit_gateway_id"])
|
|
2155
|
+
check_type(argname="argument vpc_id", value=vpc_id, expected_type=type_hints["vpc_id"])
|
|
1992
2156
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1993
2157
|
"firewall_name": firewall_name,
|
|
1994
2158
|
"firewall_policy_arn": firewall_policy_arn,
|
|
1995
|
-
"subnet_mappings": subnet_mappings,
|
|
1996
|
-
"vpc_id": vpc_id,
|
|
1997
2159
|
}
|
|
2160
|
+
if availability_zone_change_protection is not None:
|
|
2161
|
+
self._values["availability_zone_change_protection"] = availability_zone_change_protection
|
|
2162
|
+
if availability_zone_mappings is not None:
|
|
2163
|
+
self._values["availability_zone_mappings"] = availability_zone_mappings
|
|
1998
2164
|
if delete_protection is not None:
|
|
1999
2165
|
self._values["delete_protection"] = delete_protection
|
|
2000
2166
|
if description is not None:
|
|
@@ -2005,8 +2171,14 @@ class CfnFirewallProps:
|
|
|
2005
2171
|
self._values["firewall_policy_change_protection"] = firewall_policy_change_protection
|
|
2006
2172
|
if subnet_change_protection is not None:
|
|
2007
2173
|
self._values["subnet_change_protection"] = subnet_change_protection
|
|
2174
|
+
if subnet_mappings is not None:
|
|
2175
|
+
self._values["subnet_mappings"] = subnet_mappings
|
|
2008
2176
|
if tags is not None:
|
|
2009
2177
|
self._values["tags"] = tags
|
|
2178
|
+
if transit_gateway_id is not None:
|
|
2179
|
+
self._values["transit_gateway_id"] = transit_gateway_id
|
|
2180
|
+
if vpc_id is not None:
|
|
2181
|
+
self._values["vpc_id"] = vpc_id
|
|
2010
2182
|
|
|
2011
2183
|
@builtins.property
|
|
2012
2184
|
def firewall_name(self) -> builtins.str:
|
|
@@ -2033,34 +2205,30 @@ class CfnFirewallProps:
|
|
|
2033
2205
|
return typing.cast(builtins.str, result)
|
|
2034
2206
|
|
|
2035
2207
|
@builtins.property
|
|
2036
|
-
def
|
|
2208
|
+
def availability_zone_change_protection(
|
|
2037
2209
|
self,
|
|
2038
|
-
) -> typing.
|
|
2039
|
-
'''
|
|
2210
|
+
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
2211
|
+
'''A setting indicating whether the firewall is protected against changes to its Availability Zone configuration.
|
|
2040
2212
|
|
|
2041
|
-
|
|
2213
|
+
When set to ``TRUE`` , you must first disable this protection before adding or removing Availability Zones.
|
|
2042
2214
|
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
In addition to these subnets, you can define other endpoints for the firewall in ``VpcEndpointAssociation`` resources. You can define these additional endpoints for any VPC, and for any of the Availability Zones where the firewall resource already has a subnet mapping. VPC endpoint associations give you the ability to protect multiple VPCs using a single firewall, and to define multiple firewall endpoints for a VPC in a single Availability Zone.
|
|
2046
|
-
|
|
2047
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html#cfn-networkfirewall-firewall-subnetmappings
|
|
2215
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html#cfn-networkfirewall-firewall-availabilityzonechangeprotection
|
|
2048
2216
|
'''
|
|
2049
|
-
result = self._values.get("
|
|
2050
|
-
|
|
2051
|
-
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnFirewall.SubnetMappingProperty]]], result)
|
|
2217
|
+
result = self._values.get("availability_zone_change_protection")
|
|
2218
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
|
|
2052
2219
|
|
|
2053
2220
|
@builtins.property
|
|
2054
|
-
def
|
|
2055
|
-
|
|
2221
|
+
def availability_zone_mappings(
|
|
2222
|
+
self,
|
|
2223
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnFirewall.AvailabilityZoneMappingProperty]]]]:
|
|
2224
|
+
'''The Availability Zones where the firewall endpoints are created for a transit gateway-attached firewall.
|
|
2056
2225
|
|
|
2057
|
-
|
|
2226
|
+
Each mapping specifies an Availability Zone where the firewall processes traffic.
|
|
2058
2227
|
|
|
2059
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html#cfn-networkfirewall-firewall-
|
|
2228
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html#cfn-networkfirewall-firewall-availabilityzonemappings
|
|
2060
2229
|
'''
|
|
2061
|
-
result = self._values.get("
|
|
2062
|
-
|
|
2063
|
-
return typing.cast(builtins.str, result)
|
|
2230
|
+
result = self._values.get("availability_zone_mappings")
|
|
2231
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnFirewall.AvailabilityZoneMappingProperty]]]], result)
|
|
2064
2232
|
|
|
2065
2233
|
@builtins.property
|
|
2066
2234
|
def delete_protection(
|
|
@@ -2119,6 +2287,23 @@ class CfnFirewallProps:
|
|
|
2119
2287
|
result = self._values.get("subnet_change_protection")
|
|
2120
2288
|
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
|
|
2121
2289
|
|
|
2290
|
+
@builtins.property
|
|
2291
|
+
def subnet_mappings(
|
|
2292
|
+
self,
|
|
2293
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnFirewall.SubnetMappingProperty]]]]:
|
|
2294
|
+
'''The primary public subnets that Network Firewall is using for the firewall.
|
|
2295
|
+
|
|
2296
|
+
Network Firewall creates a firewall endpoint in each subnet. Create a subnet mapping for each Availability Zone where you want to use the firewall.
|
|
2297
|
+
|
|
2298
|
+
These subnets are all defined for a single, primary VPC, and each must belong to a different Availability Zone. Each of these subnets establishes the availability of the firewall in its Availability Zone.
|
|
2299
|
+
|
|
2300
|
+
In addition to these subnets, you can define other endpoints for the firewall in ``VpcEndpointAssociation`` resources. You can define these additional endpoints for any VPC, and for any of the Availability Zones where the firewall resource already has a subnet mapping. VPC endpoint associations give you the ability to protect multiple VPCs using a single firewall, and to define multiple firewall endpoints for a VPC in a single Availability Zone.
|
|
2301
|
+
|
|
2302
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html#cfn-networkfirewall-firewall-subnetmappings
|
|
2303
|
+
'''
|
|
2304
|
+
result = self._values.get("subnet_mappings")
|
|
2305
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnFirewall.SubnetMappingProperty]]]], result)
|
|
2306
|
+
|
|
2122
2307
|
@builtins.property
|
|
2123
2308
|
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
2124
2309
|
'''An array of key-value pairs to apply to this resource.
|
|
@@ -2130,6 +2315,28 @@ class CfnFirewallProps:
|
|
|
2130
2315
|
result = self._values.get("tags")
|
|
2131
2316
|
return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
|
|
2132
2317
|
|
|
2318
|
+
@builtins.property
|
|
2319
|
+
def transit_gateway_id(self) -> typing.Optional[builtins.str]:
|
|
2320
|
+
'''The unique identifier of the transit gateway associated with this firewall.
|
|
2321
|
+
|
|
2322
|
+
This field is only present for transit gateway-attached firewalls.
|
|
2323
|
+
|
|
2324
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html#cfn-networkfirewall-firewall-transitgatewayid
|
|
2325
|
+
'''
|
|
2326
|
+
result = self._values.get("transit_gateway_id")
|
|
2327
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
2328
|
+
|
|
2329
|
+
@builtins.property
|
|
2330
|
+
def vpc_id(self) -> typing.Optional[builtins.str]:
|
|
2331
|
+
'''The unique identifier of the VPC where the firewall is in use.
|
|
2332
|
+
|
|
2333
|
+
You can't change the VPC of a firewall after you create the firewall.
|
|
2334
|
+
|
|
2335
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html#cfn-networkfirewall-firewall-vpcid
|
|
2336
|
+
'''
|
|
2337
|
+
result = self._values.get("vpc_id")
|
|
2338
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
2339
|
+
|
|
2133
2340
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
2134
2341
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
2135
2342
|
|
|
@@ -2148,11 +2355,11 @@ class CfnLoggingConfiguration(
|
|
|
2148
2355
|
metaclass=jsii.JSIIMeta,
|
|
2149
2356
|
jsii_type="aws-cdk-lib.aws_networkfirewall.CfnLoggingConfiguration",
|
|
2150
2357
|
):
|
|
2151
|
-
'''Use the
|
|
2358
|
+
'''Use the logging configuration to define the destinations and logging options for an firewall.
|
|
2152
2359
|
|
|
2153
2360
|
You must change the logging configuration by changing one ``LogDestinationConfig`` setting at a time in your ``LogDestinationConfigs`` .
|
|
2154
2361
|
|
|
2155
|
-
You can make only one of the following changes to your
|
|
2362
|
+
You can make only one of the following changes to your logging configuration resource:
|
|
2156
2363
|
|
|
2157
2364
|
- Create a new log destination object by adding a single ``LogDestinationConfig`` array element to ``LogDestinationConfigs`` .
|
|
2158
2365
|
- Delete a log destination object by removing a single ``LogDestinationConfig`` array element from ``LogDestinationConfigs`` .
|
|
@@ -2201,8 +2408,8 @@ class CfnLoggingConfiguration(
|
|
|
2201
2408
|
'''
|
|
2202
2409
|
:param scope: Scope in which this resource is defined.
|
|
2203
2410
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
2204
|
-
:param firewall_arn: The Amazon Resource Name (ARN) of the
|
|
2205
|
-
:param logging_configuration: Defines how AWS Network Firewall performs logging for a
|
|
2411
|
+
:param firewall_arn: The Amazon Resource Name (ARN) of the firewallthat the logging configuration is associated with. You can't change the firewall specification after you create the logging configuration.
|
|
2412
|
+
:param logging_configuration: Defines how AWS Network Firewall performs logging for a firewall.
|
|
2206
2413
|
:param enable_monitoring_dashboard:
|
|
2207
2414
|
:param firewall_name: The name of the firewall that the logging configuration is associated with. You can't change the firewall specification after you create the logging configuration.
|
|
2208
2415
|
'''
|
|
@@ -2257,7 +2464,7 @@ class CfnLoggingConfiguration(
|
|
|
2257
2464
|
@builtins.property
|
|
2258
2465
|
@jsii.member(jsii_name="firewallArn")
|
|
2259
2466
|
def firewall_arn(self) -> builtins.str:
|
|
2260
|
-
'''The Amazon Resource Name (ARN) of the
|
|
2467
|
+
'''The Amazon Resource Name (ARN) of the firewallthat the logging configuration is associated with.'''
|
|
2261
2468
|
return typing.cast(builtins.str, jsii.get(self, "firewallArn"))
|
|
2262
2469
|
|
|
2263
2470
|
@firewall_arn.setter
|
|
@@ -2272,7 +2479,7 @@ class CfnLoggingConfiguration(
|
|
|
2272
2479
|
def logging_configuration(
|
|
2273
2480
|
self,
|
|
2274
2481
|
) -> typing.Union[_IResolvable_da3f097b, "CfnLoggingConfiguration.LoggingConfigurationProperty"]:
|
|
2275
|
-
'''Defines how AWS Network Firewall performs logging for a
|
|
2482
|
+
'''Defines how AWS Network Firewall performs logging for a firewall.'''
|
|
2276
2483
|
return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnLoggingConfiguration.LoggingConfigurationProperty"], jsii.get(self, "loggingConfiguration"))
|
|
2277
2484
|
|
|
2278
2485
|
@logging_configuration.setter
|
|
@@ -2334,7 +2541,7 @@ class CfnLoggingConfiguration(
|
|
|
2334
2541
|
) -> None:
|
|
2335
2542
|
'''Defines where AWS Network Firewall sends logs for the firewall for one log type.
|
|
2336
2543
|
|
|
2337
|
-
This is used in
|
|
2544
|
+
This is used in logging configuration. You can send each type of log to an Amazon S3 bucket, a CloudWatch log group, or a Kinesis Data Firehose delivery stream.
|
|
2338
2545
|
|
|
2339
2546
|
Network Firewall generates logs for stateful rule groups. You can save alert and flow log types. The stateful rules engine records flow logs for all network traffic that it receives. It records alert logs for traffic that matches stateful rules that have the rule action set to ``DROP`` or ``ALERT`` .
|
|
2340
2547
|
|
|
@@ -2446,7 +2653,7 @@ class CfnLoggingConfiguration(
|
|
|
2446
2653
|
*,
|
|
2447
2654
|
log_destination_configs: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLoggingConfiguration.LogDestinationConfigProperty", typing.Dict[builtins.str, typing.Any]]]]],
|
|
2448
2655
|
) -> None:
|
|
2449
|
-
'''Defines how AWS Network Firewall performs logging for a
|
|
2656
|
+
'''Defines how AWS Network Firewall performs logging for a firewall.
|
|
2450
2657
|
|
|
2451
2658
|
:param log_destination_configs: Defines the logging destinations for the logs for a firewall. Network Firewall generates logs for stateful rule groups.
|
|
2452
2659
|
|
|
@@ -2523,8 +2730,8 @@ class CfnLoggingConfigurationProps:
|
|
|
2523
2730
|
) -> None:
|
|
2524
2731
|
'''Properties for defining a ``CfnLoggingConfiguration``.
|
|
2525
2732
|
|
|
2526
|
-
:param firewall_arn: The Amazon Resource Name (ARN) of the
|
|
2527
|
-
:param logging_configuration: Defines how AWS Network Firewall performs logging for a
|
|
2733
|
+
:param firewall_arn: The Amazon Resource Name (ARN) of the firewallthat the logging configuration is associated with. You can't change the firewall specification after you create the logging configuration.
|
|
2734
|
+
:param logging_configuration: Defines how AWS Network Firewall performs logging for a firewall.
|
|
2528
2735
|
:param enable_monitoring_dashboard:
|
|
2529
2736
|
:param firewall_name: The name of the firewall that the logging configuration is associated with. You can't change the firewall specification after you create the logging configuration.
|
|
2530
2737
|
|
|
@@ -2571,7 +2778,7 @@ class CfnLoggingConfigurationProps:
|
|
|
2571
2778
|
|
|
2572
2779
|
@builtins.property
|
|
2573
2780
|
def firewall_arn(self) -> builtins.str:
|
|
2574
|
-
'''The Amazon Resource Name (ARN) of the
|
|
2781
|
+
'''The Amazon Resource Name (ARN) of the firewallthat the logging configuration is associated with.
|
|
2575
2782
|
|
|
2576
2783
|
You can't change the firewall specification after you create the logging configuration.
|
|
2577
2784
|
|
|
@@ -2585,7 +2792,7 @@ class CfnLoggingConfigurationProps:
|
|
|
2585
2792
|
def logging_configuration(
|
|
2586
2793
|
self,
|
|
2587
2794
|
) -> typing.Union[_IResolvable_da3f097b, CfnLoggingConfiguration.LoggingConfigurationProperty]:
|
|
2588
|
-
'''Defines how AWS Network Firewall performs logging for a
|
|
2795
|
+
'''Defines how AWS Network Firewall performs logging for a firewall.
|
|
2589
2796
|
|
|
2590
2797
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-loggingconfiguration.html#cfn-networkfirewall-loggingconfiguration-loggingconfiguration
|
|
2591
2798
|
'''
|
|
@@ -2632,9 +2839,7 @@ class CfnRuleGroup(
|
|
|
2632
2839
|
metaclass=jsii.JSIIMeta,
|
|
2633
2840
|
jsii_type="aws-cdk-lib.aws_networkfirewall.CfnRuleGroup",
|
|
2634
2841
|
):
|
|
2635
|
-
'''Use the
|
|
2636
|
-
|
|
2637
|
-
You use rule groups in an ``FirewallPolicy`` to specify the filtering behavior of an ``Firewall`` .
|
|
2842
|
+
'''Use the ` <https://docs.aws.amazon.com/RuleGroup>`_ to define a reusable collection of stateless or stateful network traffic filtering rules. You use rule groups in an firewall policy to specify the filtering behavior of an firewall.
|
|
2638
2843
|
|
|
2639
2844
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-rulegroup.html
|
|
2640
2845
|
:cloudformationResource: AWS::NetworkFirewall::RuleGroup
|
|
@@ -2747,6 +2952,9 @@ class CfnRuleGroup(
|
|
|
2747
2952
|
rule_order="ruleOrder"
|
|
2748
2953
|
)
|
|
2749
2954
|
),
|
|
2955
|
+
summary_configuration=networkfirewall.CfnRuleGroup.SummaryConfigurationProperty(
|
|
2956
|
+
rule_options=["ruleOptions"]
|
|
2957
|
+
),
|
|
2750
2958
|
tags=[CfnTag(
|
|
2751
2959
|
key="key",
|
|
2752
2960
|
value="value"
|
|
@@ -2764,6 +2972,7 @@ class CfnRuleGroup(
|
|
|
2764
2972
|
type: builtins.str,
|
|
2765
2973
|
description: typing.Optional[builtins.str] = None,
|
|
2766
2974
|
rule_group: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnRuleGroup.RuleGroupProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2975
|
+
summary_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnRuleGroup.SummaryConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2767
2976
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2768
2977
|
) -> None:
|
|
2769
2978
|
'''
|
|
@@ -2774,6 +2983,7 @@ class CfnRuleGroup(
|
|
|
2774
2983
|
:param type: Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules.
|
|
2775
2984
|
:param description: A description of the rule group.
|
|
2776
2985
|
:param rule_group: An object that defines the rule group rules.
|
|
2986
|
+
:param summary_configuration: A complex type containing the currently selected rule option fields that will be displayed for rule summarization returned by ``DescribeRuleGroupSummary`` . - The ``RuleOptions`` specified in ``SummaryConfiguration`` - Rule metadata organization preferences
|
|
2777
2987
|
:param tags: An array of key-value pairs to apply to this resource. For more information, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
|
|
2778
2988
|
'''
|
|
2779
2989
|
if __debug__:
|
|
@@ -2786,6 +2996,7 @@ class CfnRuleGroup(
|
|
|
2786
2996
|
type=type,
|
|
2787
2997
|
description=description,
|
|
2788
2998
|
rule_group=rule_group,
|
|
2999
|
+
summary_configuration=summary_configuration,
|
|
2789
3000
|
tags=tags,
|
|
2790
3001
|
)
|
|
2791
3002
|
|
|
@@ -2824,7 +3035,7 @@ class CfnRuleGroup(
|
|
|
2824
3035
|
@builtins.property
|
|
2825
3036
|
@jsii.member(jsii_name="attrRuleGroupArn")
|
|
2826
3037
|
def attr_rule_group_arn(self) -> builtins.str:
|
|
2827
|
-
'''The Amazon Resource Name (ARN) of the
|
|
3038
|
+
'''The Amazon Resource Name (ARN) of the rule group.
|
|
2828
3039
|
|
|
2829
3040
|
:cloudformationAttribute: RuleGroupArn
|
|
2830
3041
|
'''
|
|
@@ -2833,7 +3044,7 @@ class CfnRuleGroup(
|
|
|
2833
3044
|
@builtins.property
|
|
2834
3045
|
@jsii.member(jsii_name="attrRuleGroupId")
|
|
2835
3046
|
def attr_rule_group_id(self) -> builtins.str:
|
|
2836
|
-
'''The unique ID of the
|
|
3047
|
+
'''The unique ID of the rule group resource.
|
|
2837
3048
|
|
|
2838
3049
|
:cloudformationAttribute: RuleGroupId
|
|
2839
3050
|
'''
|
|
@@ -2920,6 +3131,24 @@ class CfnRuleGroup(
|
|
|
2920
3131
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
2921
3132
|
jsii.set(self, "ruleGroup", value) # pyright: ignore[reportArgumentType]
|
|
2922
3133
|
|
|
3134
|
+
@builtins.property
|
|
3135
|
+
@jsii.member(jsii_name="summaryConfiguration")
|
|
3136
|
+
def summary_configuration(
|
|
3137
|
+
self,
|
|
3138
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRuleGroup.SummaryConfigurationProperty"]]:
|
|
3139
|
+
'''A complex type containing the currently selected rule option fields that will be displayed for rule summarization returned by ``DescribeRuleGroupSummary`` .'''
|
|
3140
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRuleGroup.SummaryConfigurationProperty"]], jsii.get(self, "summaryConfiguration"))
|
|
3141
|
+
|
|
3142
|
+
@summary_configuration.setter
|
|
3143
|
+
def summary_configuration(
|
|
3144
|
+
self,
|
|
3145
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnRuleGroup.SummaryConfigurationProperty"]],
|
|
3146
|
+
) -> None:
|
|
3147
|
+
if __debug__:
|
|
3148
|
+
type_hints = typing.get_type_hints(_typecheckingstub__46973fc09b1e3c3e87b38c8ac10ef1cb472bfde25cd2947723ae44a7d98733e0)
|
|
3149
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
3150
|
+
jsii.set(self, "summaryConfiguration", value) # pyright: ignore[reportArgumentType]
|
|
3151
|
+
|
|
2923
3152
|
@builtins.property
|
|
2924
3153
|
@jsii.member(jsii_name="tagsRaw")
|
|
2925
3154
|
def tags_raw(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
@@ -3007,7 +3236,7 @@ class CfnRuleGroup(
|
|
|
3007
3236
|
def __init__(self, *, address_definition: builtins.str) -> None:
|
|
3008
3237
|
'''A single IP address specification.
|
|
3009
3238
|
|
|
3010
|
-
This is used in the
|
|
3239
|
+
This is used in the match attributes source and destination specifications.
|
|
3011
3240
|
|
|
3012
3241
|
:param address_definition: Specify an IP address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. Network Firewall supports all address ranges for IPv4 and IPv6. Examples: - To configure Network Firewall to inspect for the IP address 192.0.2.44, specify ``192.0.2.44/32`` . - To configure Network Firewall to inspect for IP addresses from 192.0.2.0 to 192.0.2.255, specify ``192.0.2.0/24`` . - To configure Network Firewall to inspect for the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify ``1111:0000:0000:0000:0000:0000:0000:0111/128`` . - To configure Network Firewall to inspect for IP addresses from 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify ``1111:0000:0000:0000:0000:0000:0000:0000/64`` . For more information about CIDR notation, see the Wikipedia entry `Classless Inter-Domain Routing <https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing>`_ .
|
|
3013
3242
|
|
|
@@ -3086,8 +3315,8 @@ class CfnRuleGroup(
|
|
|
3086
3315
|
|
|
3087
3316
|
You can use custom actions in the following places:
|
|
3088
3317
|
|
|
3089
|
-
- In
|
|
3090
|
-
- In an
|
|
3318
|
+
- In a ``StatelessRulesAndCustomActions`` . The custom actions are available for use by name inside the ``StatelessRulesAndCustomActions`` where you define them. You can use them for your stateless rule actions to specify what to do with a packet that matches the rule's match attributes.
|
|
3319
|
+
- In an firewall policy specification, in ``StatelessCustomActions`` . The custom actions are available for use inside the policy where you define them. You can use them for the policy's default stateless actions settings to specify what to do with packets that don't match any of the policy's stateless rules.
|
|
3091
3320
|
|
|
3092
3321
|
:param action_definition: The custom action associated with the action name.
|
|
3093
3322
|
:param action_name: The descriptive name of the custom action. You can't change the name of a custom action after you create it.
|
|
@@ -3401,7 +3630,7 @@ class CfnRuleGroup(
|
|
|
3401
3630
|
) -> None:
|
|
3402
3631
|
'''A list of IP addresses and address ranges, in CIDR notation.
|
|
3403
3632
|
|
|
3404
|
-
This is part of a ``
|
|
3633
|
+
This is part of a ``RuleVariables`` .
|
|
3405
3634
|
|
|
3406
3635
|
:param definition: The list of IP addresses and address ranges, in CIDR notation.
|
|
3407
3636
|
|
|
@@ -3456,11 +3685,11 @@ class CfnRuleGroup(
|
|
|
3456
3685
|
*,
|
|
3457
3686
|
reference_arn: typing.Optional[builtins.str] = None,
|
|
3458
3687
|
) -> None:
|
|
3459
|
-
'''Configures one or more
|
|
3688
|
+
'''Configures one or more IP set references for a Suricata-compatible rule group.
|
|
3460
3689
|
|
|
3461
3690
|
An IP set reference is a rule variable that references a resource that you create and manage in another AWS service, such as an Amazon VPC prefix list. Network Firewall IP set references enable you to dynamically update the contents of your rules. When you create, update, or delete the IP set you are referencing in your rule, Network Firewall automatically updates the rule's content with the changes. For more information about IP set references in Network Firewall , see `Using IP set references <https://docs.aws.amazon.com/network-firewall/latest/developerguide/rule-groups-ip-set-references.html>`_ in the *Network Firewall Developer Guide* .
|
|
3462
3691
|
|
|
3463
|
-
:param reference_arn: The Amazon Resource Name (ARN) of the resource to include in the
|
|
3692
|
+
:param reference_arn: The Amazon Resource Name (ARN) of the resource to include in the IP set reference.
|
|
3464
3693
|
|
|
3465
3694
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-rulegroup-ipsetreference.html
|
|
3466
3695
|
:exampleMetadata: fixture=_generated
|
|
@@ -3484,7 +3713,7 @@ class CfnRuleGroup(
|
|
|
3484
3713
|
|
|
3485
3714
|
@builtins.property
|
|
3486
3715
|
def reference_arn(self) -> typing.Optional[builtins.str]:
|
|
3487
|
-
'''The Amazon Resource Name (ARN) of the resource to include in the
|
|
3716
|
+
'''The Amazon Resource Name (ARN) of the resource to include in the IP set reference.
|
|
3488
3717
|
|
|
3489
3718
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-rulegroup-ipsetreference.html#cfn-networkfirewall-rulegroup-ipsetreference-referencearn
|
|
3490
3719
|
'''
|
|
@@ -3695,7 +3924,7 @@ class CfnRuleGroup(
|
|
|
3695
3924
|
def __init__(self, *, from_port: jsii.Number, to_port: jsii.Number) -> None:
|
|
3696
3925
|
'''A single port range specification.
|
|
3697
3926
|
|
|
3698
|
-
This is used for source and destination port ranges in the stateless
|
|
3927
|
+
This is used for source and destination port ranges in the stateless match attributes.
|
|
3699
3928
|
|
|
3700
3929
|
:param from_port: The lower limit of the port range. This must be less than or equal to the ``ToPort`` specification.
|
|
3701
3930
|
:param to_port: The upper limit of the port range. This must be greater than or equal to the ``FromPort`` specification.
|
|
@@ -3885,7 +4114,7 @@ class CfnRuleGroup(
|
|
|
3885
4114
|
*,
|
|
3886
4115
|
ip_set_references: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union["CfnRuleGroup.IPSetReferenceProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
3887
4116
|
) -> None:
|
|
3888
|
-
'''Configures the
|
|
4117
|
+
'''Configures the reference sets for a stateful rule group.
|
|
3889
4118
|
|
|
3890
4119
|
For more information, see the `Using IP set references in Suricata compatible rule groups <https://docs.aws.amazon.com/network-firewall/latest/developerguide/rule-groups-ip-set-references.html>`_ in the *Network Firewall User Guide* .
|
|
3891
4120
|
|
|
@@ -3953,7 +4182,7 @@ class CfnRuleGroup(
|
|
|
3953
4182
|
|
|
3954
4183
|
AWS Network Firewall inspects each packet for the specified matching criteria. When a packet matches the criteria, Network Firewall performs the rule's actions on the packet.
|
|
3955
4184
|
|
|
3956
|
-
:param actions: The actions to take on a packet that matches one of the stateless rule definition's match attributes. You must specify a standard action and you can add custom actions. .. epigraph:: Network Firewall only forwards a packet for stateful rule inspection if you specify ``aws:forward_to_sfe`` for a rule that the packet matches, or if the packet doesn't match any stateless rule and you specify ``aws:forward_to_sfe`` for the ``StatelessDefaultActions`` setting for the
|
|
4185
|
+
:param actions: The actions to take on a packet that matches one of the stateless rule definition's match attributes. You must specify a standard action and you can add custom actions. .. epigraph:: Network Firewall only forwards a packet for stateful rule inspection if you specify ``aws:forward_to_sfe`` for a rule that the packet matches, or if the packet doesn't match any stateless rule and you specify ``aws:forward_to_sfe`` for the ``StatelessDefaultActions`` setting for the firewall policy. For every rule, you must specify exactly one of the following standard actions. - *aws:pass* - Discontinues all inspection of the packet and permits it to go to its intended destination. - *aws:drop* - Discontinues all inspection of the packet and blocks it from going to its intended destination. - *aws:forward_to_sfe* - Discontinues stateless inspection of the packet and forwards it to the stateful rule engine for inspection. Additionally, you can specify a custom action. To do this, you define a custom action by name and type, then provide the name you've assigned to the action in this ``Actions`` setting. To provide more than one action in this setting, separate the settings with a comma. For example, if you have a publish metrics custom action that you've named ``MyMetricsAction`` , then you could specify the standard action ``aws:pass`` combined with the custom action using ``[“aws:pass”, “MyMetricsAction”]`` .
|
|
3957
4186
|
:param match_attributes: Criteria for Network Firewall to use to inspect an individual packet in stateless rule inspection. Each match attributes set can include one or more items such as IP address, CIDR range, port number, protocol, and TCP flags.
|
|
3958
4187
|
|
|
3959
4188
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-rulegroup-ruledefinition.html
|
|
@@ -4008,7 +4237,7 @@ class CfnRuleGroup(
|
|
|
4008
4237
|
You must specify a standard action and you can add custom actions.
|
|
4009
4238
|
.. epigraph::
|
|
4010
4239
|
|
|
4011
|
-
Network Firewall only forwards a packet for stateful rule inspection if you specify ``aws:forward_to_sfe`` for a rule that the packet matches, or if the packet doesn't match any stateless rule and you specify ``aws:forward_to_sfe`` for the ``StatelessDefaultActions`` setting for the
|
|
4240
|
+
Network Firewall only forwards a packet for stateful rule inspection if you specify ``aws:forward_to_sfe`` for a rule that the packet matches, or if the packet doesn't match any stateless rule and you specify ``aws:forward_to_sfe`` for the ``StatelessDefaultActions`` setting for the firewall policy.
|
|
4012
4241
|
|
|
4013
4242
|
For every rule, you must specify exactly one of the following standard actions.
|
|
4014
4243
|
|
|
@@ -4350,9 +4579,7 @@ class CfnRuleGroup(
|
|
|
4350
4579
|
ip_sets: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union["CfnRuleGroup.IPSetProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
4351
4580
|
port_sets: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union["CfnRuleGroup.PortSetProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
4352
4581
|
) -> None:
|
|
4353
|
-
'''Settings that are available for use in the rules in the
|
|
4354
|
-
|
|
4355
|
-
See ``CreateRuleGroup`` or ``UpdateRuleGroup`` for usage.
|
|
4582
|
+
'''Settings that are available for use in the rules in the rule group where this is defined.
|
|
4356
4583
|
|
|
4357
4584
|
:param ip_sets: A list of IP addresses and address ranges, in CIDR notation.
|
|
4358
4585
|
:param port_sets: A list of port ranges.
|
|
@@ -4443,7 +4670,7 @@ class CfnRuleGroup(
|
|
|
4443
4670
|
|
|
4444
4671
|
For HTTPS traffic, domain filtering is SNI-based. It uses the server name indicator extension of the TLS handshake.
|
|
4445
4672
|
|
|
4446
|
-
By default, Network Firewall domain list inspection only includes traffic coming from the VPC where you deploy the firewall. To inspect traffic from IP addresses outside of the deployment VPC, you set the ``HOME_NET`` rule variable to include the CIDR range of the deployment VPC plus the other CIDR ranges. For more information, see ``
|
|
4673
|
+
By default, Network Firewall domain list inspection only includes traffic coming from the VPC where you deploy the firewall. To inspect traffic from IP addresses outside of the deployment VPC, you set the ``HOME_NET`` rule variable to include the CIDR range of the deployment VPC plus the other CIDR ranges. For more information, see ``RuleVariables`` in this guide and `Stateful domain list rule groups in AWS Network Firewall <https://docs.aws.amazon.com/network-firewall/latest/developerguide/stateful-rule-groups-domain-names.html>`_ in the *Network Firewall Developer Guide*
|
|
4447
4674
|
|
|
4448
4675
|
:param generated_rules_type: Whether you want to allow or deny access to the domains in your target list.
|
|
4449
4676
|
:param targets: The domains that you want to inspect for in your traffic flows. Valid domain specifications are the following:. - Explicit names. For example, ``abc.example.com`` matches only the domain ``abc.example.com`` . - Names that use a domain wildcard, which you indicate with an initial ' ``.`` '. For example, ``.example.com`` matches ``example.com`` and matches all subdomains of ``example.com`` , such as ``abc.example.com`` and ``www.example.com`` .
|
|
@@ -4545,7 +4772,7 @@ class CfnRuleGroup(
|
|
|
4545
4772
|
Each rule group requires a single ``RulesSource`` . You can use an instance of this for either stateless rules or stateful rules.
|
|
4546
4773
|
|
|
4547
4774
|
:param rules_source_list: Stateful inspection criteria for a domain list rule group.
|
|
4548
|
-
:param rules_string: Stateful inspection criteria, provided in Suricata compatible rules. Suricata is an open-source threat detection framework that includes a standard rule-based language for network traffic inspection. These rules contain the inspection criteria and the action to take for traffic that matches the criteria, so this type of rule group doesn't have a separate action setting. .. epigraph:: You can't use the ``priority`` keyword if the ``RuleOrder`` option in
|
|
4775
|
+
:param rules_string: Stateful inspection criteria, provided in Suricata compatible rules. Suricata is an open-source threat detection framework that includes a standard rule-based language for network traffic inspection. These rules contain the inspection criteria and the action to take for traffic that matches the criteria, so this type of rule group doesn't have a separate action setting. .. epigraph:: You can't use the ``priority`` keyword if the ``RuleOrder`` option in StatefulRuleOptions is set to ``STRICT_ORDER`` .
|
|
4549
4776
|
:param stateful_rules: An array of individual stateful rules inspection criteria to be used together in a stateful rule group. Use this option to specify simple Suricata rules with protocol, source and destination, ports, direction, and rule options. For information about the Suricata ``Rules`` format, see `Rules Format <https://docs.aws.amazon.com/https://suricata.readthedocs.io/en/suricata-7.0.3/rules/intro.html>`_ .
|
|
4550
4777
|
:param stateless_rules_and_custom_actions: Stateless inspection criteria to be used in a stateless rule group.
|
|
4551
4778
|
|
|
@@ -4663,7 +4890,7 @@ class CfnRuleGroup(
|
|
|
4663
4890
|
These rules contain the inspection criteria and the action to take for traffic that matches the criteria, so this type of rule group doesn't have a separate action setting.
|
|
4664
4891
|
.. epigraph::
|
|
4665
4892
|
|
|
4666
|
-
You can't use the ``priority`` keyword if the ``RuleOrder`` option in
|
|
4893
|
+
You can't use the ``priority`` keyword if the ``RuleOrder`` option in StatefulRuleOptions is set to ``STRICT_ORDER`` .
|
|
4667
4894
|
|
|
4668
4895
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-rulegroup-rulessource.html#cfn-networkfirewall-rulegroup-rulessource-rulesstring
|
|
4669
4896
|
'''
|
|
@@ -4781,7 +5008,7 @@ class CfnRuleGroup(
|
|
|
4781
5008
|
|
|
4782
5009
|
Use this option to specify a simple Suricata rule with protocol, source and destination, ports, direction, and rule options. For information about the Suricata ``Rules`` format, see `Rules Format <https://docs.aws.amazon.com/https://suricata.readthedocs.io/en/suricata-7.0.3/rules/intro.html>`_ .
|
|
4783
5010
|
|
|
4784
|
-
:param action: Defines what Network Firewall should do with the packets in a traffic flow when the flow matches the stateful rule criteria. For all actions, Network Firewall performs the specified action and discontinues stateful inspection of the traffic flow. The actions for a stateful rule are defined as follows: - *PASS* - Permits the packets to go to the intended destination. - *DROP* - Blocks the packets from going to the intended destination and sends an alert log message, if alert logging is configured in the
|
|
5011
|
+
:param action: Defines what Network Firewall should do with the packets in a traffic flow when the flow matches the stateful rule criteria. For all actions, Network Firewall performs the specified action and discontinues stateful inspection of the traffic flow. The actions for a stateful rule are defined as follows: - *PASS* - Permits the packets to go to the intended destination. - *DROP* - Blocks the packets from going to the intended destination and sends an alert log message, if alert logging is configured in the firewall logging configuration. - *REJECT* - Drops traffic that matches the conditions of the stateful rule and sends a TCP reset packet back to sender of the packet. A TCP reset packet is a packet with no payload and a ``RST`` bit contained in the TCP header flags. ``REJECT`` is available only for TCP traffic. - *ALERT* - Permits the packets to go to the intended destination and sends an alert log message, if alert logging is configured in the firewall logging configuration. You can use this action to test a rule that you intend to use to drop traffic. You can enable the rule with ``ALERT`` action, verify in the logs that the rule is filtering as you want, then change the action to ``DROP`` . - *REJECT* - Drops TCP traffic that matches the conditions of the stateful rule, and sends a TCP reset packet back to sender of the packet. A TCP reset packet is a packet with no payload and a ``RST`` bit contained in the TCP header flags. Also sends an alert log mesage if alert logging is configured in the firewall logging configuration. ``REJECT`` isn't currently available for use with IMAP and FTP protocols.
|
|
4785
5012
|
:param header: The stateful inspection criteria for this rule, used to inspect traffic flows.
|
|
4786
5013
|
:param rule_options: Additional settings for a stateful rule, provided as keywords and settings.
|
|
4787
5014
|
|
|
@@ -4832,13 +5059,13 @@ class CfnRuleGroup(
|
|
|
4832
5059
|
The actions for a stateful rule are defined as follows:
|
|
4833
5060
|
|
|
4834
5061
|
- *PASS* - Permits the packets to go to the intended destination.
|
|
4835
|
-
- *DROP* - Blocks the packets from going to the intended destination and sends an alert log message, if alert logging is configured in the
|
|
5062
|
+
- *DROP* - Blocks the packets from going to the intended destination and sends an alert log message, if alert logging is configured in the firewall logging configuration.
|
|
4836
5063
|
- *REJECT* - Drops traffic that matches the conditions of the stateful rule and sends a TCP reset packet back to sender of the packet. A TCP reset packet is a packet with no payload and a ``RST`` bit contained in the TCP header flags. ``REJECT`` is available only for TCP traffic.
|
|
4837
|
-
- *ALERT* - Permits the packets to go to the intended destination and sends an alert log message, if alert logging is configured in the
|
|
5064
|
+
- *ALERT* - Permits the packets to go to the intended destination and sends an alert log message, if alert logging is configured in the firewall logging configuration.
|
|
4838
5065
|
|
|
4839
5066
|
You can use this action to test a rule that you intend to use to drop traffic. You can enable the rule with ``ALERT`` action, verify in the logs that the rule is filtering as you want, then change the action to ``DROP`` .
|
|
4840
5067
|
|
|
4841
|
-
- *REJECT* - Drops TCP traffic that matches the conditions of the stateful rule, and sends a TCP reset packet back to sender of the packet. A TCP reset packet is a packet with no payload and a ``RST`` bit contained in the TCP header flags. Also sends an alert log mesage if alert logging is configured in the
|
|
5068
|
+
- *REJECT* - Drops TCP traffic that matches the conditions of the stateful rule, and sends a TCP reset packet back to sender of the packet. A TCP reset packet is a packet with no payload and a ``RST`` bit contained in the TCP header flags. Also sends an alert log mesage if alert logging is configured in the firewall logging configuration.
|
|
4842
5069
|
|
|
4843
5070
|
``REJECT`` isn't currently available for use with IMAP and FTP protocols.
|
|
4844
5071
|
|
|
@@ -4897,7 +5124,7 @@ class CfnRuleGroup(
|
|
|
4897
5124
|
) -> None:
|
|
4898
5125
|
'''A single stateless rule.
|
|
4899
5126
|
|
|
4900
|
-
This is used in ``
|
|
5127
|
+
This is used in ``StatelessRulesAndCustomActions`` .
|
|
4901
5128
|
|
|
4902
5129
|
:param priority: Indicates the order in which to run this rule relative to all of the rules that are defined for a stateless rule group. Network Firewall evaluates the rules in a rule group starting with the lowest priority setting. You must ensure that the priority settings are unique for the rule group. Each stateless rule group uses exactly one ``StatelessRulesAndCustomActions`` object, and each ``StatelessRulesAndCustomActions`` contains exactly one ``StatelessRules`` object. To ensure unique priority settings for your rule groups, set unique priorities for the stateless rules that you define inside any single ``StatelessRules`` object. You can change the priority settings of your rules at any time. To make it easier to insert rules later, number them so there's a wide range in between, for example use 100, 200, and so on.
|
|
4903
5130
|
:param rule_definition: Defines the stateless 5-tuple packet inspection criteria and the action to take on a packet that matches the criteria.
|
|
@@ -5009,7 +5236,7 @@ class CfnRuleGroup(
|
|
|
5009
5236
|
Each stateless rule group uses exactly one of these data types to define its stateless rules.
|
|
5010
5237
|
|
|
5011
5238
|
:param stateless_rules: Defines the set of stateless rules for use in a stateless rule group.
|
|
5012
|
-
:param custom_actions: Defines an array of individual custom action definitions that are available for use by the stateless rules in this ``StatelessRulesAndCustomActions`` specification. You name each custom action that you define, and then you can use it by name in your stateless rule
|
|
5239
|
+
:param custom_actions: Defines an array of individual custom action definitions that are available for use by the stateless rules in this ``StatelessRulesAndCustomActions`` specification. You name each custom action that you define, and then you can use it by name in your stateless rule definition ``Actions`` specification.
|
|
5013
5240
|
|
|
5014
5241
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-rulegroup-statelessrulesandcustomactions.html
|
|
5015
5242
|
:exampleMetadata: fixture=_generated
|
|
@@ -5092,7 +5319,7 @@ class CfnRuleGroup(
|
|
|
5092
5319
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnRuleGroup.CustomActionProperty"]]]]:
|
|
5093
5320
|
'''Defines an array of individual custom action definitions that are available for use by the stateless rules in this ``StatelessRulesAndCustomActions`` specification.
|
|
5094
5321
|
|
|
5095
|
-
You name each custom action that you define, and then you can use it by name in your stateless rule
|
|
5322
|
+
You name each custom action that you define, and then you can use it by name in your stateless rule definition ``Actions`` specification.
|
|
5096
5323
|
|
|
5097
5324
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-rulegroup-statelessrulesandcustomactions.html#cfn-networkfirewall-rulegroup-statelessrulesandcustomactions-customactions
|
|
5098
5325
|
'''
|
|
@@ -5110,6 +5337,65 @@ class CfnRuleGroup(
|
|
|
5110
5337
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
5111
5338
|
)
|
|
5112
5339
|
|
|
5340
|
+
@jsii.data_type(
|
|
5341
|
+
jsii_type="aws-cdk-lib.aws_networkfirewall.CfnRuleGroup.SummaryConfigurationProperty",
|
|
5342
|
+
jsii_struct_bases=[],
|
|
5343
|
+
name_mapping={"rule_options": "ruleOptions"},
|
|
5344
|
+
)
|
|
5345
|
+
class SummaryConfigurationProperty:
|
|
5346
|
+
def __init__(
|
|
5347
|
+
self,
|
|
5348
|
+
*,
|
|
5349
|
+
rule_options: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
5350
|
+
) -> None:
|
|
5351
|
+
'''A complex type that specifies which Suricata rule metadata fields to use when displaying threat information. Contains:.
|
|
5352
|
+
|
|
5353
|
+
- ``RuleOptions`` - The Suricata rule options fields to extract and display
|
|
5354
|
+
|
|
5355
|
+
These settings affect how threat information appears in both the console and API responses. Summaries are available for rule groups you manage and for active threat defense AWS managed rule groups.
|
|
5356
|
+
|
|
5357
|
+
:param rule_options: Specifies the selected rule options returned by ``DescribeRuleGroupSummary`` .
|
|
5358
|
+
|
|
5359
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-rulegroup-summaryconfiguration.html
|
|
5360
|
+
:exampleMetadata: fixture=_generated
|
|
5361
|
+
|
|
5362
|
+
Example::
|
|
5363
|
+
|
|
5364
|
+
# The code below shows an example of how to instantiate this type.
|
|
5365
|
+
# The values are placeholders you should change.
|
|
5366
|
+
from aws_cdk import aws_networkfirewall as networkfirewall
|
|
5367
|
+
|
|
5368
|
+
summary_configuration_property = networkfirewall.CfnRuleGroup.SummaryConfigurationProperty(
|
|
5369
|
+
rule_options=["ruleOptions"]
|
|
5370
|
+
)
|
|
5371
|
+
'''
|
|
5372
|
+
if __debug__:
|
|
5373
|
+
type_hints = typing.get_type_hints(_typecheckingstub__46f2fcadfd6cf356e80e3b58b0b02c7c119bd9a36d7ac33ac0ee324f887c1307)
|
|
5374
|
+
check_type(argname="argument rule_options", value=rule_options, expected_type=type_hints["rule_options"])
|
|
5375
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
5376
|
+
if rule_options is not None:
|
|
5377
|
+
self._values["rule_options"] = rule_options
|
|
5378
|
+
|
|
5379
|
+
@builtins.property
|
|
5380
|
+
def rule_options(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
5381
|
+
'''Specifies the selected rule options returned by ``DescribeRuleGroupSummary`` .
|
|
5382
|
+
|
|
5383
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-rulegroup-summaryconfiguration.html#cfn-networkfirewall-rulegroup-summaryconfiguration-ruleoptions
|
|
5384
|
+
'''
|
|
5385
|
+
result = self._values.get("rule_options")
|
|
5386
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
5387
|
+
|
|
5388
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
5389
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
5390
|
+
|
|
5391
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
5392
|
+
return not (rhs == self)
|
|
5393
|
+
|
|
5394
|
+
def __repr__(self) -> str:
|
|
5395
|
+
return "SummaryConfigurationProperty(%s)" % ", ".join(
|
|
5396
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
5397
|
+
)
|
|
5398
|
+
|
|
5113
5399
|
@jsii.data_type(
|
|
5114
5400
|
jsii_type="aws-cdk-lib.aws_networkfirewall.CfnRuleGroup.TCPFlagFieldProperty",
|
|
5115
5401
|
jsii_struct_bases=[],
|
|
@@ -5122,7 +5408,7 @@ class CfnRuleGroup(
|
|
|
5122
5408
|
flags: typing.Sequence[builtins.str],
|
|
5123
5409
|
masks: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
5124
5410
|
) -> None:
|
|
5125
|
-
'''TCP flags and masks to inspect packets for. This is used in the
|
|
5411
|
+
'''TCP flags and masks to inspect packets for. This is used in the match attributes specification.
|
|
5126
5412
|
|
|
5127
5413
|
For example:
|
|
5128
5414
|
|
|
@@ -5206,6 +5492,7 @@ class CfnRuleGroup(
|
|
|
5206
5492
|
"type": "type",
|
|
5207
5493
|
"description": "description",
|
|
5208
5494
|
"rule_group": "ruleGroup",
|
|
5495
|
+
"summary_configuration": "summaryConfiguration",
|
|
5209
5496
|
"tags": "tags",
|
|
5210
5497
|
},
|
|
5211
5498
|
)
|
|
@@ -5218,6 +5505,7 @@ class CfnRuleGroupProps:
|
|
|
5218
5505
|
type: builtins.str,
|
|
5219
5506
|
description: typing.Optional[builtins.str] = None,
|
|
5220
5507
|
rule_group: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRuleGroup.RuleGroupProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5508
|
+
summary_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRuleGroup.SummaryConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5221
5509
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5222
5510
|
) -> None:
|
|
5223
5511
|
'''Properties for defining a ``CfnRuleGroup``.
|
|
@@ -5227,6 +5515,7 @@ class CfnRuleGroupProps:
|
|
|
5227
5515
|
:param type: Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules.
|
|
5228
5516
|
:param description: A description of the rule group.
|
|
5229
5517
|
:param rule_group: An object that defines the rule group rules.
|
|
5518
|
+
:param summary_configuration: A complex type containing the currently selected rule option fields that will be displayed for rule summarization returned by ``DescribeRuleGroupSummary`` . - The ``RuleOptions`` specified in ``SummaryConfiguration`` - Rule metadata organization preferences
|
|
5230
5519
|
:param tags: An array of key-value pairs to apply to this resource. For more information, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
|
|
5231
5520
|
|
|
5232
5521
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-rulegroup.html
|
|
@@ -5339,6 +5628,9 @@ class CfnRuleGroupProps:
|
|
|
5339
5628
|
rule_order="ruleOrder"
|
|
5340
5629
|
)
|
|
5341
5630
|
),
|
|
5631
|
+
summary_configuration=networkfirewall.CfnRuleGroup.SummaryConfigurationProperty(
|
|
5632
|
+
rule_options=["ruleOptions"]
|
|
5633
|
+
),
|
|
5342
5634
|
tags=[CfnTag(
|
|
5343
5635
|
key="key",
|
|
5344
5636
|
value="value"
|
|
@@ -5352,6 +5644,7 @@ class CfnRuleGroupProps:
|
|
|
5352
5644
|
check_type(argname="argument type", value=type, expected_type=type_hints["type"])
|
|
5353
5645
|
check_type(argname="argument description", value=description, expected_type=type_hints["description"])
|
|
5354
5646
|
check_type(argname="argument rule_group", value=rule_group, expected_type=type_hints["rule_group"])
|
|
5647
|
+
check_type(argname="argument summary_configuration", value=summary_configuration, expected_type=type_hints["summary_configuration"])
|
|
5355
5648
|
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
5356
5649
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
5357
5650
|
"capacity": capacity,
|
|
@@ -5362,6 +5655,8 @@ class CfnRuleGroupProps:
|
|
|
5362
5655
|
self._values["description"] = description
|
|
5363
5656
|
if rule_group is not None:
|
|
5364
5657
|
self._values["rule_group"] = rule_group
|
|
5658
|
+
if summary_configuration is not None:
|
|
5659
|
+
self._values["summary_configuration"] = summary_configuration
|
|
5365
5660
|
if tags is not None:
|
|
5366
5661
|
self._values["tags"] = tags
|
|
5367
5662
|
|
|
@@ -5422,6 +5717,20 @@ class CfnRuleGroupProps:
|
|
|
5422
5717
|
result = self._values.get("rule_group")
|
|
5423
5718
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnRuleGroup.RuleGroupProperty]], result)
|
|
5424
5719
|
|
|
5720
|
+
@builtins.property
|
|
5721
|
+
def summary_configuration(
|
|
5722
|
+
self,
|
|
5723
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnRuleGroup.SummaryConfigurationProperty]]:
|
|
5724
|
+
'''A complex type containing the currently selected rule option fields that will be displayed for rule summarization returned by ``DescribeRuleGroupSummary`` .
|
|
5725
|
+
|
|
5726
|
+
- The ``RuleOptions`` specified in ``SummaryConfiguration``
|
|
5727
|
+
- Rule metadata organization preferences
|
|
5728
|
+
|
|
5729
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-rulegroup.html#cfn-networkfirewall-rulegroup-summaryconfiguration
|
|
5730
|
+
'''
|
|
5731
|
+
result = self._values.get("summary_configuration")
|
|
5732
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnRuleGroup.SummaryConfigurationProperty]], result)
|
|
5733
|
+
|
|
5425
5734
|
@builtins.property
|
|
5426
5735
|
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
5427
5736
|
'''An array of key-value pairs to apply to this resource.
|
|
@@ -6496,7 +6805,7 @@ class CfnVpcEndpointAssociation(
|
|
|
6496
6805
|
|
|
6497
6806
|
You can use AWS Resource Access Manager to share a ``Firewall`` that you own with other accounts, which gives them the ability to use the firewall to create VPC endpoint associations. For information about sharing a firewall, see ``PutResourcePolicy`` in this guide and see `Sharing Network Firewall resources <https://docs.aws.amazon.com/network-firewall/latest/developerguide/sharing.html>`_ in the *AWS Network Firewall Developer Guide* .
|
|
6498
6807
|
|
|
6499
|
-
The status of the VPC endpoint association, which indicates whether it's ready to filter network traffic, is provided in the corresponding
|
|
6808
|
+
The status of the VPC endpoint association, which indicates whether it's ready to filter network traffic, is provided in the corresponding VPC endpoint association status. You can retrieve both the association and its status by calling ``DescribeVpcEndpointAssociation`` .
|
|
6500
6809
|
|
|
6501
6810
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html
|
|
6502
6811
|
:cloudformationResource: AWS::NetworkFirewall::VpcEndpointAssociation
|
|
@@ -6594,7 +6903,7 @@ class CfnVpcEndpointAssociation(
|
|
|
6594
6903
|
@builtins.property
|
|
6595
6904
|
@jsii.member(jsii_name="attrEndpointId")
|
|
6596
6905
|
def attr_endpoint_id(self) -> builtins.str:
|
|
6597
|
-
'''
|
|
6906
|
+
'''The unique ID of the firewall endpoint for the subnet that you attached to the firewall.For example: "vpce-111122223333".
|
|
6598
6907
|
|
|
6599
6908
|
:cloudformationAttribute: EndpointId
|
|
6600
6909
|
'''
|
|
@@ -6937,14 +7246,17 @@ def _typecheckingstub__8735e4ce7e79159823190ad059af802b7721b71930c6b4b8805c4676b
|
|
|
6937
7246
|
*,
|
|
6938
7247
|
firewall_name: builtins.str,
|
|
6939
7248
|
firewall_policy_arn: builtins.str,
|
|
6940
|
-
|
|
6941
|
-
|
|
7249
|
+
availability_zone_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
7250
|
+
availability_zone_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFirewall.AvailabilityZoneMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
6942
7251
|
delete_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
6943
7252
|
description: typing.Optional[builtins.str] = None,
|
|
6944
7253
|
enabled_analysis_types: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
6945
7254
|
firewall_policy_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
6946
7255
|
subnet_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
7256
|
+
subnet_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFirewall.SubnetMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
6947
7257
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7258
|
+
transit_gateway_id: typing.Optional[builtins.str] = None,
|
|
7259
|
+
vpc_id: typing.Optional[builtins.str] = None,
|
|
6948
7260
|
) -> None:
|
|
6949
7261
|
"""Type checking stubs"""
|
|
6950
7262
|
pass
|
|
@@ -6973,14 +7285,14 @@ def _typecheckingstub__c711ef7af7567ab69b12f083b26c4033f7cdf1593bf27227f989d7c73
|
|
|
6973
7285
|
"""Type checking stubs"""
|
|
6974
7286
|
pass
|
|
6975
7287
|
|
|
6976
|
-
def
|
|
6977
|
-
value: typing.
|
|
7288
|
+
def _typecheckingstub__9264301e2259874347a035c96f8c2b41c3eace108b10ab012df466442d7477f1(
|
|
7289
|
+
value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
|
|
6978
7290
|
) -> None:
|
|
6979
7291
|
"""Type checking stubs"""
|
|
6980
7292
|
pass
|
|
6981
7293
|
|
|
6982
|
-
def
|
|
6983
|
-
value:
|
|
7294
|
+
def _typecheckingstub__cf571f7b78cee2a31a1b36a9ada83e153f52c7a14fea3f65c9362d1d4634dd77(
|
|
7295
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnFirewall.AvailabilityZoneMappingProperty]]]],
|
|
6984
7296
|
) -> None:
|
|
6985
7297
|
"""Type checking stubs"""
|
|
6986
7298
|
pass
|
|
@@ -7015,12 +7327,37 @@ def _typecheckingstub__3edeae6cf81be7cb1d87c21080d7c060fb1fdbd872b4292af576701d5
|
|
|
7015
7327
|
"""Type checking stubs"""
|
|
7016
7328
|
pass
|
|
7017
7329
|
|
|
7330
|
+
def _typecheckingstub__0f2f1e41c3294b6f9ed43f3936b8feb28ed4bd73021f059aae4743db717241ab(
|
|
7331
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnFirewall.SubnetMappingProperty]]]],
|
|
7332
|
+
) -> None:
|
|
7333
|
+
"""Type checking stubs"""
|
|
7334
|
+
pass
|
|
7335
|
+
|
|
7018
7336
|
def _typecheckingstub__e1b2b141c4b9a04d63365f9d8a2a5636d417c4a087ebfbfd40be7336d4d258da(
|
|
7019
7337
|
value: typing.Optional[typing.List[_CfnTag_f6864754]],
|
|
7020
7338
|
) -> None:
|
|
7021
7339
|
"""Type checking stubs"""
|
|
7022
7340
|
pass
|
|
7023
7341
|
|
|
7342
|
+
def _typecheckingstub__ebf25e7b4ccdda1a25794e9d426e24b28f37c786df4576a4b499042b55c26bc6(
|
|
7343
|
+
value: typing.Optional[builtins.str],
|
|
7344
|
+
) -> None:
|
|
7345
|
+
"""Type checking stubs"""
|
|
7346
|
+
pass
|
|
7347
|
+
|
|
7348
|
+
def _typecheckingstub__ba092b3d0c9ca8819ad31fd4320cebdee3150a45603af80de70f2c0bbb9e04b5(
|
|
7349
|
+
value: typing.Optional[builtins.str],
|
|
7350
|
+
) -> None:
|
|
7351
|
+
"""Type checking stubs"""
|
|
7352
|
+
pass
|
|
7353
|
+
|
|
7354
|
+
def _typecheckingstub__e12d4b074bc6fa59b990e1d43ef30390330da9da999dbf3bac9bf5e98eb30caf(
|
|
7355
|
+
*,
|
|
7356
|
+
availability_zone: builtins.str,
|
|
7357
|
+
) -> None:
|
|
7358
|
+
"""Type checking stubs"""
|
|
7359
|
+
pass
|
|
7360
|
+
|
|
7024
7361
|
def _typecheckingstub__cf86d50b8eec902ee512afbe0dfd3b1ee2bc8f0b9f4fb9acb4ac637ae3662fc0(
|
|
7025
7362
|
*,
|
|
7026
7363
|
subnet_id: builtins.str,
|
|
@@ -7161,6 +7498,7 @@ def _typecheckingstub__62be7baa7c0ae22655f34e1d3316236c114457fe368caf2a958ba1fd9
|
|
|
7161
7498
|
def _typecheckingstub__b35f780a3045f4df1ecbf5bb69deb711659429dcfd9f87d388080942e7b17ef8(
|
|
7162
7499
|
*,
|
|
7163
7500
|
resource_arn: builtins.str,
|
|
7501
|
+
deep_threat_inspection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
7164
7502
|
override: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFirewallPolicy.StatefulRuleGroupOverrideProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7165
7503
|
priority: typing.Optional[jsii.Number] = None,
|
|
7166
7504
|
) -> None:
|
|
@@ -7189,14 +7527,17 @@ def _typecheckingstub__8d4108d5c35b1608da0d36c8bb60f52501d3b0634ca4324342a71c57b
|
|
|
7189
7527
|
*,
|
|
7190
7528
|
firewall_name: builtins.str,
|
|
7191
7529
|
firewall_policy_arn: builtins.str,
|
|
7192
|
-
|
|
7193
|
-
|
|
7530
|
+
availability_zone_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
7531
|
+
availability_zone_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFirewall.AvailabilityZoneMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
7194
7532
|
delete_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
7195
7533
|
description: typing.Optional[builtins.str] = None,
|
|
7196
7534
|
enabled_analysis_types: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
7197
7535
|
firewall_policy_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
7198
7536
|
subnet_change_protection: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
7537
|
+
subnet_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFirewall.SubnetMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
7199
7538
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7539
|
+
transit_gateway_id: typing.Optional[builtins.str] = None,
|
|
7540
|
+
vpc_id: typing.Optional[builtins.str] = None,
|
|
7200
7541
|
) -> None:
|
|
7201
7542
|
"""Type checking stubs"""
|
|
7202
7543
|
pass
|
|
@@ -7284,6 +7625,7 @@ def _typecheckingstub__2f1d19cebb2e7dfe2bb3a674253e22bfdb540bd48dc9cd243370420d8
|
|
|
7284
7625
|
type: builtins.str,
|
|
7285
7626
|
description: typing.Optional[builtins.str] = None,
|
|
7286
7627
|
rule_group: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRuleGroup.RuleGroupProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7628
|
+
summary_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRuleGroup.SummaryConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7287
7629
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7288
7630
|
) -> None:
|
|
7289
7631
|
"""Type checking stubs"""
|
|
@@ -7331,6 +7673,12 @@ def _typecheckingstub__6ed6ac96ae6360b92bfdf6614d9832ba1cad5080dce3a3257a75537c9
|
|
|
7331
7673
|
"""Type checking stubs"""
|
|
7332
7674
|
pass
|
|
7333
7675
|
|
|
7676
|
+
def _typecheckingstub__46973fc09b1e3c3e87b38c8ac10ef1cb472bfde25cd2947723ae44a7d98733e0(
|
|
7677
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnRuleGroup.SummaryConfigurationProperty]],
|
|
7678
|
+
) -> None:
|
|
7679
|
+
"""Type checking stubs"""
|
|
7680
|
+
pass
|
|
7681
|
+
|
|
7334
7682
|
def _typecheckingstub__5969fe74fc1a24641d71678e96d3133e152f5f87c43e5f7d72af22aa055d7db5(
|
|
7335
7683
|
value: typing.Optional[typing.List[_CfnTag_f6864754]],
|
|
7336
7684
|
) -> None:
|
|
@@ -7518,6 +7866,13 @@ def _typecheckingstub__71d7a12c23bdb40d0d25319bf80720d55c4205129c386e8de5676df43
|
|
|
7518
7866
|
"""Type checking stubs"""
|
|
7519
7867
|
pass
|
|
7520
7868
|
|
|
7869
|
+
def _typecheckingstub__46f2fcadfd6cf356e80e3b58b0b02c7c119bd9a36d7ac33ac0ee324f887c1307(
|
|
7870
|
+
*,
|
|
7871
|
+
rule_options: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
7872
|
+
) -> None:
|
|
7873
|
+
"""Type checking stubs"""
|
|
7874
|
+
pass
|
|
7875
|
+
|
|
7521
7876
|
def _typecheckingstub__775fa1817d39168a6b1883b9e449352da902edc72fb398c55cda18aa8ead3039(
|
|
7522
7877
|
*,
|
|
7523
7878
|
flags: typing.Sequence[builtins.str],
|
|
@@ -7533,6 +7888,7 @@ def _typecheckingstub__775b93be404fbe10bf6b023b8192636307852f30e49da9892d7e20aa4
|
|
|
7533
7888
|
type: builtins.str,
|
|
7534
7889
|
description: typing.Optional[builtins.str] = None,
|
|
7535
7890
|
rule_group: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRuleGroup.RuleGroupProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7891
|
+
summary_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnRuleGroup.SummaryConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7536
7892
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7537
7893
|
) -> None:
|
|
7538
7894
|
"""Type checking stubs"""
|