本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS KMS key管理
Amazon Aurora 會自動與 AWS Key Management Service (AWS KMS) 整合以進行金鑰管理。 Amazon Aurora 會使用信封加密。如需信封加密的詳細資訊,請參閱 AWS Key Management Service 開發人員指南中的信封加密。
您可以使用兩種 AWS KMS 金鑰來加密資料庫叢集。
在 AWS KMS 主控台
授權使用客戶受管金鑰
當 Aurora 在密碼編譯操作中使用客戶受管金鑰時,它會代表建立或變更 Aurora 資源的使用者。
若要使用客戶受管金鑰建立 Aurora 資源,使用者必須具備呼叫客戶受管金鑰下列作業的許可:
-
kms:CreateGrant -
kms:DescribeKey
您可以在金鑰政策或在 IAM 政策中指定這些必要的許可 (如果金鑰政策允許)。
重要
當您針對具有 Amazon RDS 等受管服務之 AWS KMS 金鑰政策中的所有資源 (*) 使用明確拒絕陳述式時,您必須指定條件以允許資源擁有帳戶。如果沒有此條件,操作可能會失敗,即使拒絕規則包含 IAM 使用者的例外狀況。
提示
若要遵循最低權限原則人,請勿允許 kms:CreateGrant 的完整存取。相反地,只有 AWS 服務代表使用者建立授與時,才可使用 kms:ViaService 條件金鑰以允許使用者在 KMS 金鑰上建立授與。
您可以透過各種方式使 IAM 政策更加嚴格。例如,若要允許客戶受管金鑰僅用於源自 Aurora 的請求,您可以搭配 rds. 值使用 kms:ViaService 條件金鑰。您也可以使用 Amazon RDS 加密內容 中的金鑰或值作為條件,以便將客戶受管金鑰用於加密。<region>.amazonaws.com
如需詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的允許其他帳戶使用者使用 KMS 金鑰和 AWS KMS 中的金鑰政策。
Amazon RDS 加密內容
當 Aurora 使用您的 KMS 金鑰時,或者當 Amazon EBS 代表 Aurora 使用 KMS 金鑰時,服務會指定加密內容。加密內容是額外驗證資料 (AAD),供 AWS KMS 用來確保資料完整性。為加密操作指定加密內容時,此服務必須為解密操作指定相同的加密內容。否則,解密會失敗。加密內容也會寫入 AWS CloudTrail
至少, Aurora 一律使用資料庫叢集 ID 做為加密內容,如下列 JSON 格式範例:
{ "aws:rds:dbc-id": "cluster-CQYSMDPBRZ7BPMH7Y3RTDG5QY" }
這個加密內容可協助您識別您的 KMS 金鑰所用的資料庫叢集。
當您的 KMS 金鑰用於特定的資料庫叢集和特定的 Amazon EBS 磁碟區,資料庫叢集 ID 和 Amazon EBS 磁碟區 ID 都會用於加密內容,如下列 JSON 格式範例:
{ "aws:rds:dbc-id": "cluster-BRG7VYS3SVIFQW7234EJQOM5RQ", "aws:ebs:id": "vol-ad8c6542" }