Class: AWSCDK::EC2::CfnVPCEncryptionControlProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
ec2/cfn_vpc_encryption_control_props.rb

Overview

Properties for defining a CfnVPCEncryptionControl.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(egress_only_internet_gateway_exclusion_input: nil, elastic_file_system_exclusion_input: nil, internet_gateway_exclusion_input: nil, lambda_exclusion_input: nil, mode: nil, nat_gateway_exclusion_input: nil, tags: nil, virtual_private_gateway_exclusion_input: nil, vpc_id: nil, vpc_lattice_exclusion_input: nil, vpc_peering_exclusion_input: nil) ⇒ CfnVPCEncryptionControlProps

Returns a new instance of CfnVPCEncryptionControlProps.

Parameters:

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

    Specifies whether to exclude egress-only internet gateway traffic from encryption enforcement.

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

    Specifies whether to exclude Elastic File System traffic from encryption enforcement.

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

    Specifies whether to exclude internet gateway traffic from encryption enforcement.

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

    Specifies whether to exclude Lambda function traffic from encryption enforcement.

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

    The encryption mode for the VPC Encryption Control configuration.

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

    Specifies whether to exclude NAT gateway traffic from encryption enforcement.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    The tags assigned to the VPC Encryption Control configuration.

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

    Specifies whether to exclude virtual private gateway traffic from encryption enforcement.

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

    The ID of the VPC for which to create the encryption control configuration.

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

    Specifies whether to exclude VPC Lattice traffic from encryption enforcement.

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

    Specifies whether to exclude VPC peering connection traffic from encryption enforcement.



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 20

def initialize(egress_only_internet_gateway_exclusion_input: nil, elastic_file_system_exclusion_input: nil, internet_gateway_exclusion_input: nil, lambda_exclusion_input: nil, mode: nil, nat_gateway_exclusion_input: nil, tags: nil, virtual_private_gateway_exclusion_input: nil, vpc_id: nil, vpc_lattice_exclusion_input: nil, vpc_peering_exclusion_input: nil)
  @egress_only_internet_gateway_exclusion_input = egress_only_internet_gateway_exclusion_input
  Jsii::Type.check_type(@egress_only_internet_gateway_exclusion_input, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "egressOnlyInternetGatewayExclusionInput") unless @egress_only_internet_gateway_exclusion_input.nil?
  @elastic_file_system_exclusion_input = elastic_file_system_exclusion_input
  Jsii::Type.check_type(@elastic_file_system_exclusion_input, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "elasticFileSystemExclusionInput") unless @elastic_file_system_exclusion_input.nil?
  @internet_gateway_exclusion_input = internet_gateway_exclusion_input
  Jsii::Type.check_type(@internet_gateway_exclusion_input, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "internetGatewayExclusionInput") unless @internet_gateway_exclusion_input.nil?
  @lambda_exclusion_input = lambda_exclusion_input
  Jsii::Type.check_type(@lambda_exclusion_input, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "lambdaExclusionInput") unless @lambda_exclusion_input.nil?
  @mode = mode
  Jsii::Type.check_type(@mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "mode") unless @mode.nil?
  @nat_gateway_exclusion_input = nat_gateway_exclusion_input
  Jsii::Type.check_type(@nat_gateway_exclusion_input, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "natGatewayExclusionInput") unless @nat_gateway_exclusion_input.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
  @virtual_private_gateway_exclusion_input = virtual_private_gateway_exclusion_input
  Jsii::Type.check_type(@virtual_private_gateway_exclusion_input, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "virtualPrivateGatewayExclusionInput") unless @virtual_private_gateway_exclusion_input.nil?
  @vpc_id = vpc_id
  Jsii::Type.check_type(@vpc_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "vpcId") unless @vpc_id.nil?
  @vpc_lattice_exclusion_input = vpc_lattice_exclusion_input
  Jsii::Type.check_type(@vpc_lattice_exclusion_input, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "vpcLatticeExclusionInput") unless @vpc_lattice_exclusion_input.nil?
  @vpc_peering_exclusion_input = vpc_peering_exclusion_input
  Jsii::Type.check_type(@vpc_peering_exclusion_input, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "vpcPeeringExclusionInput") unless @vpc_peering_exclusion_input.nil?
end

Instance Attribute Details

#egress_only_internet_gateway_exclusion_inputString? (readonly)

Specifies whether to exclude egress-only internet gateway traffic from encryption enforcement.



49
50
51
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 49

def egress_only_internet_gateway_exclusion_input
  @egress_only_internet_gateway_exclusion_input
end

#elastic_file_system_exclusion_inputString? (readonly)

Specifies whether to exclude Elastic File System traffic from encryption enforcement.



54
55
56
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 54

def elastic_file_system_exclusion_input
  @elastic_file_system_exclusion_input
end

#internet_gateway_exclusion_inputString? (readonly)

Specifies whether to exclude internet gateway traffic from encryption enforcement.



59
60
61
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 59

def internet_gateway_exclusion_input
  @internet_gateway_exclusion_input
end

#lambda_exclusion_inputString? (readonly)

Specifies whether to exclude Lambda function traffic from encryption enforcement.



64
65
66
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 64

def lambda_exclusion_input
  @lambda_exclusion_input
end

#modeString? (readonly)

The encryption mode for the VPC Encryption Control configuration.



69
70
71
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 69

def mode
  @mode
end

#nat_gateway_exclusion_inputString? (readonly)

Specifies whether to exclude NAT gateway traffic from encryption enforcement.



74
75
76
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 74

def nat_gateway_exclusion_input
  @nat_gateway_exclusion_input
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

The tags assigned to the VPC Encryption Control configuration.



79
80
81
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 79

def tags
  @tags
end

#virtual_private_gateway_exclusion_inputString? (readonly)

Specifies whether to exclude virtual private gateway traffic from encryption enforcement.



84
85
86
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 84

def virtual_private_gateway_exclusion_input
  @virtual_private_gateway_exclusion_input
end

#vpc_idString? (readonly)

The ID of the VPC for which to create the encryption control configuration.



89
90
91
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 89

def vpc_id
  @vpc_id
end

#vpc_lattice_exclusion_inputString? (readonly)

Specifies whether to exclude VPC Lattice traffic from encryption enforcement.



94
95
96
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 94

def vpc_lattice_exclusion_input
  @vpc_lattice_exclusion_input
end

#vpc_peering_exclusion_inputString? (readonly)

Specifies whether to exclude VPC peering connection traffic from encryption enforcement.



99
100
101
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 99

def vpc_peering_exclusion_input
  @vpc_peering_exclusion_input
end

Class Method Details

.jsii_propertiesObject



101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 101

def self.jsii_properties
  {
    :egress_only_internet_gateway_exclusion_input => "egressOnlyInternetGatewayExclusionInput",
    :elastic_file_system_exclusion_input => "elasticFileSystemExclusionInput",
    :internet_gateway_exclusion_input => "internetGatewayExclusionInput",
    :lambda_exclusion_input => "lambdaExclusionInput",
    :mode => "mode",
    :nat_gateway_exclusion_input => "natGatewayExclusionInput",
    :tags => "tags",
    :virtual_private_gateway_exclusion_input => "virtualPrivateGatewayExclusionInput",
    :vpc_id => "vpcId",
    :vpc_lattice_exclusion_input => "vpcLatticeExclusionInput",
    :vpc_peering_exclusion_input => "vpcPeeringExclusionInput",
  }
end

Instance Method Details

#to_jsiiObject



117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
# File 'ec2/cfn_vpc_encryption_control_props.rb', line 117

def to_jsii
  result = {}
  result.merge!({
    "egressOnlyInternetGatewayExclusionInput" => @egress_only_internet_gateway_exclusion_input,
    "elasticFileSystemExclusionInput" => @elastic_file_system_exclusion_input,
    "internetGatewayExclusionInput" => @internet_gateway_exclusion_input,
    "lambdaExclusionInput" => @lambda_exclusion_input,
    "mode" => @mode,
    "natGatewayExclusionInput" => @nat_gateway_exclusion_input,
    "tags" => @tags,
    "virtualPrivateGatewayExclusionInput" => @virtual_private_gateway_exclusion_input,
    "vpcId" => @vpc_id,
    "vpcLatticeExclusionInput" => @vpc_lattice_exclusion_input,
    "vpcPeeringExclusionInput" => @vpc_peering_exclusion_input,
  })
  result.compact
end