Class: AWSCDK::Elasticsearch::CfnDomain::EncryptionAtRestOptionsProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
elasticsearch/cfn_domain.rb

Overview

Whether the domain should encrypt data at rest, and if so, the AWS Key Management Service key to use.

The AWS::Elasticsearch::Domain resource is being replaced by the AWS::OpenSearchService::Domain resource. While the legacy Elasticsearch resource and options are still supported, we recommend modifying your existing Cloudformation templates to use the new OpenSearch Service resource, which supports both OpenSearch and Elasticsearch. For more information about the service rename, see New resource types in the Amazon OpenSearch Service Developer Guide .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(enabled: nil, kms_key_id: nil) ⇒ EncryptionAtRestOptionsProperty

Returns a new instance of EncryptionAtRestOptionsProperty.

Parameters:

  • enabled (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Specify true to enable encryption at rest.

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

    The KMS key ID.



1247
1248
1249
1250
1251
1252
# File 'elasticsearch/cfn_domain.rb', line 1247

def initialize(enabled: nil, kms_key_id: nil)
  @enabled = enabled
  Jsii::Type.check_type(@enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enabled") unless @enabled.nil?
  @kms_key_id = kms_key_id
  Jsii::Type.check_type(@kms_key_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kmsKeyId") unless @kms_key_id.nil?
end

Instance Attribute Details

#enabledBoolean, ... (readonly)

Specify true to enable encryption at rest.



1258
1259
1260
# File 'elasticsearch/cfn_domain.rb', line 1258

def enabled
  @enabled
end

#kms_key_idString? (readonly)

The KMS key ID.

Takes the form 1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a . Required if you enable encryption at rest.



1265
1266
1267
# File 'elasticsearch/cfn_domain.rb', line 1265

def kms_key_id
  @kms_key_id
end

Class Method Details

.jsii_propertiesObject



1267
1268
1269
1270
1271
1272
# File 'elasticsearch/cfn_domain.rb', line 1267

def self.jsii_properties
  {
    :enabled => "enabled",
    :kms_key_id => "kmsKeyId",
  }
end

Instance Method Details

#to_jsiiObject



1274
1275
1276
1277
1278
1279
1280
1281
# File 'elasticsearch/cfn_domain.rb', line 1274

def to_jsii
  result = {}
  result.merge!({
    "enabled" => @enabled,
    "kmsKeyId" => @kms_key_id,
  })
  result.compact
end