AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Container for the parameters to the AuthorizeSecurityGroupIngress operation. Adds one or more ingress rules to a security group.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

[EC2-Classic] This action gives one or more IPv4 CIDR address ranges permission to access a security group in your account, or gives one or more security groups (called the source groups) permission to access a security group for your account. A source group can be for your own AWS account, or another. You can have up to 100 rules per group.

[EC2-VPC] This action gives one or more IPv4 or IPv6 CIDR address ranges permission to access a security group in your VPC, or gives one or more other security groups (called the source groups) permission to access a security group for your VPC. The security groups must all be for the same VPC or a peer VPC in a VPC peering connection. For more information about VPC security group limits, see Amazon VPC Limits.

You can optionally specify a description for the security group rule.

Inheritance Hierarchy

System.Object
  Amazon.Runtime.AmazonWebServiceRequest
    Amazon.EC2.AmazonEC2Request
      Amazon.EC2.Model.AuthorizeSecurityGroupIngressRequest

Namespace: Amazon.EC2.Model
Assembly: AWSSDK.EC2.dll
Version: 3.x.y.z

Syntax

C#
public class AuthorizeSecurityGroupIngressRequest : AmazonEC2Request
         IAmazonWebServiceRequest

The AuthorizeSecurityGroupIngressRequest type exposes the following members

Constructors

NameDescription
Public Method AuthorizeSecurityGroupIngressRequest()

Empty constructor used to set properties independently even when a simple constructor is available

Public Method AuthorizeSecurityGroupIngressRequest(string, List<IpPermission>)

Instantiates AuthorizeSecurityGroupIngressRequest with the parameterized properties

Properties

NameTypeDescription
Public Property GroupId System.String

Gets and sets the property GroupId.

The ID of the security group. 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.

Public Property GroupName System.String

Gets and sets the property GroupName.

[EC2-Classic, default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request.

Public Property IpPermissions System.Collections.Generic.List<Amazon.EC2.Model.IpPermission>

Gets and sets the property IpPermissions.

One or more sets of IP permissions. Can be used to specify multiple rules in a single command.

Examples

This example enables inbound traffic on TCP port 22 (SSH). The rule includes a description to help you identify it later.

To add a rule that allows inbound SSH traffic from an IPv4 address range


var response = client.AuthorizeSecurityGroupIngress(new AuthorizeSecurityGroupIngressRequest 
{
    GroupId = "sg-903004f8",
    IpPermissions = new List {
        new IpPermission {
            FromPort = 22,
            IpProtocol = "tcp",
            ToPort = 22
        }
    }
});


            

This example enables inbound traffic on TCP port 80 from the specified security group. The group must be in the same VPC or a peer VPC. Incoming traffic is allowed based on the private IP addresses of instances that are associated with the specified security group.

To add a rule that allows inbound HTTP traffic from another security group


var response = client.AuthorizeSecurityGroupIngress(new AuthorizeSecurityGroupIngressRequest 
{
    GroupId = "sg-111aaa22",
    IpPermissions = new List {
        new IpPermission {
            FromPort = 80,
            IpProtocol = "tcp",
            ToPort = 80,
            UserIdGroupPairs = new List {
                new UserIdGroupPair {
                    Description = "HTTP access from other instances",
                    GroupId = "sg-1a2b3c4d"
                }
            }
        }
    }
});


            

This example adds an inbound rule that allows RDP traffic from the specified IPv6 address range. The rule includes a description to help you identify it later.

To add a rule that allows inbound RDP traffic from an IPv6 address range


var response = client.AuthorizeSecurityGroupIngress(new AuthorizeSecurityGroupIngressRequest 
{
    GroupId = "sg-123abc12 ",
    IpPermissions = new List {
        new IpPermission {
            FromPort = 3389,
            IpProtocol = "tcp",
            Ipv6Ranges = new List {
                new Ipv6Range {
                    CidrIpv6 = "2001:db8:1234:1a00::/64",
                    Description = "RDP access from the NY office"
                }
            },
            ToPort = 3389
        }
    }
});


            

Version Information

.NET Standard:
Supported in: 1.3

.NET Framework:
Supported in: 4.5, 4.0, 3.5

Portable Class Library:
Supported in: Windows Store Apps
Supported in: Windows Phone 8.1
Supported in: Xamarin Android
Supported in: Xamarin iOS (Unified)
Supported in: Xamarin.Forms