SSTでDynamoDBの暗号化設定を行う方法
DynamoDBにはテーブル暗号化についていくつかの選択肢が用意されているよね。今回はSSTでDynamoDBの暗号化設定を行う方法を手短に紹介するよ。
※画像引用:https://sst.dev/
SSTのバージョンは2.11.1で紹介するね。
結論から言えば、こうだよ。
import { TableEncryption } from "aws-cdk-lib/aws-dynamodb";
import { StackContext, Table } from "sst/constructs";
export function AppTable({ stack }: StackContext) {
// https://docs.sst.dev/constructs/Table
const table = new Table(stack, "appTable", {
fields: {
pk: "string",
sk: "string",
},
primaryIndex: {
partitionKey: "pk",
sortKey: "sk",
},
cdk: {
table: {
// ここでDynamoDBのテーブル暗号化の設定を選べる
encryption: TableEncryption.DEFAULT
}
}
});
return {
table,
};
}
これだけだよ! 簡単だね。 SSTのTableコンストラクトのcdk.tableプロパティは、AWS CDK側のTableプロパティを指定できるようになっているんだね。だからこの箇所でどんな設定が可能なのかは、AWS CDK v2のドキュメントを読めばいいよ。