本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
管理 DynamoDB 中的加密表
您可以使用 Amazon Web Services Management Console 或 Amazon Command Line Interface (Amazon CLI) 在新表上指定加密密钥并更新 Amazon DynamoDB 中现有表上的加密密钥。
指定新表的加密密钥
请按照以下步骤,使用 Amazon DynamoDB 控制台或 Amazon CLI 指定新表的加密密钥。
创建加密表(控制台)
-
在控制台左侧的导航窗格中,选择 Tables (表)。
-
选择 Create Table (创建表)。对于 Table name (表名称),输入
Music
。对于主键,输入Artist
;对于排序键,输入SongTitle
,两者均为字符串。 -
在 Settings(设置)中,请确保选中了 Customize settings(自定义设置)。
注意
如果选择 “使用默认设置”,则对表进行静态加密, Amazon 拥有的密钥 无需支付额外费用。
-
在 “静态加密” 下,选择加密类型- Amazon 拥有的密钥 Amazon 托管式密钥、或客户托管密钥。
-
归亚马逊 DynamoDB 所有。 Amazon 拥有的密钥,由 DynamoDB 专门拥有和管理。使用此密钥不会产生额外的费用。
-
Amazon 托管密钥。密钥别名:
aws/dynamodb
。密钥存储在您的账户中,由 Amazon Key Management Service (Amazon KMS) 管理。 Amazon KMS 需收费。 -
存储在您的账户中,由您自行拥有和管理。客户管理的密钥。密钥存储在您的账户中,由 Amazon Key Management Service (Amazon KMS) 管理。 Amazon KMS 需收费。
注意
如果您选择自行拥有和管理密钥,请确保正确设置 KMS 密钥策略。有关更多信息,包括示例,请参阅客户管理的密钥的密钥策略。
-
-
选择 Create table(创建表)以创建加密表。要确认加密类型,请选择 Overview(概述)选项卡并查看 Additional details(其他详细信息)部分。
创建加密表(Amazon CLI)
使用创建带有 Amazon DynamoDB 的默认 Amazon 拥有的密钥 Amazon 托管式密钥、或客户托管密钥的表。 Amazon CLI
使用默认值创建加密表 Amazon 拥有的密钥
-
如下所示创建
Music
加密表。aws dynamodb create-table \ --table-name Music \ --attribute-definitions \ AttributeName=Artist,AttributeType=S \ AttributeName=SongTitle,AttributeType=S \ --key-schema \ AttributeName=Artist,KeyType=HASH \ AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput \ ReadCapacityUnits=10,WriteCapacityUnits=5
注意
现在,该表已使用 DynamoDB Amazon 拥有的密钥 服务帐号中的默认值进行加密。
使用 Amazon 托管式密钥 适用于 DynamoDB 的加密表
-
如下所示创建
Music
加密表。aws dynamodb create-table \ --table-name Music \ --attribute-definitions \ AttributeName=Artist,AttributeType=S \ AttributeName=SongTitle,AttributeType=S \ --key-schema \ AttributeName=Artist,KeyType=HASH \ AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput \ ReadCapacityUnits=10,WriteCapacityUnits=5 \ --sse-specification Enabled=true,SSEType=KMS
表说明的
SSEDescription
状态设置为ENABLED
,SSEType
设置为KMS
。"SSEDescription": { "SSEType": "KMS", "Status": "ENABLED", "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234", }
创建包含适用于 DynamoDB 的客户托管密钥的加密表
-
如下所示创建
Music
加密表。aws dynamodb create-table \ --table-name Music \ --attribute-definitions \ AttributeName=Artist,AttributeType=S \ AttributeName=SongTitle,AttributeType=S \ --key-schema \ AttributeName=Artist,KeyType=HASH \ AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput \ ReadCapacityUnits=10,WriteCapacityUnits=5 \ --sse-specification Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
表说明的
SSEDescription
状态设置为ENABLED
,SSEType
设置为KMS
。"SSEDescription": { "SSEType": "KMS", "Status": "ENABLED", "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234", }
更新加密密钥
您也可以使用 DynamoDB 控制台或 Amazon CLI 随时更新 Amazon 托管式密钥、和客户托管密钥之间的 Amazon 拥有的密钥现有表的加密密钥。
更新加密密钥(控制台)
-
在控制台左侧的导航窗格中,选择 Tables (表)。
-
选择要更新的表。
-
选择 Actions(操作)下拉菜单,然后选择 Update settings(更新设置)选项。
-
转至 Additional settings(其他设置)选项卡。
-
在 Encryption(加密)下,选择 Manage encryption(管理加密)。
-
选择一个加密类型:
-
Owned by Amazon DynamoDB(由 Amazon DynamoDB 拥有)。 Amazon KMS 密钥由 DynamoDB 拥有和管理。使用此密钥不会产生额外的费用。
-
Amazon 托管密钥别名:
aws/dynamodb
。密钥存储在您的账户中,由管理 Amazon Key Management Service。 (Amazon KMS)。 Amazon KMS 需收费。 -
存储在您的账户中,由您自行拥有和管理。密钥存储在您的账户中,由管理 Amazon Key Management Service。 (Amazon KMS)。 Amazon KMS 需收费。
注意
如果您选择自行拥有和管理密钥,请确保正确设置 KMS 密钥策略。有关更多信息,请参阅客户管理型密钥的密钥策略。
然后,选择 Save (保存) 更新加密表。要确认加密类型,请检查 Overview (概述) 选项卡下的表详细信息。
-
更新加密密钥(Amazon CLI)
以下示例介绍如何使用 Amazon CLI 更新加密表。
使用默认值更新加密表 Amazon 拥有的密钥
-
如下面的示例所示更新
Music
加密表。aws dynamodb update-table \ --table-name Music \ --sse-specification Enabled=false
注意
现在,该表已使用 DynamoDB Amazon 拥有的密钥 服务帐号中的默认值进行加密。
使用 Amazon 托管式密钥 适用于 DynamoDB 的更新加密表
-
如下面的示例所示更新
Music
加密表。aws dynamodb update-table \ --table-name Music \ --sse-specification Enabled=true
表说明的
SSEDescription
状态设置为ENABLED
,SSEType
设置为KMS
。"SSEDescription": { "SSEType": "KMS", "Status": "ENABLED", "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234", }
更新包含适用于 DynamoDB 的客户管理密钥的加密表
-
如下面的示例所示更新
Music
加密表。aws dynamodb update-table \ --table-name Music \ --sse-specification Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
表说明的
SSEDescription
状态设置为ENABLED
,SSEType
设置为KMS
。"SSEDescription": { "SSEType": "KMS", "Status": "ENABLED", "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234", }