EncryptionConfiguration Class
Base class for creating an EncryptionConfiguration for either state machines or activities.
Example
ts
import * as kms from 'aws-cdk-lib/aws-kms';
import * as cdk from 'aws-cdk-lib';
const kmsKey = new kms.Key(this, 'Key');
const stateMachine = new sfn.StateMachine(this, 'StateMachineWithCMKEncryptionConfiguration', {
stateMachineName: 'StateMachineWithCMKEncryptionConfiguration',
definitionBody: sfn.DefinitionBody.fromChainable(sfn.Chain.start(new sfn.Pass(this, 'Pass'))),
stateMachineType: sfn.StateMachineType.STANDARD,
encryptionConfiguration: new sfn.CustomerManagedEncryptionConfiguration(kmsKey, cdk.Duration.seconds(60)),
});
python
import aws_cdk.aws_kms as kms
import aws_cdk as cdk
kms_key = kms.Key(self, "Key")
state_machine = sfn.StateMachine(self, "StateMachineWithCMKEncryptionConfiguration",
state_machine_name="StateMachineWithCMKEncryptionConfiguration",
definition_body=sfn.DefinitionBody.from_chainable(sfn.Chain.start(sfn.Pass(self, "Pass"))),
state_machine_type=sfn.StateMachineType.STANDARD,
encryption_configuration=sfn.CustomerManagedEncryptionConfiguration(kms_key, cdk.Duration.seconds(60))
)
java
import software.amazon.awscdk.services.kms.*;
import software.amazon.awscdk.*;
Key kmsKey = new Key(this, "Key");
StateMachine stateMachine = StateMachine.Builder.create(this, "StateMachineWithCMKEncryptionConfiguration")
.stateMachineName("StateMachineWithCMKEncryptionConfiguration")
.definitionBody(DefinitionBody.fromChainable(Chain.start(new Pass(this, "Pass"))))
.stateMachineType(StateMachineType.STANDARD)
.encryptionConfiguration(new CustomerManagedEncryptionConfiguration(kmsKey, Duration.seconds(60)))
.build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
using Amazon.CDK.AWS.KMS;
using Amazon.CDK;
var kmsKey = new Key(this, "Key");
var stateMachine = new StateMachine(this, "StateMachineWithCMKEncryptionConfiguration", new StateMachineProps {
StateMachineName = "StateMachineWithCMKEncryptionConfiguration",
DefinitionBody = DefinitionBody.FromChainable(Chain.Start(new Pass(this, "Pass"))),
StateMachineType = StateMachineType.STANDARD,
EncryptionConfiguration = new CustomerManagedEncryptionConfiguration(kmsKey, Duration.Seconds(60))
});
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
import kms "github.com/aws/aws-cdk-go/awscdk"
import cdk "github.com/aws/aws-cdk-go/awscdk"
kmsKey := kms.NewKey(this, jsii.String("Key"))
stateMachine := sfn.NewStateMachine(this, jsii.String("StateMachineWithCMKEncryptionConfiguration"), &StateMachineProps{
StateMachineName: jsii.String("StateMachineWithCMKEncryptionConfiguration"),
DefinitionBody: sfn.DefinitionBody_FromChainable(sfn.Chain_Start(sfn.NewPass(this, jsii.String("Pass")))),
StateMachineType: sfn.StateMachineType_STANDARD,
EncryptionConfiguration: sfn.NewCustomerManagedEncryptionConfiguration(kmsKey, cdk.Duration_Seconds(jsii.Number(60))),
})
Initializer
ts
new EncryptionConfiguration(type: string)
python
EncryptionConfiguration(type: str)
java
new EncryptionConfiguration(String type)
csharp
new EncryptionConfiguration(string type)
go
NewEncryptionConfiguration(Type *string)
Properties
Encryption option for the state machine or activity.
Can be either CUSTOMER_MANAGED_KMS_KEY or AWS_OWNED_KEY.