Class CfnSecurityGroupEgress
A CloudFormation AWS::EC2::SecurityGroupEgress
.
Inherited Members
Namespace: Amazon.CDK.AWS.EC2
Assembly: Amazon.CDK.AWS.EC2.dll
Syntax (csharp)
public class CfnSecurityGroupEgress : CfnResource, IConstruct, IDependable, IInspectable
Syntax (vb)
Public Class CfnSecurityGroupEgress
Inherits CfnResource
Implements IConstruct, IDependable, IInspectable
Remarks
Adds the specified egress rules to a security group.
An outbound rule permits instances to send traffic to the specified destination IPv4 or IPv6 CIDR address ranges, or to the specified destination security groups for the same VPC.
You specify a protocol for each rule (for example, TCP). For the TCP and UDP protocols, you must also specify the destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use -1 for the type or code to mean all types or all codes.
You must specify only one of the following properties: CidrIp
, CidrIpv6
, DestinationPrefixListId
, or DestinationSecurityGroupId
.
You must specify a destination security group ( DestinationPrefixListId
or DestinationSecurityGroupId
) or a CIDR range ( CidrIp
or CidrIpv6
). If you do not specify one of these parameters, the stack will launch successfully but the rule will not be added to the security group.
Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.
For more information about VPC security group limits, see Amazon VPC Limits .
Use AWS::EC2::SecurityGroupIngress
and AWS::EC2::SecurityGroupEgress
only when necessary, typically to allow security groups to reference each other in ingress and egress rules. Otherwise, use the embedded ingress and egress rules of the security group. For more information, see Amazon EC2 Security Groups .
CloudformationResource: AWS::EC2::SecurityGroupEgress
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.EC2;
var cfnSecurityGroupEgress = new CfnSecurityGroupEgress(this, "MyCfnSecurityGroupEgress", new CfnSecurityGroupEgressProps {
GroupId = "groupId",
IpProtocol = "ipProtocol",
// the properties below are optional
CidrIp = "cidrIp",
CidrIpv6 = "cidrIpv6",
Description = "description",
DestinationPrefixListId = "destinationPrefixListId",
DestinationSecurityGroupId = "destinationSecurityGroupId",
FromPort = 123,
ToPort = 123
});
Synopsis
Constructors
CfnSecurityGroupEgress(Construct, String, ICfnSecurityGroupEgressProps) | Create a new |
CfnSecurityGroupEgress(ByRefValue) | Used by jsii to construct an instance of this class from a Javascript-owned object reference |
CfnSecurityGroupEgress(DeputyBase.DeputyProps) | Used by jsii to construct an instance of this class from DeputyProps |
Properties
CFN_RESOURCE_TYPE_NAME | The CloudFormation resource type name for this resource class. |
CfnProperties | |
CidrIp | The IPv4 address range, in CIDR format. |
CidrIpv6 | The IPv6 address range, in CIDR format. |
Description | The description of an egress (outbound) security group rule. |
DestinationPrefixListId | The prefix list IDs for an AWS service. |
DestinationSecurityGroupId | The ID of the security group. |
FromPort | If the protocol is TCP or UDP, this is the start of the port range. |
GroupId | The ID of the security group. |
IpProtocol | The IP protocol name ( |
ToPort | If the protocol is TCP or UDP, this is the end of the port range. |
Methods
Inspect(TreeInspector) | Examines the CloudFormation resource and discloses attributes. |
RenderProperties(IDictionary<String, Object>) |
Constructors
CfnSecurityGroupEgress(Construct, String, ICfnSecurityGroupEgressProps)
Create a new AWS::EC2::SecurityGroupEgress
.
public CfnSecurityGroupEgress(Construct scope, string id, ICfnSecurityGroupEgressProps props)
Parameters
- scope Construct
- scope in which this resource is defined.
- id System.String
- scoped id of the resource.
- props ICfnSecurityGroupEgressProps
- resource properties.
CfnSecurityGroupEgress(ByRefValue)
Used by jsii to construct an instance of this class from a Javascript-owned object reference
protected CfnSecurityGroupEgress(ByRefValue reference)
Parameters
- reference Amazon.JSII.Runtime.Deputy.ByRefValue
The Javascript-owned object reference
CfnSecurityGroupEgress(DeputyBase.DeputyProps)
Used by jsii to construct an instance of this class from DeputyProps
protected CfnSecurityGroupEgress(DeputyBase.DeputyProps props)
Parameters
- props Amazon.JSII.Runtime.Deputy.DeputyBase.DeputyProps
The deputy props
Properties
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value
System.String
CfnProperties
protected override IDictionary<string, object> CfnProperties { get; }
Property Value
System.Collections.Generic.IDictionary<System.String, System.Object>
Overrides
CidrIp
The IPv4 address range, in CIDR format.
public virtual string CidrIp { get; set; }
Property Value
System.String
Remarks
You must specify a destination security group ( DestinationPrefixListId
or DestinationSecurityGroupId
) or a CIDR range ( CidrIp
or CidrIpv6
).
For examples of rules that you can add to security groups for specific access scenarios, see Security group rules for different use cases in the Amazon EC2 User Guide .
CidrIpv6
The IPv6 address range, in CIDR format.
public virtual string CidrIpv6 { get; set; }
Property Value
System.String
Remarks
You must specify a destination security group ( DestinationPrefixListId
or DestinationSecurityGroupId
) or a CIDR range ( CidrIp
or CidrIpv6
).
For examples of rules that you can add to security groups for specific access scenarios, see Security group rules for different use cases in the Amazon EC2 User Guide .
Description
The description of an egress (outbound) security group rule.
public virtual string Description { get; set; }
Property Value
System.String
Remarks
Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
DestinationPrefixListId
The prefix list IDs for an AWS service.
public virtual string DestinationPrefixListId { get; set; }
Property Value
System.String
Remarks
This is the AWS service that you want to access through a VPC endpoint from instances associated with the security group.
You must specify a destination security group ( DestinationPrefixListId
or DestinationSecurityGroupId
) or a CIDR range ( CidrIp
or CidrIpv6
).
DestinationSecurityGroupId
The ID of the security group.
public virtual string DestinationSecurityGroupId { get; set; }
Property Value
System.String
Remarks
You must specify a destination security group ( DestinationPrefixListId
or DestinationSecurityGroupId
) or a CIDR range ( CidrIp
or CidrIpv6
).
FromPort
If the protocol is TCP or UDP, this is the start of the port range.
public virtual Nullable<double> FromPort { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
If the protocol is ICMP or ICMPv6, this is the type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv6 codes.
GroupId
The ID of the security group.
public virtual string GroupId { get; set; }
Property Value
System.String
Remarks
You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.
IpProtocol
The IP protocol name ( tcp
, udp
, icmp
, icmpv6
) or number (see Protocol Numbers ).
public virtual string IpProtocol { get; set; }
Property Value
System.String
Remarks
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.
ToPort
If the protocol is TCP or UDP, this is the end of the port range.
public virtual Nullable<double> ToPort { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
If the protocol is ICMP or ICMPv6, this is the code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv6 codes.
Methods
Inspect(TreeInspector)
Examines the CloudFormation resource and discloses attributes.
public virtual void Inspect(TreeInspector inspector)
Parameters
- inspector TreeInspector
- tree inspector to collect and process attributes.
RenderProperties(IDictionary<String, Object>)
protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
- props System.Collections.Generic.IDictionary<System.String, System.Object>
Returns
System.Collections.Generic.IDictionary<System.String, System.Object>