Class CfnSecurityGroup.IngressProperty
Adds an inbound (ingress) rule to a security group.
Inheritance
Implements
Namespace: Amazon.CDK.AWS.EC2
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class IngressProperty : Object, CfnSecurityGroup.IIngressProperty
Syntax (vb)
Public Class IngressProperty
Inherits Object
Implements CfnSecurityGroup.IIngressProperty
Remarks
An inbound rule permits instances to receive traffic from the specified IPv4 or IPv6 address range, the IP address ranges that are specified by a prefix list, or the instances that are associated with a source security group. For more information, see Security group rules .
You must specify exactly one of the following sources: an IPv4 address range, an IPv6 address range, a prefix list, or a security group.
You must specify a protocol for each rule (for example, TCP). If the protocol is TCP or UDP, you must also specify a port or port range. If the protocol is ICMP or ICMPv6, you must also specify the ICMP/ICMPv6 type and code.
Rule changes are propagated to instances associated with the security group as quickly as possible. However, a small delay might occur.
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 ingressProperty = new IngressProperty {
IpProtocol = "ipProtocol",
// the properties below are optional
CidrIp = "cidrIp",
CidrIpv6 = "cidrIpv6",
Description = "description",
FromPort = 123,
SourcePrefixListId = "sourcePrefixListId",
SourceSecurityGroupId = "sourceSecurityGroupId",
SourceSecurityGroupName = "sourceSecurityGroupName",
SourceSecurityGroupOwnerId = "sourceSecurityGroupOwnerId",
ToPort = 123
};
Synopsis
Constructors
IngressProperty() |
Properties
CidrIp | The IPv4 address range, in CIDR format. |
CidrIpv6 | The IPv6 address range, in CIDR format. |
Description | Updates the description of an ingress (inbound) security group rule. |
FromPort | If the protocol is TCP or UDP, this is the start of the port range. |
IpProtocol | The IP protocol name ( |
SourcePrefixListId | The ID of a prefix list. |
SourceSecurityGroupId | The ID of the security group. |
SourceSecurityGroupName | [Default VPC] The name of the source security group. |
SourceSecurityGroupOwnerId | [nondefault VPC] The AWS account ID for the source security group, if the source security group is in a different account. |
ToPort | If the protocol is TCP or UDP, this is the end of the port range. |
Constructors
IngressProperty()
public IngressProperty()
Properties
CidrIp
The IPv4 address range, in CIDR format.
public string CidrIp { get; set; }
Property Value
System.String
Remarks
You must specify exactly one of the following: CidrIp
, CidrIpv6
, SourcePrefixListId
, or SourceSecurityGroupId
.
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 string CidrIpv6 { get; set; }
Property Value
System.String
Remarks
You must specify exactly one of the following: CidrIp
, CidrIpv6
, SourcePrefixListId
, or SourceSecurityGroupId
.
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
Updates the description of an ingress (inbound) security group rule.
public string Description { get; set; }
Property Value
System.String
Remarks
You can replace an existing description, or add a description to a rule that did not have one previously.
Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
FromPort
If the protocol is TCP or UDP, this is the start of the port range.
public Nullable<double> FromPort { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
If the protocol is ICMP or ICMPv6, this is the ICMP type or -1 (all ICMP types).
IpProtocol
The IP protocol name ( tcp
, udp
, icmp
, icmpv6
) or number (see Protocol Numbers ).
public 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.
SourcePrefixListId
The ID of a prefix list.
public string SourcePrefixListId { get; set; }
Property Value
System.String
Remarks
SourceSecurityGroupId
The ID of the security group.
public string SourceSecurityGroupId { get; set; }
Property Value
System.String
Remarks
SourceSecurityGroupName
[Default VPC] The name of the source security group.
public string SourceSecurityGroupName { get; set; }
Property Value
System.String
Remarks
You must specify either the security group ID or the security group name. You can't specify the group name in combination with an IP address range. Creates rules that grant full ICMP, UDP, and TCP access.
For security groups in a nondefault VPC, you must specify the group ID.
SourceSecurityGroupOwnerId
[nondefault VPC] The AWS account ID for the source security group, if the source security group is in a different account.
public string SourceSecurityGroupOwnerId { get; set; }
Property Value
System.String
Remarks
You can't specify this property with an IP address range. Creates rules that grant full ICMP, UDP, and TCP access.
If you specify SourceSecurityGroupName
or SourceSecurityGroupId
and that security group is owned by a different account than the account creating the stack, you must specify the SourceSecurityGroupOwnerId
; otherwise, this property is optional.
ToPort
If the protocol is TCP or UDP, this is the end of the port range.
public Nullable<double> ToPort { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
If the protocol is ICMP or ICMPv6, this is the ICMP code or -1 (all ICMP codes). If the start port is -1 (all ICMP types), then the end port must be -1 (all ICMP codes).