Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅
中国的 Amazon Web Services 服务入门
(PDF)。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 v2 使用 DynamoDB 表加密 Amazon Command Line Interface
以下代码示例演示了如何管理 DynamoDB 表的加密选项。
创建具有默认加密的表。
创建具有客户托管式 CMK 的表。
更新表加密设置。
描述表加密。
- Bash
-
- Amazon CLI 及 Bash 脚本
-
创建具有默认加密的表。
# Create a table with default encryption (AWS owned key)
aws dynamodb create-table \
--table-name CustomerData \
--attribute-definitions \
AttributeName=CustomerID,AttributeType=S \
--key-schema \
AttributeName=CustomerID,KeyType=HASH \
--billing-mode PAY_PER_REQUEST \
--sse-specification Enabled=true,SSEType=KMS
创建具有客户托管式 CMK 的表。
# Step 1: Create a customer managed key in KMS
aws kms create-key \
--description "Key for DynamoDB table encryption" \
--key-usage ENCRYPT_DECRYPT \
--customer-master-key-spec SYMMETRIC_DEFAULT
# Store the key ID for later use
KEY_ID=$(aws kms list-keys --query "Keys[?contains(KeyArn, 'Key for DynamoDB')].KeyId" --output text)
# Step 2: Create a table with the customer managed key
aws dynamodb create-table \
--table-name SensitiveData \
--attribute-definitions \
AttributeName=RecordID,AttributeType=S \
--key-schema \
AttributeName=RecordID,KeyType=HASH \
--billing-mode PAY_PER_REQUEST \
--sse-specification Enabled=true,SSEType=KMS,KMSMasterKeyId=$KEY_ID
更新表加密。
# Update a table to use a different KMS key
aws dynamodb update-table \
--table-name CustomerData \
--sse-specification Enabled=true,SSEType=KMS,KMSMasterKeyId=$KEY_ID
描述表加密。
# Describe the table to see encryption settings
aws dynamodb describe-table \
--table-name CustomerData \
--query "Table.SSEDescription"
有关 Amazon 软件开发工具包开发人员指南和代码示例的完整列表,请参阅将此服务与 Amazon SDK 配合使用。本主题还包括有关入门的信息以及有关先前的 SDK 版本的详细信息。