

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

# 使用雙層伺服器端加密搭配 AWS KMS 金鑰 (DSSE-KMS)
<a name="UsingDSSEncryption"></a>

使用雙層伺服器端加密搭配 AWS Key Management Service (AWS KMS) 金鑰 (DSSE-KMS)，會在物件上傳至 Amazon S3 時套用兩層加密。DSSE-KMS 可協助您更輕鬆地達成合規標準，這些標準會要求您將多層加密套用至資料，並完全掌控您的加密金鑰。

DSSE-KMS 中的「雙」是指套用到資料的兩個獨立 AES-256 加密層：
+ *第一層：*您的資料會使用 產生的唯一資料加密金鑰 (DEK) 進行加密 AWS KMS
+ *第二層：*已加密的資料會使用 Amazon S3 管理的個別 AES-256 加密金鑰再次加密

這與標準 SSE-KMS 不同，後者只會套用單一加密層。雙層方法能確保即使一個加密層遭到入侵，您的資料仍會受到第二層的保護，藉以提供增強的安全性。這種額外的安全性帶來了更高的處理開銷和 AWS KMS API 呼叫，與標準 SSE-KMS 相比，其成本更高。如需 DSSE-KMS 定價的詳細資訊，請參閱《 AWS Key Management Service 開發人員指南》中的[AWS KMS key 概念](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys)和[AWS KMS 定價](https://aws.amazon.com/kms/pricing)。

當您搭配 Amazon S3 儲存貯體使用 DSSE-KMS 時， AWS KMS 金鑰必須與儲存貯體位於相同的區域。此外，當物件要求 DSSE-KMS 時，做為物件中繼資料一部分的 S3 總和檢查會以加密形式存放。如需總和檢查的詳細資訊，請參閱 [在 Amazon S3 中檢查物件完整性](checking-object-integrity.md)。

**注意**  
DSSE-KMS 不支援 S3 儲存貯體金鑰。

DSSE-KMS 與標準 SSE-KMS 之間的主要差異如下：
+ **加密層：**DSSE-KMS 套用兩個獨立的 AES-256 加密層，而標準 SSE-KMS 套用一層
+ **安全性：**DSSE-KMS 提供增強的保護，防範潛在的加密漏洞
+ **合規：**DSSE-KMS 有助於滿足要求多層加密的法規要求
+ **效能：**由於額外的加密處理，DSSE-KMS 的延遲略高
+ **成本：**由於運算開銷增加和其他 AWS KMS 操作，DSSE-KMS 會產生更高的費用

**需要使用 AWS KMS keys (DSSE-KMS) 進行雙層伺服器端加密**  
若要在特定 Amazon S3 儲存貯體中要求所有物件的雙層伺服器端加密，您可以使用儲存貯體政策。例如，如果請求不包含要求含 DSSE-KMS 之伺服器端加密的 `x-amz-server-side-encryption` 標頭，則下列儲存貯體政策會拒絕向所有人上傳物件 (`s3:PutObject`) 的許可。

------
#### [ JSON ]

****  

```
{
             "Version":"2012-10-17",		 	 	 
             "Id": "PutObjectPolicy",
             "Statement": [{
                   "Sid": "DenyUnEncryptedObjectUploads",
                   "Effect": "Deny",
                   "Principal": {
                       "AWS": "arn:aws:iam::{{111122223333}}:root"
                   },
                   "Action": "s3:PutObject",
                   "Resource": "arn:aws:s3:::{{amzn-s3-demo-bucket}}/*",
                   "Condition": {
                      "StringNotEquals": {
                         "s3:x-amz-server-side-encryption": "aws:kms:dsse"
                      }
                   }
                }
             ]
          }
```

------

**Topics**
+ [使用 AWS KMS 金鑰指定雙層伺服器端加密 (DSSE-KMS)](specifying-dsse-encryption.md)