本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 DynamoDB 中管理加密資料表
您可以使用 AWS 管理主控台 或 AWS Command Line Interface (AWS CLI) 在新資料表上指定加密金鑰,並更新 Amazon DynamoDB 中現有資料表上的加密金鑰。
指定新資料表的加密金鑰
請依照這些步驟,使用 Amazon DynamoDB 主控台或 AWS CLI在新資料表上指定加密金鑰。
建立加密資料表 (主控台)
登入 AWS 管理主控台 ,並在 https://https://console.aws.amazon.com/dynamodb/ 開啟 DynamoDB 主控台。
-
在主控台左側的導覽窗格中,選擇 Tables (資料表)。
-
選擇 Create Table (建立資料表)。針對資料表名稱,輸入
Music。針對主索引鍵,輸入Artist,對於排序索引鍵,輸入SongTitle,兩者都做為字串。 -
在 Settings (設定) 中,確認選取 Customize settings (自訂設定)。
注意
如果選取使用預設設定,則會使用 AWS 擁有的金鑰 靜態加密資料表,無需額外費用。
-
在靜態加密下,選擇加密類型 - AWS 擁有的金鑰 AWS 受管金鑰、 或客戶受管金鑰。
-
由 Amazon DynamoDB. AWS owned key 擁有,專門由 DynamoDB 擁有和管理。使用此金鑰不會向您收取額外費用。
-
AWS 受管金鑰。金鑰別名:
aws/dynamodb。金鑰會存放在您的帳戶中,並由 AWS Key Management Service (AWS KMS) 管理。需支付 AWS KMS 費用。 -
儲存在您的帳戶中,且由您擁有和管理。客戶自管金鑰。金鑰會存放在您的帳戶中,並由 AWS Key Management Service (AWS KMS) 管理。需支付 AWS KMS 費用。
注意
如果您選擇擁有和管理自己的金鑰,請確保已正確設定 KMS 金鑰政策。如需詳細資訊及範例,請參閱客戶自管金鑰的金鑰政策。
-
-
選擇 Create table (建立資料表) 以建立加密資料表。若要確認加密類型,選取 Overview (概觀) 標籤中的資料表詳細資訊並檢閱 Additional details (其他詳細資訊) 區段。
建立加密資料表 (AWS CLI)
使用 AWS CLI 為 Amazon DynamoDB 建立具有預設 AWS 擁有的金鑰、 AWS 受管金鑰或客戶受管金鑰的資料表。
使用預設建立加密資料表 AWS 擁有的金鑰
-
建立加密的
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注意
此資料表現在使用 AWS 擁有的金鑰 DynamoDB 服務帳戶中的預設值加密。
使用 AWS 受管金鑰 適用於 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 主控台或 AWS CLI ,隨時更新 AWS 擁有的金鑰 AWS 受管金鑰和客戶受管金鑰之間現有資料表的加密金鑰。
更新加密金鑰 (主控台)
登入 AWS 管理主控台 ,並在 https://https://console.aws.amazon.com/dynamodb/ 開啟 DynamoDB 主控台。
-
在主控台左側的導覽窗格中,選擇 Tables (資料表)。
-
選擇您要更新的資料表。
-
選取 Actions (動作) 下拉式清單,然後選取 Update settings (更新設定) 選項。
-
轉至 Additional settings (其他設定) 索引標籤。
-
在 Encryption (加密) 下,選擇 Manage encryption (管理加密)。
-
選擇加密類型:
-
由 Amazon DynamoDB 擁有。 AWS KMS 金鑰由 DynamoDB 擁有和管理。使用此金鑰不會向您收取額外費用。
-
AWS 受管金鑰別名:
aws/dynamodb。金鑰會存放在您的帳戶中,並由 管理 AWS Key Management Service。 (AWS KMS)。需支付 AWS KMS 費用。 -
儲存在您的帳戶中,且由您擁有和管理。金鑰會儲存在您的帳戶中,並由 管理 AWS Key Management Service。 (AWS KMS)。需支付 AWS KMS 費用。
注意
如果您選擇擁有和管理自己的金鑰,請確保已正確設定 KMS 金鑰政策。如需詳細資訊,請參閱客戶自管金鑰的金鑰政策。
然後,選擇 Save (儲存) 以更新加密資料表。若要確認加密類型,檢查 Overview (概觀) 索引標籤下的資料表詳細資訊。
-
更新加密金鑰 (AWS CLI)
下列範例顯示如何使用 AWS CLI更新加密資料表。
使用預設值更新加密的資料表 AWS 擁有的金鑰
-
更新加密的
Music資料表,如下列範例所示。aws dynamodb update-table \ --table-name Music \ --sse-specification Enabled=false注意
此資料表現在使用 AWS 擁有的金鑰 DynamoDB 服務帳戶中的預設值加密。
使用 AWS 受管金鑰 適用於 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", }