Class: AWSCDK::StepFunctions::CustomerManagedEncryptionConfiguration

Inherits:
EncryptionConfiguration
  • Object
show all
Defined in:
step_functions/customer_managed_encryption_configuration.rb

Overview

Define a new CustomerManagedEncryptionConfiguration.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(kms_key, kms_data_key_reuse_period_seconds = nil) ⇒ CustomerManagedEncryptionConfiguration

Returns a new instance of CustomerManagedEncryptionConfiguration.

Parameters:



10
11
12
13
14
# File 'step_functions/customer_managed_encryption_configuration.rb', line 10

def initialize(kms_key, kms_data_key_reuse_period_seconds = nil)
  Jsii::Type.check_type(kms_key, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa21zLklLZXkifQ==")), "kmsKey")
  Jsii::Type.check_type(kms_data_key_reuse_period_seconds, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "kmsDataKeyReusePeriodSeconds") unless kms_data_key_reuse_period_seconds.nil?
  Jsii::Object.instance_method(:initialize).bind(self).call(kms_key, kms_data_key_reuse_period_seconds)
end

Class Method Details

.jsii_overridable_methodsObject



16
17
18
19
20
21
22
# File 'step_functions/customer_managed_encryption_configuration.rb', line 16

def self.jsii_overridable_methods
  {
    :type => { kind: :property, name: "type", is_optional: false },
    :kms_key => { kind: :property, name: "kmsKey", is_optional: false },
    :kms_data_key_reuse_period_seconds => { kind: :property, name: "kmsDataKeyReusePeriodSeconds", is_optional: true },
  }
end

Instance Method Details

#kms_data_key_reuse_period_secondsAWSCDK::Duration?

Note:

Default: Duration.seconds(300)

Maximum duration that Step Functions will reuse customer managed data keys. When the period expires, Step Functions will call GenerateDataKey.

Must be between 60 and 900 seconds.

Returns:



54
55
56
# File 'step_functions/customer_managed_encryption_configuration.rb', line 54

def kms_data_key_reuse_period_seconds()
  jsii_get_property("kmsDataKeyReusePeriodSeconds")
end

#kms_keyAWSCDK::KMS::IKey

Note:

Default: - data is transparently encrypted using an AWS owned key

The symmetric customer managed KMS key for server-side encryption of the state machine definition, and execution history or activity inputs.

Step Functions will reuse the key for a maximum of kms_data_key_reuse_period_seconds.

Returns:



44
45
46
# File 'step_functions/customer_managed_encryption_configuration.rb', line 44

def kms_key()
  jsii_get_property("kmsKey")
end

#typeString

Encryption option for the state machine or activity.

Can be either CUSTOMER_MANAGED_KMS_KEY or AWS_OWNED_KEY.

Returns:

  • (String)


29
30
31
# File 'step_functions/customer_managed_encryption_configuration.rb', line 29

def type()
  jsii_get_property("type")
end

#type=(value) ⇒ Object



33
34
35
36
# File 'step_functions/customer_managed_encryption_configuration.rb', line 33

def type=(value)
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type")
  jsii_set_property("type", value)
end