create_network_acl_entry
¶
create_network_acl_entry(
*,
config_overrides: Optional[EC2ClientConfig] = None,
dry_run: Optional[Boolean] = None,
network_acl_id: Optional[NetworkAclId] = None,
rule_number: Optional[Integer] = None,
protocol: Optional[String] = None,
rule_action: Optional[RuleAction] = None,
egress: Optional[Boolean] = None,
cidr_block: Optional[String] = None,
ipv6_cidr_block: Optional[String] = None,
icmp_type_code: Optional[IcmpTypeCode] = None,
port_range: Optional[PortRange] = None,
) -> None
Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of ingress rules and a separate set of egress rules.
We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules.
After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one.
For more information about network ACLs, see Network ACLs in the Amazon VPC User Guide.
Parameters:
-
dry_run(Optional[Boolean], default:None) –Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is
DryRunOperation. Otherwise, it isUnauthorizedOperation. -
network_acl_id(Optional[NetworkAclId], default:None) –The ID of the network ACL.
-
rule_number(Optional[Integer], default:None) –The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.
Constraints: Positive integer from 1 to 32766. The range 32767 to 65535 is reserved for internal use.
-
protocol(Optional[String], default:None) –The protocol number. A value of "-1" means all protocols. If you specify "-1" or a protocol number other than "6" (TCP), "17" (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless of any ports or ICMP types or codes that you specify. If you specify protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP types and codes allowed, regardless of any that you specify. If you specify protocol "58" (ICMPv6) and specify an IPv6 CIDR block, you must specify an ICMP type and code.
-
rule_action(Optional[RuleAction], default:None) –Indicates whether to allow or deny the traffic that matches the rule.
-
egress(Optional[Boolean], default:None) –Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).
-
cidr_block(Optional[String], default:None) –The IPv4 network range to allow or deny, in CIDR notation (for example
172.16.0.0/24). We modify the specified CIDR block to its canonical form; for example, if you specify100.68.0.18/18, we modify it to100.68.0.0/18. -
ipv6_cidr_block(Optional[String], default:None) –The IPv6 network range to allow or deny, in CIDR notation (for example
2001:db8:1234:1a00::/64). -
icmp_type_code(Optional[IcmpTypeCode], default:None) –ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.
-
port_range(Optional[PortRange], default:None) –TCP or UDP protocols: The range of ports the rule applies to. Required if specifying protocol 6 (TCP) or 17 (UDP).
Raises:
-
UnknownServiceError–The service returned an error code this client does not model.
Examples:
To create a network ACL entry This example creates an entry for the specified network ACL. The rule allows ingress traffic from anywhere (0.0.0.0/0) on UDP port 53 (DNS) into any associated subnet.
>>> client.create_network_acl_entry(network_acl_id='acl-5fb85d36', rule_number=100, protocol='17', rule_action='allow', egress=False, cidr_block='0.0.0.0/0', port_range={'From': 53, 'To': 53})
Source code in docs_src/capo_ec2/_services/ec2.py
10870 10871 10872 10873 10874 10875 10876 10877 10878 10879 10880 10881 10882 10883 10884 10885 10886 10887 10888 10889 10890 10891 10892 10893 10894 10895 10896 10897 10898 10899 10900 10901 10902 10903 10904 10905 10906 10907 10908 10909 10910 10911 10912 10913 10914 10915 10916 10917 10918 10919 10920 10921 10922 10923 10924 10925 10926 10927 10928 10929 10930 10931 10932 10933 10934 10935 10936 10937 10938 10939 10940 10941 10942 10943 10944 10945 10946 10947 10948 10949 10950 10951 10952 | |