Class: AWSCDK::ECS::CfnCluster::ManagedStorageConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
ecs/cfn_cluster.rb

Overview

The managed storage configuration for the cluster.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(fargate_ephemeral_storage_kms_key_id: nil, kms_key_id: nil) ⇒ ManagedStorageConfigurationProperty

Returns a new instance of ManagedStorageConfigurationProperty.

Parameters:

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

    Specify the AWS Key Management Service key ID for Fargate ephemeral storage.

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

    Specify a AWS Key Management Service key ID to encrypt Amazon ECS managed storage.



955
956
957
958
959
960
# File 'ecs/cfn_cluster.rb', line 955

def initialize(fargate_ephemeral_storage_kms_key_id: nil, kms_key_id: nil)
  @fargate_ephemeral_storage_kms_key_id = fargate_ephemeral_storage_kms_key_id
  Jsii::Type.check_type(@fargate_ephemeral_storage_kms_key_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "fargateEphemeralStorageKmsKeyId") unless @fargate_ephemeral_storage_kms_key_id.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

#fargate_ephemeral_storage_kms_key_idString? (readonly)

Specify the AWS Key Management Service key ID for Fargate ephemeral storage.

When you specify a fargate_ephemeral_storage_kms_key_id , AWS Fargate uses the key to encrypt data at rest in ephemeral storage. For more information about Fargate ephemeral storage encryption, see Customer managed keys for AWS Fargate ephemeral storage for Amazon ECS in the Amazon Elastic Container Service Developer Guide .

The key must be a single Region key.



970
971
972
# File 'ecs/cfn_cluster.rb', line 970

def fargate_ephemeral_storage_kms_key_id
  @fargate_ephemeral_storage_kms_key_id
end

#kms_key_idString? (readonly)

Specify a AWS Key Management Service key ID to encrypt Amazon ECS managed storage.

When you specify a kms_key_id , Amazon ECS uses the key to encrypt data volumes managed by Amazon ECS that are attached to tasks in the cluster. The following data volumes are managed by Amazon ECS: Amazon EBS. For more information about encryption of Amazon EBS volumes attached to Amazon ECS tasks, see Encrypt data stored in Amazon EBS volumes for Amazon ECS in the Amazon Elastic Container Service Developer Guide .

The key must be a single Region key.



979
980
981
# File 'ecs/cfn_cluster.rb', line 979

def kms_key_id
  @kms_key_id
end

Class Method Details

.jsii_propertiesObject



981
982
983
984
985
986
# File 'ecs/cfn_cluster.rb', line 981

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

Instance Method Details

#to_jsiiObject



988
989
990
991
992
993
994
995
# File 'ecs/cfn_cluster.rb', line 988

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