enum TableBucketEncryption
Language | Type name |
---|---|
![]() | Amazon.CDK.AWS.S3Tables.Alpha.TableBucketEncryption |
![]() | software.amazon.awscdk.services.s3tables.alpha.TableBucketEncryption |
![]() | aws_cdk.aws_s3tables_alpha.TableBucketEncryption |
![]() | @aws-cdk/aws-s3tables-alpha » TableBucketEncryption |
Controls Server Side Encryption (SSE) for this TableBucket.
Example
// Provide a user defined KMS Key:
const key = new kms.Key(scope, 'UserKey', {});
const encryptedBucket = new TableBucket(scope, 'EncryptedTableBucket', {
tableBucketName: 'table-bucket-1',
encryption: TableBucketEncryption.KMS,
encryptionKey: key,
});
// This account principal will also receive kms:Decrypt access to the KMS key
encryptedBucket.grantRead(new iam.AccountPrincipal('123456789012'), '*');
// Use S3 managed server side encryption (default)
const encryptedBucketDefault = new TableBucket(scope, 'EncryptedTableBucketDefault', {
tableBucketName: 'table-bucket-3',
encryption: TableBucketEncryption.S3_MANAGED, // Uses AES-256 encryption by default
});
Members
Name | Description |
---|---|
KMS | Use a customer defined KMS key for encryption If encryptionKey is specified, this key will be used, otherwise, one will be defined. |
S3_MANAGED | Use S3 managed encryption keys with AES256 encryption. |
KMS
Use a customer defined KMS key for encryption If encryptionKey
is specified, this key will be used, otherwise, one will be defined.
S3_MANAGED
Use S3 managed encryption keys with AES256 encryption.