Class: AWSCDK::DynamoDB::CfnGlobalTable::SSESpecificationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
dynamo_db/cfn_global_table.rb

Overview

Represents the settings used to enable server-side encryption.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(sse_enabled:, sse_type: nil) ⇒ SSESpecificationProperty

Returns a new instance of SSESpecificationProperty.

Parameters:

  • sse_enabled (Boolean, AWSCDK::IResolvable)

    Indicates whether server-side encryption is performed using an AWS managed key or an AWS owned key.

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

    Server-side encryption type. The only supported value is:.



1868
1869
1870
1871
1872
1873
# File 'dynamo_db/cfn_global_table.rb', line 1868

def initialize(sse_enabled:, sse_type: nil)
  @sse_enabled = sse_enabled
  Jsii::Type.check_type(@sse_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "sseEnabled")
  @sse_type = sse_type
  Jsii::Type.check_type(@sse_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sseType") unless @sse_type.nil?
end

Instance Attribute Details

#sse_enabledBoolean, AWSCDK::IResolvable (readonly)

Indicates whether server-side encryption is performed using an AWS managed key or an AWS owned key.

If enabled (true), server-side encryption type is set to KMS and an AWS managed key is used ( AWS charges apply). If disabled (false) or not specified,server-side encryption is set to an AWS owned key. If you choose to use KMS encryption, you can also use customer managed KMS keys by specifying them in the ReplicaSpecification.SSESpecification object. You cannot mix AWS managed and customer managed KMS keys.



1881
1882
1883
# File 'dynamo_db/cfn_global_table.rb', line 1881

def sse_enabled
  @sse_enabled
end

#sse_typeString? (readonly)

Server-side encryption type. The only supported value is:.

  • KMS - Server-side encryption that uses AWS Key Management Service . The key is stored in your account and is managed by AWS ( AWS charges apply).


1888
1889
1890
# File 'dynamo_db/cfn_global_table.rb', line 1888

def sse_type
  @sse_type
end

Class Method Details

.jsii_propertiesObject



1890
1891
1892
1893
1894
1895
# File 'dynamo_db/cfn_global_table.rb', line 1890

def self.jsii_properties
  {
    :sse_enabled => "sseEnabled",
    :sse_type => "sseType",
  }
end

Instance Method Details

#to_jsiiObject



1897
1898
1899
1900
1901
1902
1903
1904
# File 'dynamo_db/cfn_global_table.rb', line 1897

def to_jsii
  result = {}
  result.merge!({
    "sseEnabled" => @sse_enabled,
    "sseType" => @sse_type,
  })
  result.compact
end