Class: AWSCDK::EC2::IngressRuleConfig

Inherits:
RuleConfig
  • Object
show all
Defined in:
ec2/ingress_rule_config.rb

Overview

Configuration for an ingress security group rule.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(cidr_ip: nil, cidr_ipv6: nil, source_prefix_list_id: nil, source_security_group_id: nil, source_security_group_owner_id: nil) ⇒ IngressRuleConfig

Returns a new instance of IngressRuleConfig.

Parameters:

  • cidr_ip (String, nil) (defaults to: nil)

    The IPv4 address range, in CIDR format.

  • cidr_ipv6 (String, nil) (defaults to: nil)

    The IPv6 address range, in CIDR format.

  • source_prefix_list_id (String, nil) (defaults to: nil)

    The ID of a source prefix list.

  • source_security_group_id (String, nil) (defaults to: nil)

    The ID of a source security group.

  • source_security_group_owner_id (String, nil) (defaults to: nil)

    The AWS account ID of the owner of a source security group.



14
15
16
17
18
19
20
21
22
23
24
25
# File 'ec2/ingress_rule_config.rb', line 14

def initialize(cidr_ip: nil, cidr_ipv6: nil, source_prefix_list_id: nil, source_security_group_id: nil, source_security_group_owner_id: nil)
  @cidr_ip = cidr_ip
  Jsii::Type.check_type(@cidr_ip, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "cidrIp") unless @cidr_ip.nil?
  @cidr_ipv6 = cidr_ipv6
  Jsii::Type.check_type(@cidr_ipv6, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "cidrIpv6") unless @cidr_ipv6.nil?
  @source_prefix_list_id = source_prefix_list_id
  Jsii::Type.check_type(@source_prefix_list_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sourcePrefixListId") unless @source_prefix_list_id.nil?
  @source_security_group_id = source_security_group_id
  Jsii::Type.check_type(@source_security_group_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sourceSecurityGroupId") unless @source_security_group_id.nil?
  @source_security_group_owner_id = source_security_group_owner_id
  Jsii::Type.check_type(@source_security_group_owner_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sourceSecurityGroupOwnerId") unless @source_security_group_owner_id.nil?
end

Instance Attribute Details

#cidr_ipString? (readonly)

Note:

Default: - No IPv4 CIDR

The IPv4 address range, in CIDR format.

Returns:

  • (String, nil)


31
32
33
# File 'ec2/ingress_rule_config.rb', line 31

def cidr_ip
  @cidr_ip
end

#cidr_ipv6String? (readonly)

Note:

Default: - No IPv6 CIDR

The IPv6 address range, in CIDR format.

Returns:

  • (String, nil)


36
37
38
# File 'ec2/ingress_rule_config.rb', line 36

def cidr_ipv6
  @cidr_ipv6
end

#source_prefix_list_idString? (readonly)

Note:

Default: - No source prefix list

The ID of a source prefix list.

Returns:

  • (String, nil)


41
42
43
# File 'ec2/ingress_rule_config.rb', line 41

def source_prefix_list_id
  @source_prefix_list_id
end

#source_security_group_idString? (readonly)

Note:

Default: - No source security group

The ID of a source security group.

Returns:

  • (String, nil)


46
47
48
# File 'ec2/ingress_rule_config.rb', line 46

def source_security_group_id
  @source_security_group_id
end

#source_security_group_owner_idString? (readonly)

Note:

Default: - No source security group owner ID

The AWS account ID of the owner of a source security group.

Returns:

  • (String, nil)


51
52
53
# File 'ec2/ingress_rule_config.rb', line 51

def source_security_group_owner_id
  @source_security_group_owner_id
end

Class Method Details

.jsii_propertiesObject



53
54
55
56
57
58
59
60
61
# File 'ec2/ingress_rule_config.rb', line 53

def self.jsii_properties
  {
    :cidr_ip => "cidrIp",
    :cidr_ipv6 => "cidrIpv6",
    :source_prefix_list_id => "sourcePrefixListId",
    :source_security_group_id => "sourceSecurityGroupId",
    :source_security_group_owner_id => "sourceSecurityGroupOwnerId",
  }
end

Instance Method Details

#to_jsiiObject



63
64
65
66
67
68
69
70
71
72
73
74
# File 'ec2/ingress_rule_config.rb', line 63

def to_jsii
  result = {}
  result.merge!(super)
  result.merge!({
    "cidrIp" => @cidr_ip,
    "cidrIpv6" => @cidr_ipv6,
    "sourcePrefixListId" => @source_prefix_list_id,
    "sourceSecurityGroupId" => @source_security_group_id,
    "sourceSecurityGroupOwnerId" => @source_security_group_owner_id,
  })
  result.compact
end