Class: Aws::EC2::Types::SecurityGroupRuleRequest
- Inherits:
 - 
      Struct
      
        
- Object
 - Struct
 - Aws::EC2::Types::SecurityGroupRuleRequest
 
 
- Includes:
 - Structure
 
- Defined in:
 - lib/aws-sdk-ec2/types.rb
 
Overview
Describes a security group rule.
You must specify exactly one of the following parameters, based on the rule type:
- 
CidrIpv4
 - 
CidrIpv6
 - 
PrefixListId
 - 
ReferencedGroupId
 
<note markdown=“1”> Amazon Web Services [canonicalizes] IPv4 and IPv6 CIDRs. For example, if you specify 100.68.0.18/18 for the CIDR block, Amazon Web Services canonicalizes the CIDR block to 100.68.0.0/18. Any subsequent DescribeSecurityGroups and DescribeSecurityGroupRules calls will return the canonicalized form of the CIDR block. Additionally, if you attempt to add another rule with the non-canonical form of the CIDR (such as 100.68.0.18/18) and there is already a rule for the canonicalized form of the CIDR block (such as 100.68.0.0/18), the API throws an duplicate rule error.
</note>
When you modify a rule, you cannot change the rule type. For example, if the rule uses an IPv4 address range, you must use ‘CidrIpv4` to specify a new IPv4 address range.
Constant Summary collapse
- SENSITIVE =
 []
Instance Attribute Summary collapse
- 
  
    
      #cidr_ipv_4  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The IPv4 CIDR range.
 - 
  
    
      #cidr_ipv_6  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The IPv6 CIDR range.
 - 
  
    
      #description  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The description of the security group rule.
 - 
  
    
      #from_port  ⇒ Integer 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
If the protocol is TCP or UDP, this is the start of the port range.
 - 
  
    
      #ip_protocol  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The IP protocol name (‘tcp`, `udp`, `icmp`, `icmpv6`) or number (see [Protocol Numbers]).
 - 
  
    
      #prefix_list_id  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The ID of the prefix list.
 - 
  
    
      #referenced_group_id  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The ID of the security group that is referenced in the security group rule.
 - 
  
    
      #to_port  ⇒ Integer 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
If the protocol is TCP or UDP, this is the end of the port range.
 
Instance Attribute Details
#cidr_ipv_4 ⇒ String
The IPv4 CIDR range. To specify a single IPv4 address, use the /32 prefix length.
      65735 65736 65737 65738 65739 65740 65741 65742 65743 65744 65745 65746  | 
    
      # File 'lib/aws-sdk-ec2/types.rb', line 65735 class SecurityGroupRuleRequest < Struct.new( :ip_protocol, :from_port, :to_port, :cidr_ipv_4, :cidr_ipv_6, :prefix_list_id, :referenced_group_id, :description) SENSITIVE = [] include Aws::Structure end  | 
  
#cidr_ipv_6 ⇒ String
The IPv6 CIDR range. To specify a single IPv6 address, use the /128 prefix length.
      65735 65736 65737 65738 65739 65740 65741 65742 65743 65744 65745 65746  | 
    
      # File 'lib/aws-sdk-ec2/types.rb', line 65735 class SecurityGroupRuleRequest < Struct.new( :ip_protocol, :from_port, :to_port, :cidr_ipv_4, :cidr_ipv_6, :prefix_list_id, :referenced_group_id, :description) SENSITIVE = [] include Aws::Structure end  | 
  
#description ⇒ String
The description of the security group rule.
      65735 65736 65737 65738 65739 65740 65741 65742 65743 65744 65745 65746  | 
    
      # File 'lib/aws-sdk-ec2/types.rb', line 65735 class SecurityGroupRuleRequest < Struct.new( :ip_protocol, :from_port, :to_port, :cidr_ipv_4, :cidr_ipv_6, :prefix_list_id, :referenced_group_id, :description) SENSITIVE = [] include Aws::Structure end  | 
  
#from_port ⇒ Integer
If the protocol is TCP or UDP, this is the start of the port range. If the protocol is ICMP or ICMPv6, this is the ICMP type or -1 (all ICMP types).
      65735 65736 65737 65738 65739 65740 65741 65742 65743 65744 65745 65746  | 
    
      # File 'lib/aws-sdk-ec2/types.rb', line 65735 class SecurityGroupRuleRequest < Struct.new( :ip_protocol, :from_port, :to_port, :cidr_ipv_4, :cidr_ipv_6, :prefix_list_id, :referenced_group_id, :description) SENSITIVE = [] include Aws::Structure end  | 
  
#ip_protocol ⇒ String
The IP protocol name (‘tcp`, `udp`, `icmp`, `icmpv6`) or number (see [Protocol Numbers]).
Use ‘-1` to specify all protocols.
[1]: www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml
      65735 65736 65737 65738 65739 65740 65741 65742 65743 65744 65745 65746  | 
    
      # File 'lib/aws-sdk-ec2/types.rb', line 65735 class SecurityGroupRuleRequest < Struct.new( :ip_protocol, :from_port, :to_port, :cidr_ipv_4, :cidr_ipv_6, :prefix_list_id, :referenced_group_id, :description) SENSITIVE = [] include Aws::Structure end  | 
  
#prefix_list_id ⇒ String
The ID of the prefix list.
      65735 65736 65737 65738 65739 65740 65741 65742 65743 65744 65745 65746  | 
    
      # File 'lib/aws-sdk-ec2/types.rb', line 65735 class SecurityGroupRuleRequest < Struct.new( :ip_protocol, :from_port, :to_port, :cidr_ipv_4, :cidr_ipv_6, :prefix_list_id, :referenced_group_id, :description) SENSITIVE = [] include Aws::Structure end  | 
  
#referenced_group_id ⇒ String
The ID of the security group that is referenced in the security group rule.
      65735 65736 65737 65738 65739 65740 65741 65742 65743 65744 65745 65746  | 
    
      # File 'lib/aws-sdk-ec2/types.rb', line 65735 class SecurityGroupRuleRequest < Struct.new( :ip_protocol, :from_port, :to_port, :cidr_ipv_4, :cidr_ipv_6, :prefix_list_id, :referenced_group_id, :description) SENSITIVE = [] include Aws::Structure end  | 
  
#to_port ⇒ Integer
If the protocol is TCP or UDP, this is the end of the port range. 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).
      65735 65736 65737 65738 65739 65740 65741 65742 65743 65744 65745 65746  | 
    
      # File 'lib/aws-sdk-ec2/types.rb', line 65735 class SecurityGroupRuleRequest < Struct.new( :ip_protocol, :from_port, :to_port, :cidr_ipv_4, :cidr_ipv_6, :prefix_list_id, :referenced_group_id, :description) SENSITIVE = [] include Aws::Structure end  |