aws-cdk-lib 2.162.0__py3-none-any.whl → 2.163.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 +5 -7
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.162.0.jsii.tgz → aws-cdk-lib@2.163.0.jsii.tgz} +0 -0
- aws_cdk/aws_apigatewayv2/__init__.py +7 -7
- aws_cdk/aws_appflow/__init__.py +30 -16
- aws_cdk/aws_appsync/__init__.py +11 -21
- aws_cdk/aws_autoscaling/__init__.py +123 -0
- aws_cdk/aws_b2bi/__init__.py +83 -57
- aws_cdk/aws_cloudformation/__init__.py +5 -7
- aws_cdk/aws_codebuild/__init__.py +19 -40
- aws_cdk/aws_codepipeline/__init__.py +88 -7
- aws_cdk/aws_cognito/__init__.py +282 -168
- aws_cdk/aws_dms/__init__.py +1076 -117
- aws_cdk/aws_docdb/__init__.py +19 -13
- aws_cdk/aws_dynamodb/__init__.py +43 -22
- aws_cdk/aws_ec2/__init__.py +1213 -38
- aws_cdk/aws_ecs/__init__.py +187 -18
- aws_cdk/aws_ecs_patterns/__init__.py +189 -27
- aws_cdk/aws_efs/__init__.py +56 -37
- aws_cdk/aws_eks/__init__.py +6 -2
- aws_cdk/aws_elasticache/__init__.py +118 -118
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +21 -1
- aws_cdk/aws_emr/__init__.py +124 -57
- aws_cdk/aws_events/__init__.py +40 -0
- aws_cdk/aws_fms/__init__.py +757 -8
- aws_cdk/aws_fsx/__init__.py +245 -10
- aws_cdk/aws_gamelift/__init__.py +121 -0
- aws_cdk/aws_glue/__init__.py +344 -61
- aws_cdk/aws_iam/__init__.py +44 -0
- aws_cdk/aws_identitystore/__init__.py +4 -2
- aws_cdk/aws_iot/__init__.py +40 -12
- aws_cdk/aws_kinesis/__init__.py +239 -0
- aws_cdk/aws_kms/__init__.py +92 -3
- aws_cdk/aws_lambda/__init__.py +2 -2
- aws_cdk/aws_mediapackagev2/__init__.py +26 -10
- aws_cdk/aws_memorydb/__init__.py +7 -7
- aws_cdk/aws_networkfirewall/__init__.py +89 -0
- aws_cdk/aws_qbusiness/__init__.py +51 -7
- aws_cdk/aws_quicksight/__init__.py +221 -87
- aws_cdk/aws_rds/__init__.py +376 -75
- aws_cdk/aws_redshift/__init__.py +493 -13
- aws_cdk/aws_route53profiles/__init__.py +4 -2
- aws_cdk/aws_route53resolver/__init__.py +26 -60
- aws_cdk/aws_s3/__init__.py +104 -4
- aws_cdk/aws_s3express/__init__.py +73 -13
- aws_cdk/aws_s3outposts/__init__.py +21 -12
- aws_cdk/aws_sagemaker/__init__.py +4 -44
- aws_cdk/aws_ssmquicksetup/__init__.py +2 -2
- aws_cdk/aws_stepfunctions/__init__.py +529 -156
- aws_cdk/aws_transfer/__init__.py +15 -4
- aws_cdk/aws_waf/__init__.py +11 -11
- aws_cdk/aws_wafregional/__init__.py +12 -12
- aws_cdk/aws_wisdom/__init__.py +710 -5
- {aws_cdk_lib-2.162.0.dist-info → aws_cdk_lib-2.163.0.dist-info}/METADATA +1 -1
- {aws_cdk_lib-2.162.0.dist-info → aws_cdk_lib-2.163.0.dist-info}/RECORD +59 -59
- {aws_cdk_lib-2.162.0.dist-info → aws_cdk_lib-2.163.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.162.0.dist-info → aws_cdk_lib-2.163.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.162.0.dist-info → aws_cdk_lib-2.163.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.162.0.dist-info → aws_cdk_lib-2.163.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_fms/__init__.py
CHANGED
|
@@ -300,7 +300,48 @@ class CfnPolicy(
|
|
|
300
300
|
# the properties below are optional
|
|
301
301
|
managed_service_data="managedServiceData",
|
|
302
302
|
policy_option=fms.CfnPolicy.PolicyOptionProperty(
|
|
303
|
-
network_acl_common_policy=fms.CfnPolicy.NetworkAclCommonPolicyProperty(
|
|
303
|
+
network_acl_common_policy=fms.CfnPolicy.NetworkAclCommonPolicyProperty(
|
|
304
|
+
network_acl_entry_set=fms.CfnPolicy.NetworkAclEntrySetProperty(
|
|
305
|
+
force_remediate_for_first_entries=False,
|
|
306
|
+
force_remediate_for_last_entries=False,
|
|
307
|
+
|
|
308
|
+
# the properties below are optional
|
|
309
|
+
first_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
310
|
+
egress=False,
|
|
311
|
+
protocol="protocol",
|
|
312
|
+
rule_action="ruleAction",
|
|
313
|
+
|
|
314
|
+
# the properties below are optional
|
|
315
|
+
cidr_block="cidrBlock",
|
|
316
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
317
|
+
code=123,
|
|
318
|
+
type=123
|
|
319
|
+
),
|
|
320
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
321
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
322
|
+
from=123,
|
|
323
|
+
to=123
|
|
324
|
+
)
|
|
325
|
+
)],
|
|
326
|
+
last_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
327
|
+
egress=False,
|
|
328
|
+
protocol="protocol",
|
|
329
|
+
rule_action="ruleAction",
|
|
330
|
+
|
|
331
|
+
# the properties below are optional
|
|
332
|
+
cidr_block="cidrBlock",
|
|
333
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
334
|
+
code=123,
|
|
335
|
+
type=123
|
|
336
|
+
),
|
|
337
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
338
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
339
|
+
from=123,
|
|
340
|
+
to=123
|
|
341
|
+
)
|
|
342
|
+
)]
|
|
343
|
+
)
|
|
344
|
+
),
|
|
304
345
|
network_firewall_policy=fms.CfnPolicy.NetworkFirewallPolicyProperty(
|
|
305
346
|
firewall_deployment_model="firewallDeploymentModel"
|
|
306
347
|
),
|
|
@@ -770,19 +811,91 @@ class CfnPolicy(
|
|
|
770
811
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
771
812
|
)
|
|
772
813
|
|
|
814
|
+
@jsii.data_type(
|
|
815
|
+
jsii_type="aws-cdk-lib.aws_fms.CfnPolicy.IcmpTypeCodeProperty",
|
|
816
|
+
jsii_struct_bases=[],
|
|
817
|
+
name_mapping={"code": "code", "type": "type"},
|
|
818
|
+
)
|
|
819
|
+
class IcmpTypeCodeProperty:
|
|
820
|
+
def __init__(self, *, code: jsii.Number, type: jsii.Number) -> None:
|
|
821
|
+
'''ICMP protocol: The ICMP type and code.
|
|
822
|
+
|
|
823
|
+
:param code: ICMP code.
|
|
824
|
+
:param type: ICMP type.
|
|
825
|
+
|
|
826
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-icmptypecode.html
|
|
827
|
+
:exampleMetadata: fixture=_generated
|
|
828
|
+
|
|
829
|
+
Example::
|
|
830
|
+
|
|
831
|
+
# The code below shows an example of how to instantiate this type.
|
|
832
|
+
# The values are placeholders you should change.
|
|
833
|
+
from aws_cdk import aws_fms as fms
|
|
834
|
+
|
|
835
|
+
icmp_type_code_property = fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
836
|
+
code=123,
|
|
837
|
+
type=123
|
|
838
|
+
)
|
|
839
|
+
'''
|
|
840
|
+
if __debug__:
|
|
841
|
+
type_hints = typing.get_type_hints(_typecheckingstub__65b9cc6166ca508cd4c5ab4d066ea459564143dea548a99b579d93e51f574165)
|
|
842
|
+
check_type(argname="argument code", value=code, expected_type=type_hints["code"])
|
|
843
|
+
check_type(argname="argument type", value=type, expected_type=type_hints["type"])
|
|
844
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
845
|
+
"code": code,
|
|
846
|
+
"type": type,
|
|
847
|
+
}
|
|
848
|
+
|
|
849
|
+
@builtins.property
|
|
850
|
+
def code(self) -> jsii.Number:
|
|
851
|
+
'''ICMP code.
|
|
852
|
+
|
|
853
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-icmptypecode.html#cfn-fms-policy-icmptypecode-code
|
|
854
|
+
'''
|
|
855
|
+
result = self._values.get("code")
|
|
856
|
+
assert result is not None, "Required property 'code' is missing"
|
|
857
|
+
return typing.cast(jsii.Number, result)
|
|
858
|
+
|
|
859
|
+
@builtins.property
|
|
860
|
+
def type(self) -> jsii.Number:
|
|
861
|
+
'''ICMP type.
|
|
862
|
+
|
|
863
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-icmptypecode.html#cfn-fms-policy-icmptypecode-type
|
|
864
|
+
'''
|
|
865
|
+
result = self._values.get("type")
|
|
866
|
+
assert result is not None, "Required property 'type' is missing"
|
|
867
|
+
return typing.cast(jsii.Number, result)
|
|
868
|
+
|
|
869
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
870
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
871
|
+
|
|
872
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
873
|
+
return not (rhs == self)
|
|
874
|
+
|
|
875
|
+
def __repr__(self) -> str:
|
|
876
|
+
return "IcmpTypeCodeProperty(%s)" % ", ".join(
|
|
877
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
878
|
+
)
|
|
879
|
+
|
|
773
880
|
@jsii.data_type(
|
|
774
881
|
jsii_type="aws-cdk-lib.aws_fms.CfnPolicy.NetworkAclCommonPolicyProperty",
|
|
775
882
|
jsii_struct_bases=[],
|
|
776
|
-
name_mapping={},
|
|
883
|
+
name_mapping={"network_acl_entry_set": "networkAclEntrySet"},
|
|
777
884
|
)
|
|
778
885
|
class NetworkAclCommonPolicyProperty:
|
|
779
|
-
def __init__(
|
|
886
|
+
def __init__(
|
|
887
|
+
self,
|
|
888
|
+
*,
|
|
889
|
+
network_acl_entry_set: typing.Union[_IResolvable_da3f097b, typing.Union["CfnPolicy.NetworkAclEntrySetProperty", typing.Dict[builtins.str, typing.Any]]],
|
|
890
|
+
) -> None:
|
|
780
891
|
'''Defines a Firewall Manager network ACL policy.
|
|
781
892
|
|
|
782
893
|
This is used in the ``PolicyOption`` of a ``SecurityServicePolicyData`` for a ``Policy`` , when the ``SecurityServicePolicyData`` type is set to ``NETWORK_ACL_COMMON`` .
|
|
783
894
|
|
|
784
895
|
For information about network ACLs, see `Control traffic to subnets using network ACLs <https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html>`_ in the *Amazon Virtual Private Cloud User Guide* .
|
|
785
896
|
|
|
897
|
+
:param network_acl_entry_set: The definition of the first and last rules for the network ACL policy.
|
|
898
|
+
|
|
786
899
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclcommonpolicy.html
|
|
787
900
|
:exampleMetadata: fixture=_generated
|
|
788
901
|
|
|
@@ -792,9 +905,67 @@ class CfnPolicy(
|
|
|
792
905
|
# The values are placeholders you should change.
|
|
793
906
|
from aws_cdk import aws_fms as fms
|
|
794
907
|
|
|
795
|
-
network_acl_common_policy_property = fms.CfnPolicy.NetworkAclCommonPolicyProperty(
|
|
908
|
+
network_acl_common_policy_property = fms.CfnPolicy.NetworkAclCommonPolicyProperty(
|
|
909
|
+
network_acl_entry_set=fms.CfnPolicy.NetworkAclEntrySetProperty(
|
|
910
|
+
force_remediate_for_first_entries=False,
|
|
911
|
+
force_remediate_for_last_entries=False,
|
|
912
|
+
|
|
913
|
+
# the properties below are optional
|
|
914
|
+
first_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
915
|
+
egress=False,
|
|
916
|
+
protocol="protocol",
|
|
917
|
+
rule_action="ruleAction",
|
|
918
|
+
|
|
919
|
+
# the properties below are optional
|
|
920
|
+
cidr_block="cidrBlock",
|
|
921
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
922
|
+
code=123,
|
|
923
|
+
type=123
|
|
924
|
+
),
|
|
925
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
926
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
927
|
+
from=123,
|
|
928
|
+
to=123
|
|
929
|
+
)
|
|
930
|
+
)],
|
|
931
|
+
last_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
932
|
+
egress=False,
|
|
933
|
+
protocol="protocol",
|
|
934
|
+
rule_action="ruleAction",
|
|
935
|
+
|
|
936
|
+
# the properties below are optional
|
|
937
|
+
cidr_block="cidrBlock",
|
|
938
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
939
|
+
code=123,
|
|
940
|
+
type=123
|
|
941
|
+
),
|
|
942
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
943
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
944
|
+
from=123,
|
|
945
|
+
to=123
|
|
946
|
+
)
|
|
947
|
+
)]
|
|
948
|
+
)
|
|
949
|
+
)
|
|
796
950
|
'''
|
|
797
|
-
|
|
951
|
+
if __debug__:
|
|
952
|
+
type_hints = typing.get_type_hints(_typecheckingstub__6dfc57cc41dc1d1b1ebbc44d2e08c4db8913dbb8d25d9bff92c2c760de2fdc82)
|
|
953
|
+
check_type(argname="argument network_acl_entry_set", value=network_acl_entry_set, expected_type=type_hints["network_acl_entry_set"])
|
|
954
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
955
|
+
"network_acl_entry_set": network_acl_entry_set,
|
|
956
|
+
}
|
|
957
|
+
|
|
958
|
+
@builtins.property
|
|
959
|
+
def network_acl_entry_set(
|
|
960
|
+
self,
|
|
961
|
+
) -> typing.Union[_IResolvable_da3f097b, "CfnPolicy.NetworkAclEntrySetProperty"]:
|
|
962
|
+
'''The definition of the first and last rules for the network ACL policy.
|
|
963
|
+
|
|
964
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclcommonpolicy.html#cfn-fms-policy-networkaclcommonpolicy-networkaclentryset
|
|
965
|
+
'''
|
|
966
|
+
result = self._values.get("network_acl_entry_set")
|
|
967
|
+
assert result is not None, "Required property 'network_acl_entry_set' is missing"
|
|
968
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnPolicy.NetworkAclEntrySetProperty"], result)
|
|
798
969
|
|
|
799
970
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
800
971
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
@@ -807,6 +978,349 @@ class CfnPolicy(
|
|
|
807
978
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
808
979
|
)
|
|
809
980
|
|
|
981
|
+
@jsii.data_type(
|
|
982
|
+
jsii_type="aws-cdk-lib.aws_fms.CfnPolicy.NetworkAclEntryProperty",
|
|
983
|
+
jsii_struct_bases=[],
|
|
984
|
+
name_mapping={
|
|
985
|
+
"egress": "egress",
|
|
986
|
+
"protocol": "protocol",
|
|
987
|
+
"rule_action": "ruleAction",
|
|
988
|
+
"cidr_block": "cidrBlock",
|
|
989
|
+
"icmp_type_code": "icmpTypeCode",
|
|
990
|
+
"ipv6_cidr_block": "ipv6CidrBlock",
|
|
991
|
+
"port_range": "portRange",
|
|
992
|
+
},
|
|
993
|
+
)
|
|
994
|
+
class NetworkAclEntryProperty:
|
|
995
|
+
def __init__(
|
|
996
|
+
self,
|
|
997
|
+
*,
|
|
998
|
+
egress: typing.Union[builtins.bool, _IResolvable_da3f097b],
|
|
999
|
+
protocol: builtins.str,
|
|
1000
|
+
rule_action: builtins.str,
|
|
1001
|
+
cidr_block: typing.Optional[builtins.str] = None,
|
|
1002
|
+
icmp_type_code: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPolicy.IcmpTypeCodeProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1003
|
+
ipv6_cidr_block: typing.Optional[builtins.str] = None,
|
|
1004
|
+
port_range: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPolicy.PortRangeProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1005
|
+
) -> None:
|
|
1006
|
+
'''Describes a rule in a network ACL.
|
|
1007
|
+
|
|
1008
|
+
Each network ACL has a set of numbered ingress rules and a separate set of numbered egress rules. When determining
|
|
1009
|
+
whether a packet should be allowed in or out of a subnet associated with the network ACL, AWS processes the entries in the network ACL according to the rule numbers, in ascending order.
|
|
1010
|
+
|
|
1011
|
+
When you manage an individual network ACL, you explicitly specify the rule numbers. When you specify the network ACL rules in a Firewall Manager policy, you provide the rules to run first, in the order that you want them to run, and the rules to run last, in the order that you want them to run. Firewall Manager assigns the rule numbers for you when you save the network ACL policy specification.
|
|
1012
|
+
|
|
1013
|
+
:param egress: Indicates whether the rule is an egress, or outbound, rule (applied to traffic leaving the subnet). If it's not an egress rule, then it's an ingress, or inbound, rule.
|
|
1014
|
+
:param protocol: The protocol number. A value of "-1" means all protocols.
|
|
1015
|
+
:param rule_action: Indicates whether to allow or deny the traffic that matches the rule.
|
|
1016
|
+
:param cidr_block: The IPv4 network range to allow or deny, in CIDR notation.
|
|
1017
|
+
:param icmp_type_code: ICMP protocol: The ICMP type and code.
|
|
1018
|
+
:param ipv6_cidr_block: The IPv6 network range to allow or deny, in CIDR notation.
|
|
1019
|
+
:param port_range: TCP or UDP protocols: The range of ports the rule applies to.
|
|
1020
|
+
|
|
1021
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html
|
|
1022
|
+
:exampleMetadata: fixture=_generated
|
|
1023
|
+
|
|
1024
|
+
Example::
|
|
1025
|
+
|
|
1026
|
+
# The code below shows an example of how to instantiate this type.
|
|
1027
|
+
# The values are placeholders you should change.
|
|
1028
|
+
from aws_cdk import aws_fms as fms
|
|
1029
|
+
|
|
1030
|
+
network_acl_entry_property = fms.CfnPolicy.NetworkAclEntryProperty(
|
|
1031
|
+
egress=False,
|
|
1032
|
+
protocol="protocol",
|
|
1033
|
+
rule_action="ruleAction",
|
|
1034
|
+
|
|
1035
|
+
# the properties below are optional
|
|
1036
|
+
cidr_block="cidrBlock",
|
|
1037
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
1038
|
+
code=123,
|
|
1039
|
+
type=123
|
|
1040
|
+
),
|
|
1041
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
1042
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
1043
|
+
from=123,
|
|
1044
|
+
to=123
|
|
1045
|
+
)
|
|
1046
|
+
)
|
|
1047
|
+
'''
|
|
1048
|
+
if __debug__:
|
|
1049
|
+
type_hints = typing.get_type_hints(_typecheckingstub__7a315c8565b94dd4f1c73bc5bb6afd0ade3bc8461a7c74c1098d0d7f66076bf4)
|
|
1050
|
+
check_type(argname="argument egress", value=egress, expected_type=type_hints["egress"])
|
|
1051
|
+
check_type(argname="argument protocol", value=protocol, expected_type=type_hints["protocol"])
|
|
1052
|
+
check_type(argname="argument rule_action", value=rule_action, expected_type=type_hints["rule_action"])
|
|
1053
|
+
check_type(argname="argument cidr_block", value=cidr_block, expected_type=type_hints["cidr_block"])
|
|
1054
|
+
check_type(argname="argument icmp_type_code", value=icmp_type_code, expected_type=type_hints["icmp_type_code"])
|
|
1055
|
+
check_type(argname="argument ipv6_cidr_block", value=ipv6_cidr_block, expected_type=type_hints["ipv6_cidr_block"])
|
|
1056
|
+
check_type(argname="argument port_range", value=port_range, expected_type=type_hints["port_range"])
|
|
1057
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1058
|
+
"egress": egress,
|
|
1059
|
+
"protocol": protocol,
|
|
1060
|
+
"rule_action": rule_action,
|
|
1061
|
+
}
|
|
1062
|
+
if cidr_block is not None:
|
|
1063
|
+
self._values["cidr_block"] = cidr_block
|
|
1064
|
+
if icmp_type_code is not None:
|
|
1065
|
+
self._values["icmp_type_code"] = icmp_type_code
|
|
1066
|
+
if ipv6_cidr_block is not None:
|
|
1067
|
+
self._values["ipv6_cidr_block"] = ipv6_cidr_block
|
|
1068
|
+
if port_range is not None:
|
|
1069
|
+
self._values["port_range"] = port_range
|
|
1070
|
+
|
|
1071
|
+
@builtins.property
|
|
1072
|
+
def egress(self) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
|
|
1073
|
+
'''Indicates whether the rule is an egress, or outbound, rule (applied to traffic leaving the subnet).
|
|
1074
|
+
|
|
1075
|
+
If it's not an egress rule, then it's an ingress, or inbound, rule.
|
|
1076
|
+
|
|
1077
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-egress
|
|
1078
|
+
'''
|
|
1079
|
+
result = self._values.get("egress")
|
|
1080
|
+
assert result is not None, "Required property 'egress' is missing"
|
|
1081
|
+
return typing.cast(typing.Union[builtins.bool, _IResolvable_da3f097b], result)
|
|
1082
|
+
|
|
1083
|
+
@builtins.property
|
|
1084
|
+
def protocol(self) -> builtins.str:
|
|
1085
|
+
'''The protocol number.
|
|
1086
|
+
|
|
1087
|
+
A value of "-1" means all protocols.
|
|
1088
|
+
|
|
1089
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-protocol
|
|
1090
|
+
'''
|
|
1091
|
+
result = self._values.get("protocol")
|
|
1092
|
+
assert result is not None, "Required property 'protocol' is missing"
|
|
1093
|
+
return typing.cast(builtins.str, result)
|
|
1094
|
+
|
|
1095
|
+
@builtins.property
|
|
1096
|
+
def rule_action(self) -> builtins.str:
|
|
1097
|
+
'''Indicates whether to allow or deny the traffic that matches the rule.
|
|
1098
|
+
|
|
1099
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-ruleaction
|
|
1100
|
+
'''
|
|
1101
|
+
result = self._values.get("rule_action")
|
|
1102
|
+
assert result is not None, "Required property 'rule_action' is missing"
|
|
1103
|
+
return typing.cast(builtins.str, result)
|
|
1104
|
+
|
|
1105
|
+
@builtins.property
|
|
1106
|
+
def cidr_block(self) -> typing.Optional[builtins.str]:
|
|
1107
|
+
'''The IPv4 network range to allow or deny, in CIDR notation.
|
|
1108
|
+
|
|
1109
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-cidrblock
|
|
1110
|
+
'''
|
|
1111
|
+
result = self._values.get("cidr_block")
|
|
1112
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1113
|
+
|
|
1114
|
+
@builtins.property
|
|
1115
|
+
def icmp_type_code(
|
|
1116
|
+
self,
|
|
1117
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPolicy.IcmpTypeCodeProperty"]]:
|
|
1118
|
+
'''ICMP protocol: The ICMP type and code.
|
|
1119
|
+
|
|
1120
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-icmptypecode
|
|
1121
|
+
'''
|
|
1122
|
+
result = self._values.get("icmp_type_code")
|
|
1123
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPolicy.IcmpTypeCodeProperty"]], result)
|
|
1124
|
+
|
|
1125
|
+
@builtins.property
|
|
1126
|
+
def ipv6_cidr_block(self) -> typing.Optional[builtins.str]:
|
|
1127
|
+
'''The IPv6 network range to allow or deny, in CIDR notation.
|
|
1128
|
+
|
|
1129
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-ipv6cidrblock
|
|
1130
|
+
'''
|
|
1131
|
+
result = self._values.get("ipv6_cidr_block")
|
|
1132
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1133
|
+
|
|
1134
|
+
@builtins.property
|
|
1135
|
+
def port_range(
|
|
1136
|
+
self,
|
|
1137
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPolicy.PortRangeProperty"]]:
|
|
1138
|
+
'''TCP or UDP protocols: The range of ports the rule applies to.
|
|
1139
|
+
|
|
1140
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-portrange
|
|
1141
|
+
'''
|
|
1142
|
+
result = self._values.get("port_range")
|
|
1143
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnPolicy.PortRangeProperty"]], result)
|
|
1144
|
+
|
|
1145
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1146
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1147
|
+
|
|
1148
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1149
|
+
return not (rhs == self)
|
|
1150
|
+
|
|
1151
|
+
def __repr__(self) -> str:
|
|
1152
|
+
return "NetworkAclEntryProperty(%s)" % ", ".join(
|
|
1153
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1154
|
+
)
|
|
1155
|
+
|
|
1156
|
+
@jsii.data_type(
|
|
1157
|
+
jsii_type="aws-cdk-lib.aws_fms.CfnPolicy.NetworkAclEntrySetProperty",
|
|
1158
|
+
jsii_struct_bases=[],
|
|
1159
|
+
name_mapping={
|
|
1160
|
+
"force_remediate_for_first_entries": "forceRemediateForFirstEntries",
|
|
1161
|
+
"force_remediate_for_last_entries": "forceRemediateForLastEntries",
|
|
1162
|
+
"first_entries": "firstEntries",
|
|
1163
|
+
"last_entries": "lastEntries",
|
|
1164
|
+
},
|
|
1165
|
+
)
|
|
1166
|
+
class NetworkAclEntrySetProperty:
|
|
1167
|
+
def __init__(
|
|
1168
|
+
self,
|
|
1169
|
+
*,
|
|
1170
|
+
force_remediate_for_first_entries: typing.Union[builtins.bool, _IResolvable_da3f097b],
|
|
1171
|
+
force_remediate_for_last_entries: typing.Union[builtins.bool, _IResolvable_da3f097b],
|
|
1172
|
+
first_entries: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPolicy.NetworkAclEntryProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
1173
|
+
last_entries: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPolicy.NetworkAclEntryProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
1174
|
+
) -> None:
|
|
1175
|
+
'''The configuration of the first and last rules for the network ACL policy, and the remediation settings for each.
|
|
1176
|
+
|
|
1177
|
+
:param force_remediate_for_first_entries: Applies only when remediation is enabled for the policy as a whole. Firewall Manager uses this setting when it finds policy violations that involve conflicts between the custom entries and the policy entries. If forced remediation is disabled, Firewall Manager marks the network ACL as noncompliant and does not try to remediate. For more information about the remediation behavior, see `Remediation for managed network ACLs <https://docs.aws.amazon.com/waf/latest/developerguide/network-acl-policies.html#network-acls-remediation>`_ in the *AWS Firewall Manager Developer Guide* .
|
|
1178
|
+
:param force_remediate_for_last_entries: Applies only when remediation is enabled for the policy as a whole. Firewall Manager uses this setting when it finds policy violations that involve conflicts between the custom entries and the policy entries. If forced remediation is disabled, Firewall Manager marks the network ACL as noncompliant and does not try to remediate. For more information about the remediation behavior, see `Remediation for managed network ACLs <https://docs.aws.amazon.com/waf/latest/developerguide/network-acl-policies.html#network-acls-remediation>`_ in the *AWS Firewall Manager Developer Guide* .
|
|
1179
|
+
:param first_entries: The rules that you want to run first in the Firewall Manager managed network ACLs. .. epigraph:: Provide these in the order in which you want them to run. Firewall Manager will assign the specific rule numbers for you, in the network ACLs that it creates. You must specify at least one first entry or one last entry in any network ACL policy.
|
|
1180
|
+
:param last_entries: The rules that you want to run last in the Firewall Manager managed network ACLs. .. epigraph:: Provide these in the order in which you want them to run. Firewall Manager will assign the specific rule numbers for you, in the network ACLs that it creates. You must specify at least one first entry or one last entry in any network ACL policy.
|
|
1181
|
+
|
|
1182
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentryset.html
|
|
1183
|
+
:exampleMetadata: fixture=_generated
|
|
1184
|
+
|
|
1185
|
+
Example::
|
|
1186
|
+
|
|
1187
|
+
# The code below shows an example of how to instantiate this type.
|
|
1188
|
+
# The values are placeholders you should change.
|
|
1189
|
+
from aws_cdk import aws_fms as fms
|
|
1190
|
+
|
|
1191
|
+
network_acl_entry_set_property = fms.CfnPolicy.NetworkAclEntrySetProperty(
|
|
1192
|
+
force_remediate_for_first_entries=False,
|
|
1193
|
+
force_remediate_for_last_entries=False,
|
|
1194
|
+
|
|
1195
|
+
# the properties below are optional
|
|
1196
|
+
first_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
1197
|
+
egress=False,
|
|
1198
|
+
protocol="protocol",
|
|
1199
|
+
rule_action="ruleAction",
|
|
1200
|
+
|
|
1201
|
+
# the properties below are optional
|
|
1202
|
+
cidr_block="cidrBlock",
|
|
1203
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
1204
|
+
code=123,
|
|
1205
|
+
type=123
|
|
1206
|
+
),
|
|
1207
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
1208
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
1209
|
+
from=123,
|
|
1210
|
+
to=123
|
|
1211
|
+
)
|
|
1212
|
+
)],
|
|
1213
|
+
last_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
1214
|
+
egress=False,
|
|
1215
|
+
protocol="protocol",
|
|
1216
|
+
rule_action="ruleAction",
|
|
1217
|
+
|
|
1218
|
+
# the properties below are optional
|
|
1219
|
+
cidr_block="cidrBlock",
|
|
1220
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
1221
|
+
code=123,
|
|
1222
|
+
type=123
|
|
1223
|
+
),
|
|
1224
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
1225
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
1226
|
+
from=123,
|
|
1227
|
+
to=123
|
|
1228
|
+
)
|
|
1229
|
+
)]
|
|
1230
|
+
)
|
|
1231
|
+
'''
|
|
1232
|
+
if __debug__:
|
|
1233
|
+
type_hints = typing.get_type_hints(_typecheckingstub__b2907f7090b00fafcfa0eb4f641b098a7fa37436ba6c4ffff2dafc1595c81a6e)
|
|
1234
|
+
check_type(argname="argument force_remediate_for_first_entries", value=force_remediate_for_first_entries, expected_type=type_hints["force_remediate_for_first_entries"])
|
|
1235
|
+
check_type(argname="argument force_remediate_for_last_entries", value=force_remediate_for_last_entries, expected_type=type_hints["force_remediate_for_last_entries"])
|
|
1236
|
+
check_type(argname="argument first_entries", value=first_entries, expected_type=type_hints["first_entries"])
|
|
1237
|
+
check_type(argname="argument last_entries", value=last_entries, expected_type=type_hints["last_entries"])
|
|
1238
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1239
|
+
"force_remediate_for_first_entries": force_remediate_for_first_entries,
|
|
1240
|
+
"force_remediate_for_last_entries": force_remediate_for_last_entries,
|
|
1241
|
+
}
|
|
1242
|
+
if first_entries is not None:
|
|
1243
|
+
self._values["first_entries"] = first_entries
|
|
1244
|
+
if last_entries is not None:
|
|
1245
|
+
self._values["last_entries"] = last_entries
|
|
1246
|
+
|
|
1247
|
+
@builtins.property
|
|
1248
|
+
def force_remediate_for_first_entries(
|
|
1249
|
+
self,
|
|
1250
|
+
) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
|
|
1251
|
+
'''Applies only when remediation is enabled for the policy as a whole.
|
|
1252
|
+
|
|
1253
|
+
Firewall Manager uses this setting when it finds policy violations that involve conflicts between the custom entries and the policy entries.
|
|
1254
|
+
|
|
1255
|
+
If forced remediation is disabled, Firewall Manager marks the network ACL as noncompliant and does not try to remediate. For more information about the remediation behavior, see `Remediation for managed network ACLs <https://docs.aws.amazon.com/waf/latest/developerguide/network-acl-policies.html#network-acls-remediation>`_ in the *AWS Firewall Manager Developer Guide* .
|
|
1256
|
+
|
|
1257
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentryset.html#cfn-fms-policy-networkaclentryset-forceremediateforfirstentries
|
|
1258
|
+
'''
|
|
1259
|
+
result = self._values.get("force_remediate_for_first_entries")
|
|
1260
|
+
assert result is not None, "Required property 'force_remediate_for_first_entries' is missing"
|
|
1261
|
+
return typing.cast(typing.Union[builtins.bool, _IResolvable_da3f097b], result)
|
|
1262
|
+
|
|
1263
|
+
@builtins.property
|
|
1264
|
+
def force_remediate_for_last_entries(
|
|
1265
|
+
self,
|
|
1266
|
+
) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
|
|
1267
|
+
'''Applies only when remediation is enabled for the policy as a whole.
|
|
1268
|
+
|
|
1269
|
+
Firewall Manager uses this setting when it finds policy violations that involve conflicts between the custom entries and the policy entries.
|
|
1270
|
+
|
|
1271
|
+
If forced remediation is disabled, Firewall Manager marks the network ACL as noncompliant and does not try to remediate. For more information about the remediation behavior, see `Remediation for managed network ACLs <https://docs.aws.amazon.com/waf/latest/developerguide/network-acl-policies.html#network-acls-remediation>`_ in the *AWS Firewall Manager Developer Guide* .
|
|
1272
|
+
|
|
1273
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentryset.html#cfn-fms-policy-networkaclentryset-forceremediateforlastentries
|
|
1274
|
+
'''
|
|
1275
|
+
result = self._values.get("force_remediate_for_last_entries")
|
|
1276
|
+
assert result is not None, "Required property 'force_remediate_for_last_entries' is missing"
|
|
1277
|
+
return typing.cast(typing.Union[builtins.bool, _IResolvable_da3f097b], result)
|
|
1278
|
+
|
|
1279
|
+
@builtins.property
|
|
1280
|
+
def first_entries(
|
|
1281
|
+
self,
|
|
1282
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnPolicy.NetworkAclEntryProperty"]]]]:
|
|
1283
|
+
'''The rules that you want to run first in the Firewall Manager managed network ACLs.
|
|
1284
|
+
|
|
1285
|
+
.. epigraph::
|
|
1286
|
+
|
|
1287
|
+
Provide these in the order in which you want them to run. Firewall Manager will assign the specific rule numbers for you, in the network ACLs that it creates.
|
|
1288
|
+
|
|
1289
|
+
You must specify at least one first entry or one last entry in any network ACL policy.
|
|
1290
|
+
|
|
1291
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentryset.html#cfn-fms-policy-networkaclentryset-firstentries
|
|
1292
|
+
'''
|
|
1293
|
+
result = self._values.get("first_entries")
|
|
1294
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnPolicy.NetworkAclEntryProperty"]]]], result)
|
|
1295
|
+
|
|
1296
|
+
@builtins.property
|
|
1297
|
+
def last_entries(
|
|
1298
|
+
self,
|
|
1299
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnPolicy.NetworkAclEntryProperty"]]]]:
|
|
1300
|
+
'''The rules that you want to run last in the Firewall Manager managed network ACLs.
|
|
1301
|
+
|
|
1302
|
+
.. epigraph::
|
|
1303
|
+
|
|
1304
|
+
Provide these in the order in which you want them to run. Firewall Manager will assign the specific rule numbers for you, in the network ACLs that it creates.
|
|
1305
|
+
|
|
1306
|
+
You must specify at least one first entry or one last entry in any network ACL policy.
|
|
1307
|
+
|
|
1308
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentryset.html#cfn-fms-policy-networkaclentryset-lastentries
|
|
1309
|
+
'''
|
|
1310
|
+
result = self._values.get("last_entries")
|
|
1311
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnPolicy.NetworkAclEntryProperty"]]]], result)
|
|
1312
|
+
|
|
1313
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1314
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1315
|
+
|
|
1316
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1317
|
+
return not (rhs == self)
|
|
1318
|
+
|
|
1319
|
+
def __repr__(self) -> str:
|
|
1320
|
+
return "NetworkAclEntrySetProperty(%s)" % ", ".join(
|
|
1321
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1322
|
+
)
|
|
1323
|
+
|
|
810
1324
|
@jsii.data_type(
|
|
811
1325
|
jsii_type="aws-cdk-lib.aws_fms.CfnPolicy.NetworkFirewallPolicyProperty",
|
|
812
1326
|
jsii_struct_bases=[],
|
|
@@ -896,7 +1410,48 @@ class CfnPolicy(
|
|
|
896
1410
|
from aws_cdk import aws_fms as fms
|
|
897
1411
|
|
|
898
1412
|
policy_option_property = fms.CfnPolicy.PolicyOptionProperty(
|
|
899
|
-
network_acl_common_policy=fms.CfnPolicy.NetworkAclCommonPolicyProperty(
|
|
1413
|
+
network_acl_common_policy=fms.CfnPolicy.NetworkAclCommonPolicyProperty(
|
|
1414
|
+
network_acl_entry_set=fms.CfnPolicy.NetworkAclEntrySetProperty(
|
|
1415
|
+
force_remediate_for_first_entries=False,
|
|
1416
|
+
force_remediate_for_last_entries=False,
|
|
1417
|
+
|
|
1418
|
+
# the properties below are optional
|
|
1419
|
+
first_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
1420
|
+
egress=False,
|
|
1421
|
+
protocol="protocol",
|
|
1422
|
+
rule_action="ruleAction",
|
|
1423
|
+
|
|
1424
|
+
# the properties below are optional
|
|
1425
|
+
cidr_block="cidrBlock",
|
|
1426
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
1427
|
+
code=123,
|
|
1428
|
+
type=123
|
|
1429
|
+
),
|
|
1430
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
1431
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
1432
|
+
from=123,
|
|
1433
|
+
to=123
|
|
1434
|
+
)
|
|
1435
|
+
)],
|
|
1436
|
+
last_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
1437
|
+
egress=False,
|
|
1438
|
+
protocol="protocol",
|
|
1439
|
+
rule_action="ruleAction",
|
|
1440
|
+
|
|
1441
|
+
# the properties below are optional
|
|
1442
|
+
cidr_block="cidrBlock",
|
|
1443
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
1444
|
+
code=123,
|
|
1445
|
+
type=123
|
|
1446
|
+
),
|
|
1447
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
1448
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
1449
|
+
from=123,
|
|
1450
|
+
to=123
|
|
1451
|
+
)
|
|
1452
|
+
)]
|
|
1453
|
+
)
|
|
1454
|
+
),
|
|
900
1455
|
network_firewall_policy=fms.CfnPolicy.NetworkFirewallPolicyProperty(
|
|
901
1456
|
firewall_deployment_model="firewallDeploymentModel"
|
|
902
1457
|
),
|
|
@@ -1034,6 +1589,72 @@ class CfnPolicy(
|
|
|
1034
1589
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
1035
1590
|
)
|
|
1036
1591
|
|
|
1592
|
+
@jsii.data_type(
|
|
1593
|
+
jsii_type="aws-cdk-lib.aws_fms.CfnPolicy.PortRangeProperty",
|
|
1594
|
+
jsii_struct_bases=[],
|
|
1595
|
+
name_mapping={"from_": "from", "to": "to"},
|
|
1596
|
+
)
|
|
1597
|
+
class PortRangeProperty:
|
|
1598
|
+
def __init__(self, *, from_: jsii.Number, to: jsii.Number) -> None:
|
|
1599
|
+
'''TCP or UDP protocols: The range of ports the rule applies to.
|
|
1600
|
+
|
|
1601
|
+
:param from_: The beginning port number of the range.
|
|
1602
|
+
:param to: The ending port number of the range.
|
|
1603
|
+
|
|
1604
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-portrange.html
|
|
1605
|
+
:exampleMetadata: fixture=_generated
|
|
1606
|
+
|
|
1607
|
+
Example::
|
|
1608
|
+
|
|
1609
|
+
# The code below shows an example of how to instantiate this type.
|
|
1610
|
+
# The values are placeholders you should change.
|
|
1611
|
+
from aws_cdk import aws_fms as fms
|
|
1612
|
+
|
|
1613
|
+
port_range_property = fms.CfnPolicy.PortRangeProperty(
|
|
1614
|
+
from=123,
|
|
1615
|
+
to=123
|
|
1616
|
+
)
|
|
1617
|
+
'''
|
|
1618
|
+
if __debug__:
|
|
1619
|
+
type_hints = typing.get_type_hints(_typecheckingstub__fbc1cd0112a3be4230fd0e2a96f8a5e7799f9f8c3925aad80c6eef4a1172da43)
|
|
1620
|
+
check_type(argname="argument from_", value=from_, expected_type=type_hints["from_"])
|
|
1621
|
+
check_type(argname="argument to", value=to, expected_type=type_hints["to"])
|
|
1622
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1623
|
+
"from_": from_,
|
|
1624
|
+
"to": to,
|
|
1625
|
+
}
|
|
1626
|
+
|
|
1627
|
+
@builtins.property
|
|
1628
|
+
def from_(self) -> jsii.Number:
|
|
1629
|
+
'''The beginning port number of the range.
|
|
1630
|
+
|
|
1631
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-portrange.html#cfn-fms-policy-portrange-from
|
|
1632
|
+
'''
|
|
1633
|
+
result = self._values.get("from_")
|
|
1634
|
+
assert result is not None, "Required property 'from_' is missing"
|
|
1635
|
+
return typing.cast(jsii.Number, result)
|
|
1636
|
+
|
|
1637
|
+
@builtins.property
|
|
1638
|
+
def to(self) -> jsii.Number:
|
|
1639
|
+
'''The ending port number of the range.
|
|
1640
|
+
|
|
1641
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-portrange.html#cfn-fms-policy-portrange-to
|
|
1642
|
+
'''
|
|
1643
|
+
result = self._values.get("to")
|
|
1644
|
+
assert result is not None, "Required property 'to' is missing"
|
|
1645
|
+
return typing.cast(jsii.Number, result)
|
|
1646
|
+
|
|
1647
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1648
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1649
|
+
|
|
1650
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1651
|
+
return not (rhs == self)
|
|
1652
|
+
|
|
1653
|
+
def __repr__(self) -> str:
|
|
1654
|
+
return "PortRangeProperty(%s)" % ", ".join(
|
|
1655
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1656
|
+
)
|
|
1657
|
+
|
|
1037
1658
|
@jsii.data_type(
|
|
1038
1659
|
jsii_type="aws-cdk-lib.aws_fms.CfnPolicy.ResourceTagProperty",
|
|
1039
1660
|
jsii_struct_bases=[],
|
|
@@ -1147,7 +1768,48 @@ class CfnPolicy(
|
|
|
1147
1768
|
# the properties below are optional
|
|
1148
1769
|
managed_service_data="managedServiceData",
|
|
1149
1770
|
policy_option=fms.CfnPolicy.PolicyOptionProperty(
|
|
1150
|
-
network_acl_common_policy=fms.CfnPolicy.NetworkAclCommonPolicyProperty(
|
|
1771
|
+
network_acl_common_policy=fms.CfnPolicy.NetworkAclCommonPolicyProperty(
|
|
1772
|
+
network_acl_entry_set=fms.CfnPolicy.NetworkAclEntrySetProperty(
|
|
1773
|
+
force_remediate_for_first_entries=False,
|
|
1774
|
+
force_remediate_for_last_entries=False,
|
|
1775
|
+
|
|
1776
|
+
# the properties below are optional
|
|
1777
|
+
first_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
1778
|
+
egress=False,
|
|
1779
|
+
protocol="protocol",
|
|
1780
|
+
rule_action="ruleAction",
|
|
1781
|
+
|
|
1782
|
+
# the properties below are optional
|
|
1783
|
+
cidr_block="cidrBlock",
|
|
1784
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
1785
|
+
code=123,
|
|
1786
|
+
type=123
|
|
1787
|
+
),
|
|
1788
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
1789
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
1790
|
+
from=123,
|
|
1791
|
+
to=123
|
|
1792
|
+
)
|
|
1793
|
+
)],
|
|
1794
|
+
last_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
1795
|
+
egress=False,
|
|
1796
|
+
protocol="protocol",
|
|
1797
|
+
rule_action="ruleAction",
|
|
1798
|
+
|
|
1799
|
+
# the properties below are optional
|
|
1800
|
+
cidr_block="cidrBlock",
|
|
1801
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
1802
|
+
code=123,
|
|
1803
|
+
type=123
|
|
1804
|
+
),
|
|
1805
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
1806
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
1807
|
+
from=123,
|
|
1808
|
+
to=123
|
|
1809
|
+
)
|
|
1810
|
+
)]
|
|
1811
|
+
)
|
|
1812
|
+
),
|
|
1151
1813
|
network_firewall_policy=fms.CfnPolicy.NetworkFirewallPolicyProperty(
|
|
1152
1814
|
firewall_deployment_model="firewallDeploymentModel"
|
|
1153
1815
|
),
|
|
@@ -1436,7 +2098,48 @@ class CfnPolicyProps:
|
|
|
1436
2098
|
# the properties below are optional
|
|
1437
2099
|
managed_service_data="managedServiceData",
|
|
1438
2100
|
policy_option=fms.CfnPolicy.PolicyOptionProperty(
|
|
1439
|
-
network_acl_common_policy=fms.CfnPolicy.NetworkAclCommonPolicyProperty(
|
|
2101
|
+
network_acl_common_policy=fms.CfnPolicy.NetworkAclCommonPolicyProperty(
|
|
2102
|
+
network_acl_entry_set=fms.CfnPolicy.NetworkAclEntrySetProperty(
|
|
2103
|
+
force_remediate_for_first_entries=False,
|
|
2104
|
+
force_remediate_for_last_entries=False,
|
|
2105
|
+
|
|
2106
|
+
# the properties below are optional
|
|
2107
|
+
first_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
2108
|
+
egress=False,
|
|
2109
|
+
protocol="protocol",
|
|
2110
|
+
rule_action="ruleAction",
|
|
2111
|
+
|
|
2112
|
+
# the properties below are optional
|
|
2113
|
+
cidr_block="cidrBlock",
|
|
2114
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
2115
|
+
code=123,
|
|
2116
|
+
type=123
|
|
2117
|
+
),
|
|
2118
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
2119
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
2120
|
+
from=123,
|
|
2121
|
+
to=123
|
|
2122
|
+
)
|
|
2123
|
+
)],
|
|
2124
|
+
last_entries=[fms.CfnPolicy.NetworkAclEntryProperty(
|
|
2125
|
+
egress=False,
|
|
2126
|
+
protocol="protocol",
|
|
2127
|
+
rule_action="ruleAction",
|
|
2128
|
+
|
|
2129
|
+
# the properties below are optional
|
|
2130
|
+
cidr_block="cidrBlock",
|
|
2131
|
+
icmp_type_code=fms.CfnPolicy.IcmpTypeCodeProperty(
|
|
2132
|
+
code=123,
|
|
2133
|
+
type=123
|
|
2134
|
+
),
|
|
2135
|
+
ipv6_cidr_block="ipv6CidrBlock",
|
|
2136
|
+
port_range=fms.CfnPolicy.PortRangeProperty(
|
|
2137
|
+
from=123,
|
|
2138
|
+
to=123
|
|
2139
|
+
)
|
|
2140
|
+
)]
|
|
2141
|
+
)
|
|
2142
|
+
),
|
|
1440
2143
|
network_firewall_policy=fms.CfnPolicy.NetworkFirewallPolicyProperty(
|
|
1441
2144
|
firewall_deployment_model="firewallDeploymentModel"
|
|
1442
2145
|
),
|
|
@@ -2324,6 +3027,44 @@ def _typecheckingstub__6bcb551e43b08ef4828de279b99e59a3954c4cdc19c8adfe6bf93e810
|
|
|
2324
3027
|
"""Type checking stubs"""
|
|
2325
3028
|
pass
|
|
2326
3029
|
|
|
3030
|
+
def _typecheckingstub__65b9cc6166ca508cd4c5ab4d066ea459564143dea548a99b579d93e51f574165(
|
|
3031
|
+
*,
|
|
3032
|
+
code: jsii.Number,
|
|
3033
|
+
type: jsii.Number,
|
|
3034
|
+
) -> None:
|
|
3035
|
+
"""Type checking stubs"""
|
|
3036
|
+
pass
|
|
3037
|
+
|
|
3038
|
+
def _typecheckingstub__6dfc57cc41dc1d1b1ebbc44d2e08c4db8913dbb8d25d9bff92c2c760de2fdc82(
|
|
3039
|
+
*,
|
|
3040
|
+
network_acl_entry_set: typing.Union[_IResolvable_da3f097b, typing.Union[CfnPolicy.NetworkAclEntrySetProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
3041
|
+
) -> None:
|
|
3042
|
+
"""Type checking stubs"""
|
|
3043
|
+
pass
|
|
3044
|
+
|
|
3045
|
+
def _typecheckingstub__7a315c8565b94dd4f1c73bc5bb6afd0ade3bc8461a7c74c1098d0d7f66076bf4(
|
|
3046
|
+
*,
|
|
3047
|
+
egress: typing.Union[builtins.bool, _IResolvable_da3f097b],
|
|
3048
|
+
protocol: builtins.str,
|
|
3049
|
+
rule_action: builtins.str,
|
|
3050
|
+
cidr_block: typing.Optional[builtins.str] = None,
|
|
3051
|
+
icmp_type_code: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPolicy.IcmpTypeCodeProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3052
|
+
ipv6_cidr_block: typing.Optional[builtins.str] = None,
|
|
3053
|
+
port_range: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPolicy.PortRangeProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3054
|
+
) -> None:
|
|
3055
|
+
"""Type checking stubs"""
|
|
3056
|
+
pass
|
|
3057
|
+
|
|
3058
|
+
def _typecheckingstub__b2907f7090b00fafcfa0eb4f641b098a7fa37436ba6c4ffff2dafc1595c81a6e(
|
|
3059
|
+
*,
|
|
3060
|
+
force_remediate_for_first_entries: typing.Union[builtins.bool, _IResolvable_da3f097b],
|
|
3061
|
+
force_remediate_for_last_entries: typing.Union[builtins.bool, _IResolvable_da3f097b],
|
|
3062
|
+
first_entries: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPolicy.NetworkAclEntryProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
3063
|
+
last_entries: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPolicy.NetworkAclEntryProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
3064
|
+
) -> None:
|
|
3065
|
+
"""Type checking stubs"""
|
|
3066
|
+
pass
|
|
3067
|
+
|
|
2327
3068
|
def _typecheckingstub__1dee79c6872a0421399375d5fc2757431881011031a81ccd6674040de21bac13(
|
|
2328
3069
|
*,
|
|
2329
3070
|
firewall_deployment_model: builtins.str,
|
|
@@ -2348,6 +3089,14 @@ def _typecheckingstub__4d5ee16e00771d59c6939cbdec3cdf3c57cdb9a09a7e914e3faf7baaa
|
|
|
2348
3089
|
"""Type checking stubs"""
|
|
2349
3090
|
pass
|
|
2350
3091
|
|
|
3092
|
+
def _typecheckingstub__fbc1cd0112a3be4230fd0e2a96f8a5e7799f9f8c3925aad80c6eef4a1172da43(
|
|
3093
|
+
*,
|
|
3094
|
+
from_: jsii.Number,
|
|
3095
|
+
to: jsii.Number,
|
|
3096
|
+
) -> None:
|
|
3097
|
+
"""Type checking stubs"""
|
|
3098
|
+
pass
|
|
3099
|
+
|
|
2351
3100
|
def _typecheckingstub__1533af324aea7be8b3e806a7d4a851c48bea2139cd3bb0ce1cc81ff86e976487(
|
|
2352
3101
|
*,
|
|
2353
3102
|
key: builtins.str,
|