

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

# 支援 SQL Server 的透明資料加密
<a name="Appendix.SQLServer.Options.TDE"></a>

Amazon RDS 支援使用透明資料加密 (TDE)，來加密執行 Microsoft SQL Server 之資料庫執行個體上所儲存的資料。TDE 會在資料寫入至儲存體之前自動將其加密，並在從儲存體中讀取資料時自動將其解密。

Amazon RDS 支援下列 SQL Server 版本的 TDE：
+ SQL Server 2022 Standard 和 Enterprise Edition
+ SQL Server 2019 Standard 和 Enterprise Editions
+ SQL Server 2017 Enterprise Edition
+ SQL Server 2016 Enterprise Edition

**注意**  
RDS for SQL Server 不支援唯讀資料庫的 TDE。

SQL Server 的透明資料加密會使用雙層金鑰架構來提供加密金鑰管理。從資料庫主要金鑰產生的認證是用來保護資料加密金鑰。資料庫加密金鑰會在使用者資料庫上，實際執行資料加密及解密作業。Amazon RDS 會備份並管理資料庫主金鑰與 TDE 憑證。

透明資料加密係使用於需要加密敏感資料的情況。例如，您可能想要將資料檔案和備份提供給第三方，或處理與安全相關的法律合規性問題。您無法加密 SQL Server 的系統資料庫，例如 `model` 或 `master` 資料庫。

透明資料加密的詳細討論超出本指南的範圍，但請確定您了解每一個加密演算法和金鑰的安全優缺點。如需 SQL Server 之透明資料加密的相關資訊，請參閱 Microsoft 文件中的[透明資料加密 (TDE)](http://msdn.microsoft.com/en-us/library/bb934049.aspx)。

**Topics**
+ [為 RDS for SQL Server 開啟 TDE](#TDE.Enabling)
+ [在 RDS for SQL Server 上加密資料](TDE.Encrypting.md)
+ [在 RDS for SQL Server 上備份與還原 TDE 憑證](TDE.BackupRestoreRDS.md)
+ [備份與還原內部部署資料庫的 TDE 憑證](TDE.BackupRestoreOnPrem.md)
+ [為 RDS for SQL Server 關閉 TDE](TDE.Disabling.md)

## 為 RDS for SQL Server 開啟 TDE
<a name="TDE.Enabling"></a>

若要開啟 RDS for SQL Server 資料庫執行個體的透明資料加密，請在與該資料庫執行個體關聯的 RDS 選項群組中指定 TDE 選項。

1. 判斷資料庫執行個體是否已與具有 TDE 選項的選項群組相關聯。若要檢視資料庫執行個體相關聯的選項群組，請使用 RDS 主控台、 [describe-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) AWS CLI 命令或 API 操作 [DescribeDBInstances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html)。

1.  如果資料庫執行個體並未與 TED 已開啟的選項群組關聯，則您有兩個選擇。您可以建立一個選項群組，並新增 TDE 選項，您也可以修改相關的選項群組，以增加該選項。
**注意**  
在 RDS 主控台中，此選項會命名為 `TRANSPARENT_DATA_ENCRYPTION`。在 AWS CLI 和 RDS API 中，它命名為 `TDE`。

   如需建立或修改選項群組的相關資訊，請參閱 [使用選項群組](USER_WorkingWithOptionGroups.md)。如需將選項新增至選項群組的相關資訊，請參閱[將選項新增至選項群組](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption)。

1.  建立資料庫執行個體與具有 TDE 選項之選項群組之間的關聯。如需使資料庫執行個體與選項群組產生關聯的相關資訊，請參閱[修改 Amazon RDS 資料庫執行個體](Overview.DBInstance.Modifying.md)。

### 選項群組考量
<a name="TDE.Options"></a>

TDE 選項是一個永續性選項。除非所有資料庫執行個體和備份均不再與選項群組相關聯，否則您無法將它從該選項群組中移除。一旦您將 TDE 選項新增至選項群組，該選項群組就只能與使用 TDE 的資料庫執行個體相關聯。如需選項群組中持續選項的詳細資訊，請參閱 [選項群組概觀](USER_WorkingWithOptionGroups.md#Overview.OptionGroups)。

因為 TDE 選項為持久性選項，所以在選項群組與相關聯的資料庫執行個體之間可能會發生衝突。在下列情況中會發生衝突：
+ 目前選項群組具有 TDE 選項，而且您可將其取代為沒有 TDE 選項的選項群組。
+ 您可以從資料庫快照還原至新的資料庫執行個體，其中沒有包含 TDE 選項的選項群組。如需此案例的詳細資訊，請參閱[選項群組的考量事項](USER_CopySnapshot.md#USER_CopySnapshot.Options)。

### SQL Server 效能考量
<a name="TDE.Perf"></a>

使用透明資料加密會影響 SQL Server 資料庫執行個體的效能。

如果資料庫位在至少有一個已加密資料庫的資料庫執行個體上，則未加密資料庫的效能會降低。因此，建議您將已加密和未加密資料庫保存在獨立的資料庫執行個體上。