Class CfnSecurityGroupIngress.Builder

java.lang.Object
software.amazon.awscdk.services.ec2.CfnSecurityGroupIngress.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnSecurityGroupIngress>
Enclosing class:
CfnSecurityGroupIngress

@Stability(Stable) public static final class CfnSecurityGroupIngress.Builder extends Object implements software.amazon.jsii.Builder<CfnSecurityGroupIngress>
A fluent builder for CfnSecurityGroupIngress.
  • Method Details

    • create

      @Stability(Stable) public static CfnSecurityGroupIngress.Builder create(Construct scope, String id)
      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      Returns:
      a new instance of CfnSecurityGroupIngress.Builder.
    • ipProtocol

      @Stability(Stable) public CfnSecurityGroupIngress.Builder ipProtocol(String ipProtocol)
      The IP protocol name ( tcp , udp , icmp , icmpv6 ) or number (see Protocol Numbers ).

      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.

      Parameters:
      ipProtocol - The IP protocol name ( tcp , udp , icmp , icmpv6 ) or number (see Protocol Numbers ). This parameter is required.
      Returns:
      this
    • cidrIp

      @Stability(Stable) public CfnSecurityGroupIngress.Builder cidrIp(String cidrIp)
      The IPv4 address range, in CIDR format.

      You must specify a source security group ( SourcePrefixListId or SourceSecurityGroupId ) 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 .

      Parameters:
      cidrIp - The IPv4 address range, in CIDR format. This parameter is required.
      Returns:
      this
    • cidrIpv6

      @Stability(Stable) public CfnSecurityGroupIngress.Builder cidrIpv6(String cidrIpv6)
      The IPv6 address range, in CIDR format.

      You must specify a source security group ( SourcePrefixListId or SourceSecurityGroupId ) 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 .

      Parameters:
      cidrIpv6 - The IPv6 address range, in CIDR format. This parameter is required.
      Returns:
      this
    • description

      @Stability(Stable) public CfnSecurityGroupIngress.Builder description(String description)
      Updates the description of an ingress (inbound) security group rule.

      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 ._-:/()#,@[]+=;{}!$*

      Parameters:
      description - Updates the description of an ingress (inbound) security group rule. This parameter is required.
      Returns:
      this
    • fromPort

      @Stability(Stable) public CfnSecurityGroupIngress.Builder fromPort(Number fromPort)
      The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number.

      A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.

      Use this for ICMP and any protocol that uses ports.

      Parameters:
      fromPort - The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. This parameter is required.
      Returns:
      this
    • groupId

      @Stability(Stable) public CfnSecurityGroupIngress.Builder groupId(String groupId)
      The ID of the security group.

      Parameters:
      groupId - The ID of the security group. This parameter is required.
      Returns:
      this
    • groupName

      @Stability(Stable) public CfnSecurityGroupIngress.Builder groupName(String groupName)
      The name of the security group.

      Constraints: Up to 255 characters in length. Cannot start with sg- .

      Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

      Parameters:
      groupName - The name of the security group. This parameter is required.
      Returns:
      this
    • sourcePrefixListId

      @Stability(Stable) public CfnSecurityGroupIngress.Builder sourcePrefixListId(String sourcePrefixListId)
      The ID of a prefix list.

      Parameters:
      sourcePrefixListId - The ID of a prefix list. This parameter is required.
      Returns:
      this
    • sourceSecurityGroupId

      @Stability(Stable) public CfnSecurityGroupIngress.Builder sourceSecurityGroupId(String sourceSecurityGroupId)
      The ID of the security group.

      You must specify either the security group ID or the security group name. For security groups in a nondefault VPC, you must specify the security group ID.

      Parameters:
      sourceSecurityGroupId - The ID of the security group. This parameter is required.
      Returns:
      this
    • sourceSecurityGroupName

      @Stability(Stable) public CfnSecurityGroupIngress.Builder sourceSecurityGroupName(String sourceSecurityGroupName)
      [Default VPC] The name of the source security group.

      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.

      Parameters:
      sourceSecurityGroupName - [Default VPC] The name of the source security group. This parameter is required.
      Returns:
      this
    • sourceSecurityGroupOwnerId

      @Stability(Stable) public CfnSecurityGroupIngress.Builder sourceSecurityGroupOwnerId(String sourceSecurityGroupOwnerId)
      [nondefault VPC] The AWS account ID for the source security group, if the source security group is in a different account.

      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 SourceSecurityGroupOwnerId ; otherwise, this property is optional.

      Parameters:
      sourceSecurityGroupOwnerId - [nondefault VPC] The AWS account ID for the source security group, if the source security group is in a different account. This parameter is required.
      Returns:
      this
    • toPort

      @Stability(Stable) public CfnSecurityGroupIngress.Builder toPort(Number toPort)
      The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.

      A value of -1 indicates all ICMP/ICMPv6 codes for the specified ICMP type. If you specify all ICMP/ICMPv6 types, you must specify all codes.

      Use this for ICMP and any protocol that uses ports.

      Parameters:
      toPort - The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. This parameter is required.
      Returns:
      this
    • build

      @Stability(Stable) public CfnSecurityGroupIngress build()
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnSecurityGroupIngress>
      Returns:
      a newly built instance of CfnSecurityGroupIngress.