

# SEC08-BP02 強制靜態加密
<a name="sec_protect_data_rest_encrypt"></a>

 您應該對靜態資料強制使用加密。在發生未授權存取或意外洩露的情況時，加密可保持敏感資料的機密性。 

 **預期成果：**私有資料應該預設在處於靜態時加密。加密有助於維持資料的機密性，並提供多一層保護以防有意或不慎的資料暴露或外洩。加密的資料必須先解密後才能讀取或存取。任何在未加密下儲存的資料都應該進行清查並加以控制。 

 **常見的反模式：** 
+  未使用預設加密組態。 
+  對解密金鑰提供過於寬鬆的存取權。 
+  未監控加密和解密金鑰的使用。 
+  在未加密的情況下儲存資料。 
+  對所有資料使用相同的加密金鑰，無論資料使用方式、類型和分類。 

 **未建立此最佳實務時的風險暴露等級：**高 

## 實作指引
<a name="implementation-guidance"></a>

 在工作負載中將加密金鑰對應到資料分類。當對資料使用單一或極少數的加密金鑰時，此方法有助於防止過於寬鬆的存取權 (請參閱 [SEC07-BP01 識別工作負載內的資料](sec_data_classification_identify_data.md))。 

 AWS Key Management Service (AWS KMS) 與許多 AWS 服務整合，更方便您加密靜態資料。例如，在 Amazon Simple Storage Service (Amazon S3) 中，您可以在儲存貯體上設定[預設加密](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html)，以便將所有新物件自動加密。當使用 AWS KMS 時，考慮需要嚴格限制資料的程度。AWS 會代表您管理及使用預設和服務控制的 AWS KMS 金鑰。對於需要對基礎加密金鑰的精細存取權之敏感資料，可考慮客戶自管金鑰 (CMK)。您可全權控制 CMK，包括透過使用金鑰政策進行輪換和存取管理。 

 此外，[Amazon Elastic Compute Cloud (Amazon EC2)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default) 和 [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/default-bucket-encryption.html) 可透過設定預設加密來支援強制加密。您可以使用 [AWS Config 規則](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) 自動檢查您是否正對如 [Amazon Elastic Block Store (Amazon EBS) 磁碟區](https://docs.aws.amazon.com/config/latest/developerguide/encrypted-volumes.html)、[Amazon Relational Database Service (Amazon RDS) 執行個體](https://docs.aws.amazon.com/config/latest/developerguide/rds-storage-encrypted.html)和 [Amazon S3 儲存貯體](https://docs.aws.amazon.com/config/latest/developerguide/s3-default-encryption-kms.html)等使用加密。 

 AWS 也提供用戶端加密選項，允許您在上傳到雲端之前加密資料。AWS Encryption SDK 提供使用[封套加密](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#enveloping)來加密資料的方法。您提供包裝金鑰，而 AWS Encryption SDK 會為它加密的每個資料物件產生唯一的資料金鑰。如果您需要受管的單一租用戶硬體安全模組 (HSM)，可考慮 AWS CloudHSM。AWS CloudHSM 可讓您在 FIPS 140-2 3 級驗證的 HSM 上產生、匯入和管理加密金鑰。AWS CloudHSM 的一些使用案例包括保護用於核發憑證認證機構 (CA) 的私有金鑰，以及為 Oracle 資料庫啟用透明資料加密 (TDE)。AWS CloudHSM 用戶端 SDK 提供軟體，可讓您在將資料上傳到 AWS 之前，使用儲存在 AWS CloudHSM 內的金鑰加密資料用戶端。Amazon DynamoDB Encryption Client 還允許您在上傳到 DynamoDB 資料表之前，加密和簽署項目。 

 **實作步驟** 
+  **強制對 Amazon S3 執行靜態加密：**實作 [Amazon S3 儲存貯體預設加密](https://docs.aws.amazon.com/AmazonS3/latest/userguide/default-bucket-encryption.html)。 

   **為[新的 Amazon EBS 磁碟區設定預設加密](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html)：**使用 AWS 提供的預設金鑰或您自行建立的金鑰，指定您希望以加密形式建立所有新的 Amazon EBS 磁碟區。 

   **設定加密的 Amazon Machine Images (AMI)：**複製已啟用加密的現有 AMI 會自動加密根磁碟區和快照。 

   **設定 [Amazon RDS 加密](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Overview.Encryption.html)：**透過使用加密選項，為您的 Amazon RDS 資料庫叢集和靜態快照設定啟用加密。 

   **使用政策限制對適當主體的存取，為每個資料分類建立和設定 AWS KMS 金鑰：**例如，建立一個 AWS KMS 金鑰用於加密生產資料，另一個金鑰用於加密開發或測試資料。您還可以提供金鑰來存取其他 AWS 帳戶。考慮針對開發和生產環境擁有不同的帳戶。如果您的生產環境需要解密開發帳戶中的成品，您可以編輯用來加密開發成品的 CMK 金鑰，使生產帳戶能夠解密這些成品。生產環境接著可以擷取解密的資料以用於生產。 

   **在其他 AWS 服務中設定加密：**對於您使用的其他 AWS 服務，請檢閱該服務的[安全文件](https://docs.aws.amazon.com/security/)，以確定該服務的加密選項。 

## 資源
<a name="resources"></a>

 **相關文件：** 
+  [AWS 加密工具](https://docs.aws.amazon.com/aws-crypto-tools) 
+  [AWS 文件](https://docs.aws.amazon.com/) 
+  [AWS Encryption SDK](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/introduction.html) 
+  [AWS KMS 加密詳細資訊白皮書](https://docs.aws.amazon.com/kms/latest/cryptographic-details/intro.html) 
+  [AWS Key Management Service](https://aws.amazon.com/kms) 
+  [AWS 加密服務和工具](https://docs.aws.amazon.com/crypto/latest/userguide/awscryp-overview.html) 
+  [Amazon EBS 加密](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) 
+  [Amazon EBS 磁碟區的預設加密](https://aws.amazon.com/blogs/aws/new-opt-in-to-default-encryption-for-new-ebs-volumes/) 
+  [加密 Amazon RDS 資源](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Encryption.html) 
+  [如何針對 Amazon S3 儲存貯體啟用預設加密？](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/default-bucket-encryption.html) 
+  [使用加密保護 Amazon S3 資料](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingEncryption.html) 

 **相關影片：** 
+  [AWS 中加密的運作方式](https://youtu.be/plv7PQZICCM) 
+  [保護 AWS 上的區塊儲存安全](https://youtu.be/Y1hE1Nkcxs8) 