本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon Redshift 如何使用 AWS KMS
本主題討論 Amazon Redshift 如何使用 AWS KMS 加密資料。
Amazon Redshift 加密
Amazon Redshift 資料倉儲是稱為節點的運算資源的集合,組織成稱為叢集的群組。每個叢集皆執行 Amazon Redshift 引擎並包含一或多個資料庫。
Amazon Redshift 使用四個階層的金鑰架構來加密。此架構包含資料加密金鑰、資料庫金鑰、叢集金鑰和根金鑰。您可以使用 AWS KMS key 作為根金鑰。
資料加密金鑰會加密叢集中的資料區塊。每個資料區塊都會指派一個隨機產生的 AES-256 金鑰。這些金鑰使用叢集的資料庫金鑰來加密。
資料庫金鑰會加密叢集中的資料加密金鑰。資料庫金鑰是隨機產生的 AES-256 金鑰。它會存放在與 Amazon Redshift 叢集不同之網路的磁碟上,並透過安全通道傳送給叢集。
叢集金鑰會加密 Amazon Redshift 叢集的資料庫金鑰。您可以使用 AWS KMS AWS CloudHSM、 或外部硬體安全模組 (HSM) 來管理叢集金鑰。請參閱 Amazon Redshift Database 加密文件以取得更多詳細資訊。
您可以在 Amazon Redshift 主控台中勾選適當的方塊來請求加密。您可以從加密方塊下方的清單中選擇一個項目,指定要客戶受管金鑰。如果您未指定客戶受管金鑰,Amazon Redshift 會在您的帳戶下使用 Amazon Redshift 的 AWS 受管金鑰。
重要
Amazon Redshift 僅支援對稱加密KMS金鑰。您無法在 Amazon Redshift 加密工作流程中使用非對稱KMS金鑰。如需協助判斷KMS金鑰是對稱或非對稱,請參閱 識別不同的金鑰類型。
加密內容
與 整合的每個服務在請求資料金鑰、加密和解密時 AWS KMS 指定加密內容。加密內容是 AWS KMS 用於檢查資料完整性的其他已驗證資料 (AAD)。也就是說,為加密操作指定加密內容時,服務也必須為解密操作指定相同的加密內容,否則解密將無法成功。Amazon Redshift 會使用叢集 ID 和加密內容的建立時間。在 CloudTrail 日誌檔案的 requestParameters
欄位中,加密內容看起來會與此類似。
"encryptionContext": { "aws:redshift:arn": "arn:aws:redshift:
region
:account_ID
:cluster:cluster_name
", "aws:redshift:createtime": "20150206T1832Z" },
您可以在 CloudTrail 日誌中搜尋叢集名稱,以了解使用 AWS KMS key (KMS 金鑰) 執行了哪些操作。操作包括叢集加密、叢集解密和產生資料金鑰。