#[non_exhaustive]pub struct AwsEc2SecurityGroupIpPermission {
pub ip_protocol: Option<String>,
pub from_port: Option<i32>,
pub to_port: Option<i32>,
pub user_id_group_pairs: Option<Vec<AwsEc2SecurityGroupUserIdGroupPair>>,
pub ip_ranges: Option<Vec<AwsEc2SecurityGroupIpRange>>,
pub ipv6_ranges: Option<Vec<AwsEc2SecurityGroupIpv6Range>>,
pub prefix_list_ids: Option<Vec<AwsEc2SecurityGroupPrefixListId>>,
}
Expand description
An IP permission for an EC2 security group.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.ip_protocol: Option<String>
The IP protocol name (tcp
, udp
, icmp
, icmpv6
) or number.
[VPC only] Use -1
to specify all protocols.
When authorizing security group rules, specifying -1
or a protocol number other than tcp
, udp
, icmp
, or icmpv6
allows traffic on all ports, regardless of any port range you specify.
For tcp
, udp
, and icmp
, you must specify a port range.
For icmpv6
, the port range is optional. If you omit the port range, traffic for all types and codes is allowed.
from_port: Option<i32>
The start of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number.
A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.
to_port: Option<i32>
The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
A value of -1
indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
user_id_group_pairs: Option<Vec<AwsEc2SecurityGroupUserIdGroupPair>>
The security group and Amazon Web Services account ID pairs.
ip_ranges: Option<Vec<AwsEc2SecurityGroupIpRange>>
The IPv4 ranges.
ipv6_ranges: Option<Vec<AwsEc2SecurityGroupIpv6Range>>
The IPv6 ranges.
prefix_list_ids: Option<Vec<AwsEc2SecurityGroupPrefixListId>>
[VPC only] The prefix list IDs for an Amazon Web Services service. With outbound rules, this is the Amazon Web Services service to access through a VPC endpoint from instances associated with the security group.
Implementations§
source§impl AwsEc2SecurityGroupIpPermission
impl AwsEc2SecurityGroupIpPermission
sourcepub fn ip_protocol(&self) -> Option<&str>
pub fn ip_protocol(&self) -> Option<&str>
The IP protocol name (tcp
, udp
, icmp
, icmpv6
) or number.
[VPC only] Use -1
to specify all protocols.
When authorizing security group rules, specifying -1
or a protocol number other than tcp
, udp
, icmp
, or icmpv6
allows traffic on all ports, regardless of any port range you specify.
For tcp
, udp
, and icmp
, you must specify a port range.
For icmpv6
, the port range is optional. If you omit the port range, traffic for all types and codes is allowed.
sourcepub fn from_port(&self) -> Option<i32>
pub fn from_port(&self) -> Option<i32>
The start of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number.
A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.
sourcepub fn to_port(&self) -> Option<i32>
pub fn to_port(&self) -> Option<i32>
The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
A value of -1
indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
sourcepub fn user_id_group_pairs(&self) -> &[AwsEc2SecurityGroupUserIdGroupPair]
pub fn user_id_group_pairs(&self) -> &[AwsEc2SecurityGroupUserIdGroupPair]
The security group and Amazon Web Services account ID pairs.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .user_id_group_pairs.is_none()
.
sourcepub fn ip_ranges(&self) -> &[AwsEc2SecurityGroupIpRange]
pub fn ip_ranges(&self) -> &[AwsEc2SecurityGroupIpRange]
The IPv4 ranges.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .ip_ranges.is_none()
.
sourcepub fn ipv6_ranges(&self) -> &[AwsEc2SecurityGroupIpv6Range]
pub fn ipv6_ranges(&self) -> &[AwsEc2SecurityGroupIpv6Range]
The IPv6 ranges.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .ipv6_ranges.is_none()
.
sourcepub fn prefix_list_ids(&self) -> &[AwsEc2SecurityGroupPrefixListId]
pub fn prefix_list_ids(&self) -> &[AwsEc2SecurityGroupPrefixListId]
[VPC only] The prefix list IDs for an Amazon Web Services service. With outbound rules, this is the Amazon Web Services service to access through a VPC endpoint from instances associated with the security group.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .prefix_list_ids.is_none()
.
source§impl AwsEc2SecurityGroupIpPermission
impl AwsEc2SecurityGroupIpPermission
sourcepub fn builder() -> AwsEc2SecurityGroupIpPermissionBuilder
pub fn builder() -> AwsEc2SecurityGroupIpPermissionBuilder
Creates a new builder-style object to manufacture AwsEc2SecurityGroupIpPermission
.
Trait Implementations§
source§impl Clone for AwsEc2SecurityGroupIpPermission
impl Clone for AwsEc2SecurityGroupIpPermission
source§fn clone(&self) -> AwsEc2SecurityGroupIpPermission
fn clone(&self) -> AwsEc2SecurityGroupIpPermission
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl PartialEq for AwsEc2SecurityGroupIpPermission
impl PartialEq for AwsEc2SecurityGroupIpPermission
source§fn eq(&self, other: &AwsEc2SecurityGroupIpPermission) -> bool
fn eq(&self, other: &AwsEc2SecurityGroupIpPermission) -> bool
self
and other
values to be equal, and is used
by ==
.