@Generated(value="jsii-pacmak/1.67.0 (build 2c027f5)", date="2022-09-19T20:26:38.294Z") @Stability(value=Stable) public class CfnSecurityGroupEgress extends CfnResource implements IInspectable
[EC2-VPC only] Adds the specified egress rules to a security group for use with a VPC.
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 .
Example:
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.ec2.*;
CfnSecurityGroupEgress cfnSecurityGroupEgress = CfnSecurityGroupEgress.Builder.create(this, "MyCfnSecurityGroupEgress")
.groupId("groupId")
.ipProtocol("ipProtocol")
// the properties below are optional
.cidrIp("cidrIp")
.cidrIpv6("cidrIpv6")
.description("description")
.destinationPrefixListId("destinationPrefixListId")
.destinationSecurityGroupId("destinationSecurityGroupId")
.fromPort(123)
.toPort(123)
.build();
| Modifier and Type | Class and Description |
|---|---|
static class |
CfnSecurityGroupEgress.Builder
A fluent builder for
CfnSecurityGroupEgress. |
software.amazon.jsii.JsiiObject.InitializationModeIInspectable.Jsii$Default, IInspectable.Jsii$Proxy| Modifier and Type | Field and Description |
|---|---|
static String |
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
|
| Modifier | Constructor and Description |
|---|---|
|
CfnSecurityGroupEgress(software.constructs.Construct scope,
String id,
CfnSecurityGroupEgressProps props)
Create a new `AWS::EC2::SecurityGroupEgress`.
|
protected |
CfnSecurityGroupEgress(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) |
protected |
CfnSecurityGroupEgress(software.amazon.jsii.JsiiObjectRef objRef) |
| Modifier and Type | Method and Description |
|---|---|
protected Map<String,Object> |
getCfnProperties() |
String |
getCidrIp()
The IPv4 address range, in CIDR format.
|
String |
getCidrIpv6()
The IPv6 address range, in CIDR format.
|
String |
getDescription()
The description of an egress (outbound) security group rule.
|
String |
getDestinationPrefixListId()
[EC2-VPC only] The prefix list IDs for an AWS service.
|
String |
getDestinationSecurityGroupId()
The ID of the security group.
|
Number |
getFromPort()
The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number.
|
String |
getGroupId()
The ID of the security group.
|
String |
getIpProtocol()
The IP protocol name ( `tcp` , `udp` , `icmp` , `icmpv6` ) or number (see [Protocol Numbers](https://docs.aws.amazon.com/http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml) ).
|
Number |
getToPort()
The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
|
void |
inspect(TreeInspector inspector)
Examines the CloudFormation resource and discloses attributes.
|
protected Map<String,Object> |
renderProperties(Map<String,Object> props) |
void |
setCidrIp(String value)
The IPv4 address range, in CIDR format.
|
void |
setCidrIpv6(String value)
The IPv6 address range, in CIDR format.
|
void |
setDescription(String value)
The description of an egress (outbound) security group rule.
|
void |
setDestinationPrefixListId(String value)
[EC2-VPC only] The prefix list IDs for an AWS service.
|
void |
setDestinationSecurityGroupId(String value)
The ID of the security group.
|
void |
setFromPort(Number value)
The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number.
|
void |
setGroupId(String value)
The ID of the security group.
|
void |
setIpProtocol(String value)
The IP protocol name ( `tcp` , `udp` , `icmp` , `icmpv6` ) or number (see [Protocol Numbers](https://docs.aws.amazon.com/http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml) ).
|
void |
setToPort(Number value)
The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
|
addDeletionOverride, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, getUpdatedProperties, isCfnResource, shouldSynthesize, toString, validatePropertiesgetRefgetCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalIdjsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet@Stability(value=Stable) public static final String CFN_RESOURCE_TYPE_NAME
protected CfnSecurityGroupEgress(software.amazon.jsii.JsiiObjectRef objRef)
protected CfnSecurityGroupEgress(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
@Stability(value=Stable)
public CfnSecurityGroupEgress(@NotNull
software.constructs.Construct scope,
@NotNull
String id,
@NotNull
CfnSecurityGroupEgressProps props)
scope - - scope in which this resource is defined. This parameter is required.id - - scoped id of the resource. This parameter is required.props - - resource properties. This parameter is required.@Stability(value=Stable)
public void inspect(@NotNull
TreeInspector inspector)
inspect in interface IInspectableinspector - - tree inspector to collect and process attributes. This parameter is required.@Stability(value=Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
renderProperties in class CfnResourceprops - This parameter is required.@Stability(value=Stable) @NotNull protected Map<String,Object> getCfnProperties()
getCfnProperties in class CfnResource@Stability(value=Stable) @NotNull public String getGroupId()
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.
@Stability(value=Stable)
public void setGroupId(@NotNull
String value)
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.
@Stability(value=Stable) @NotNull public String getIpProtocol()
[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.
@Stability(value=Stable)
public void setIpProtocol(@NotNull
String value)
[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.
@Stability(value=Stable) @Nullable public String getCidrIp()
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 .
@Stability(value=Stable)
public void setCidrIp(@Nullable
String value)
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 .
@Stability(value=Stable) @Nullable public String getCidrIpv6()
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 .
@Stability(value=Stable)
public void setCidrIpv6(@Nullable
String value)
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 .
@Stability(value=Stable) @Nullable public String getDescription()
Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
@Stability(value=Stable)
public void setDescription(@Nullable
String value)
Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
@Stability(value=Stable) @Nullable public String getDestinationPrefixListId()
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 ).
@Stability(value=Stable)
public void setDestinationPrefixListId(@Nullable
String value)
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 ).
@Stability(value=Stable) @Nullable public String getDestinationSecurityGroupId()
You must specify a destination security group ( DestinationPrefixListId or DestinationSecurityGroupId ) or a CIDR range ( CidrIp or CidrIpv6 ).
@Stability(value=Stable)
public void setDestinationSecurityGroupId(@Nullable
String value)
You must specify a destination security group ( DestinationPrefixListId or DestinationSecurityGroupId ) or a CIDR range ( CidrIp or CidrIpv6 ).
@Stability(value=Stable) @Nullable public Number getFromPort()
A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.
@Stability(value=Stable)
public void setFromPort(@Nullable
Number value)
A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.
@Stability(value=Stable) @Nullable public Number getToPort()
A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
@Stability(value=Stable)
public void setToPort(@Nullable
Number value)
A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
Copyright © 2022. All rights reserved.