搭配 AWS 資料庫加密 SDK 使用 AWS KMS - AWS 資料庫加密 SDK

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

搭配 AWS 資料庫加密 SDK 使用 AWS KMS

我們的用戶端加密程式庫已重新命名為 AWS 資料庫加密 SDK。此開發人員指南仍會提供 DynamoDB Encryption Client 的相關資訊。

若要使用 AWS 資料庫加密 SDK,您需要設定 keyring 並指定一或多個包裝金鑰。如果您沒有金鑰基礎架構,建議您使用 AWS Key Management Service (AWS KMS)

AWS Database Encryption SDK 支援兩種類型的 AWS KMS keyring。傳統 AWS KMS keyring 使用 AWS KMS keys 來產生、加密和解密資料金鑰。您可以使用對稱加密 (SYMMETRIC_DEFAULT) 或非對稱 RSA KMS 金鑰。由於 AWS Database Encryption SDK 會使用唯一的資料金鑰來加密和簽署每個記錄, AWS KMS 因此 keyring 必須 AWS KMS 針對每個加密和解密操作呼叫 。對於需要將呼叫次數降至最低的應用程式 AWS KMS, AWS 資料庫加密 SDK 也支援AWS KMS 階層式 keyring。階層式 keyring 是一種密碼編譯材料快取解決方案,透過使用保留在 Amazon DynamoDB 資料表中的 AWS KMS 受保護分支金鑰,以及加密和解密操作中使用的本機快取分支金鑰材料來減少 AWS KMS 呼叫次數。建議您盡可能使用 AWS KMS keyring。

若要與 互動 AWS KMS, AWS 資料庫加密 SDK 需要 的 AWS KMS 模組 AWS SDK for Java。

準備搭配 使用 AWS Database Encryption SDK AWS KMS
  1. 建立 AWS 帳戶。若要了解如何,請參閱 AWS 知識中心中的如何建立和啟用新的 Amazon Web Services 帳戶?

  2. 建立對稱加密 AWS KMS key。如需說明,請參閱《 AWS Key Management Service 開發人員指南》中的建立金鑰

    提示

    若要以 AWS KMS key 程式設計方式使用 ,您需要 的 Amazon Resource Name (ARN) AWS KMS key。如需尋找 之 ARN 的協助 AWS KMS key,請參閱《 AWS Key Management Service 開發人員指南》中的尋找金鑰 ID 和 ARN

  3. 產生存取金鑰 ID 和安全存取金鑰。您可以使用 IAM 使用者的存取金鑰 ID 和私密存取金鑰,也可以使用 AWS Security Token Service 來建立新的工作階段,其中包含存取金鑰 ID、私密存取金鑰和工作階段權杖的臨時安全登入資料。作為安全最佳實務,我們建議您使用臨時憑證,而不是與您的 IAM 使用者或 AWS (根) 使用者帳戶相關聯的長期憑證。

    若要使用存取金鑰建立 IAM 使用者,請參閱《IAM 使用者指南》中的建立 IAM 使用者。

    若要產生臨時安全登入資料,請參閱《IAM 使用者指南》中的請求臨時安全登入資料。

  4. 使用 中的指示AWS SDK for Java,以及您在步驟 3 中產生的存取金鑰 ID 和私密存取金鑰來設定 AWS 您的登入資料。如果您產生臨時登入資料,您也需要指定工作階段權杖。

    此程序允許 AWS SDKs AWS 為您簽署 請求。與 互動的 AWS 資料庫加密 SDK 中的程式碼範例 AWS KMS 假設您已完成此步驟。