在 Amazon RDS for SQL Server 中啟用透明資料加密 - AWS Prescriptive Guidance

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

在 Amazon RDS for SQL Server 中啟用透明資料加密

由蘭加·切魯庫里 (AWS) 創建

建立者:AWS

環境:PoC 或試驗

技術:資料庫;安全、身份、合規

工作負載:微軟

AWS 服務:Amazon RDS

Summary

此模式描述如何在 Amazon 關聯式資料庫服務 (Amazon RDS) 中實作透明資料加密 (TDE),讓 SQL 伺服器加密靜態資料。

先決條件和限制

先決條件

  • 作用中的 AWS 帳戶

  • Amazon RDS for SQL Server 資料庫執行個體

產品版本

Amazon RDS 目前支援下列 SQL Server 版本的 TDE:

  • SQL Server 2012 Enterprise Edition

  • SQL Server 2014 Enterprise Edition

  • SQL Server 2016 Enterprise Edition

  • SQL Server 2017 Enterprise Edition

如需支援版本和版本的最新資訊,請參閱支援 SQL Server 的透明資料加密在 Amazon RDS 文檔中。

Architecture

技術堆疊

  • Amazon RDS for SQL Server

架構

Tools

工具

  • SSMS-微軟 SQL Server Management Studio (SSMS) 是用於管理 SQL Server 基礎架構的集成環境。它提供了一個使用者介面和一組工具與 SQL Server 互動的豐富指令碼編輯器。

Code

查詢以獲取默認證書名稱:

USE [master] GO SELECT name FROM sys.certificates WHERE name LIKE 'RDSTDECertificate%' GO

查詢以建立資料庫加密金鑰 (您可以指定 AES_256 演算法,而不是 AES_128):

USE [Databasename] GO CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = AES_128 ENCRYPTION BY SERVER CERTIFICATE [certificatename] GO

啟用資料庫加密的查詢:

ALTER DATABASE [Database Name] SET ENCRYPTION ON GO

查詢以檢查加密狀態:

SELECT DB_NAME(database_id) AS DatabaseName, encryption_state, percent_complete FROM sys.dm_database_encryption_keys

Epics

任務描述所需技能
開啟 Amazon RDS 主控台。

登入 AWS 管理主控台,開啟位於 https://console.aws.amazon.com/rds/ 的 Amazon RDS 主控台。

開發人員,DBA
建立選項群組。

在導覽窗格中,選擇 Option group (選項群組),建立群組。選擇 sqlserver ee 作為數據庫引擎,並選擇您選擇的引擎版本。

開發人員,DBA
新增「透明 _ 資料加密」選項。

編輯您建立的選項群組,並加入名為「透明 _ 資料加密」的選項。

開發人員,DBA
任務描述所需技能
選擇資料庫執行個體。

在 Amazon RDS 主控台的導覽窗格中選擇 Database (資料庫),然後選擇您要與選項群組產生關聯的資料庫執行個體。

開發人員,DBA
建立資料庫執行個體與選項群組之間的關聯。

選擇 [修改],然後使用 [選項] 群組設定,將 SQL Server 資料庫執行個體與您先前建立的選項群組產生關聯。

開發人員,DBA
套用變更。

視需要立即套用變更,或等到下個維護時段再套用。

開發人員,DBA
取得憑證名稱。

使用 [工具] 區段中顯示的查詢,取得預設憑證名稱。

開發人員,DBA
任務描述所需技能
使用 SSMS Connect 到 Amazon RDS for SQL Server 資料庫執行個體。

如需說明,請參閱 < 參考 > 一節中的 SSMS 文件連結。

開發人員,DBA
使用預設憑證建立資料庫加密金鑰。

使用您先前取得的預設憑證名稱來建立資料庫加密金鑰。使用「工具」段落中提供的 T-SQL 查詢來建立資料庫加密金鑰。您可以指定 AES_256 演算法,而不是指定 AES_128 演算法。

開發人員,DBA
在資料庫上啟用加密。

使用 [工具] 區段中提供的 T-SQL 查詢來啟用資料庫加密。

開發人員,DBA
檢查加密狀態。

使用 [工具] 區段中提供的 T-SQL 查詢來檢查加密狀態。

開發人員,DBA