Class: AWSCDK::SecurityLake::CfnDataLakeProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
security_lake/cfn_data_lake_props.rb

Overview

Properties for defining a CfnDataLake.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(encryption_configuration: nil, lifecycle_configuration: nil, meta_store_manager_role_arn: nil, replication_configuration: nil, tags: nil) ⇒ CfnDataLakeProps

Returns a new instance of CfnDataLakeProps.

Parameters:



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

def initialize(encryption_configuration: nil, lifecycle_configuration: nil, meta_store_manager_role_arn: nil, replication_configuration: nil, tags: nil)
  @encryption_configuration = encryption_configuration.is_a?(Hash) ? ::AWSCDK::SecurityLake::CfnDataLake::EncryptionConfigurationProperty.new(**encryption_configuration.transform_keys(&:to_sym)) : encryption_configuration
  Jsii::Type.check_type(@encryption_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZWN1cml0eWxha2UuQ2ZuRGF0YUxha2UuRW5jcnlwdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "encryptionConfiguration") unless @encryption_configuration.nil?
  @lifecycle_configuration = lifecycle_configuration.is_a?(Hash) ? ::AWSCDK::SecurityLake::CfnDataLake::LifecycleConfigurationProperty.new(**lifecycle_configuration.transform_keys(&:to_sym)) : lifecycle_configuration
  Jsii::Type.check_type(@lifecycle_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZWN1cml0eWxha2UuQ2ZuRGF0YUxha2UuTGlmZWN5Y2xlQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "lifecycleConfiguration") unless @lifecycle_configuration.nil?
  @meta_store_manager_role_arn = meta_store_manager_role_arn
  Jsii::Type.check_type(@meta_store_manager_role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "metaStoreManagerRoleArn") unless @meta_store_manager_role_arn.nil?
  @replication_configuration = replication_configuration.is_a?(Hash) ? ::AWSCDK::SecurityLake::CfnDataLake::ReplicationConfigurationProperty.new(**replication_configuration.transform_keys(&:to_sym)) : replication_configuration
  Jsii::Type.check_type(@replication_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZWN1cml0eWxha2UuQ2ZuRGF0YUxha2UuUmVwbGljYXRpb25Db25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "replicationConfiguration") unless @replication_configuration.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?
end

Instance Attribute Details

#encryption_configurationAWSCDK::IResolvable, ... (readonly)

Provides encryption details of the Amazon Security Lake object.



31
32
33
# File 'security_lake/cfn_data_lake_props.rb', line 31

def encryption_configuration
  @encryption_configuration
end

#lifecycle_configurationAWSCDK::IResolvable, ... (readonly)

You can customize Security Lake to store data in your preferred AWS Regions for your preferred amount of time.

Lifecycle management can help you comply with different compliance requirements. For more details, see Lifecycle management in the Amazon Security Lake User Guide.



38
39
40
# File 'security_lake/cfn_data_lake_props.rb', line 38

def lifecycle_configuration
  @lifecycle_configuration
end

#meta_store_manager_role_arnString? (readonly)

The Amazon Resource Name (ARN) used to create and update the AWS Glue table.

This table contains partitions generated by the ingestion and normalization of AWS log sources and custom sources.



45
46
47
# File 'security_lake/cfn_data_lake_props.rb', line 45

def meta_store_manager_role_arn
  @meta_store_manager_role_arn
end

#replication_configurationAWSCDK::IResolvable, ... (readonly)

Provides replication details of Amazon Security Lake object.



50
51
52
# File 'security_lake/cfn_data_lake_props.rb', line 50

def replication_configuration
  @replication_configuration
end

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

An array of objects, one for each tag to associate with the data lake configuration.

For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string.



57
58
59
# File 'security_lake/cfn_data_lake_props.rb', line 57

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



59
60
61
62
63
64
65
66
67
# File 'security_lake/cfn_data_lake_props.rb', line 59

def self.jsii_properties
  {
    :encryption_configuration => "encryptionConfiguration",
    :lifecycle_configuration => "lifecycleConfiguration",
    :meta_store_manager_role_arn => "metaStoreManagerRoleArn",
    :replication_configuration => "replicationConfiguration",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



69
70
71
72
73
74
75
76
77
78
79
# File 'security_lake/cfn_data_lake_props.rb', line 69

def to_jsii
  result = {}
  result.merge!({
    "encryptionConfiguration" => @encryption_configuration,
    "lifecycleConfiguration" => @lifecycle_configuration,
    "metaStoreManagerRoleArn" => @meta_store_manager_role_arn,
    "replicationConfiguration" => @replication_configuration,
    "tags" => @tags,
  })
  result.compact
end