-
Notifications
You must be signed in to change notification settings - Fork 17
/
awsstepfunctionstasks_EncryptionConfiguration.go
38 lines (35 loc) · 1.34 KB
/
awsstepfunctionstasks_EncryptionConfiguration.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package awsstepfunctionstasks
import (
"github.com/aws/aws-cdk-go/awscdk/awskms"
)
// Encryption Configuration of the S3 bucket.
//
// Example:
// startQueryExecutionJob := tasks.NewAthenaStartQueryExecution(this, jsii.String("Athena Start Query"), &athenaStartQueryExecutionProps{
// queryString: sfn.jsonPath.format(jsii.String("select contacts where year={};"), sfn.*jsonPath.stringAt(jsii.String("$.year"))),
// queryExecutionContext: &queryExecutionContext{
// databaseName: jsii.String("interactions"),
// },
// resultConfiguration: &resultConfiguration{
// encryptionConfiguration: &encryptionConfiguration{
// encryptionOption: tasks.encryptionOption_S3_MANAGED,
// },
// outputLocation: &location{
// bucketName: jsii.String("mybucket"),
// objectKey: jsii.String("myprefix"),
// },
// },
// integrationPattern: sfn.integrationPattern_RUN_JOB,
// })
//
// See: https://docs.aws.amazon.com/athena/latest/APIReference/API_EncryptionConfiguration.html
//
// Experimental.
type EncryptionConfiguration struct {
// Type of S3 server-side encryption enabled.
// Experimental.
EncryptionOption EncryptionOption `field:"required" json:"encryptionOption" yaml:"encryptionOption"`
// KMS key ARN or ID.
// Experimental.
EncryptionKey awskms.IKey `field:"optional" json:"encryptionKey" yaml:"encryptionKey"`
}