在 RDS for SQL Server 上加密数据
将 TDE 选项添加到选项组后,Amazon RDS 将生成在加密过程中使用的证书。然后,您就可以使用该证书运行为数据库实例上的数据库加密数据的 SQL 语句。
下例使用 RDS 创建的、名为 RDSTDECertificateName
的证书加密名为 myDatabase
的数据库。
---------- Turning on TDE ------------- -- Find an RDS TDE certificate to use USE [master] GO SELECT name FROM sys.certificates WHERE name LIKE 'RDSTDECertificate%' GO USE [myDatabase] GO -- Create a database encryption key (DEK) using one of the certificates from the previous step CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = AES_256 ENCRYPTION BY SERVER CERTIFICATE [
RDSTDECertificateName
] GO -- Turn on encryption for the database ALTER DATABASE [myDatabase
] SET ENCRYPTION ON GO -- Verify that the database is encrypted USE [master] GO SELECT name FROM sys.databases WHERE is_encrypted = 1 GO SELECT db_name(database_id) as DatabaseName, * FROM sys.dm_database_encryption_keys GO
使用 TDE 加密 SQL Server 数据库所花的时间取决于几个因素。其中包括数据库实例的大小、实例是否使用预调配 IOPS、数据量及其他因素。