

# RDS for SQL Server의 데이터 암호화
<a name="TDE.Encrypting"></a>

TDE 옵션을 옵션 그룹에 추가하면 Amazon RDS가 암호화 프로세스에 사용할 인증서를 생성합니다. 그러면 이 인증서를 사용하여 DB 인스턴스의 데이터베이스에 저장된 데이터를 암호화하는 SQL 문을 실행할 수 있습니다.

다음은 `RDSTDECertificateName`이라고 하는 RDS 생성 인증서를 사용하여 `myDatabase`라는 데이터베이스를 암호화하는 예제입니다.

```
 1. ---------- Turning on TDE -------------
 2. 
 3. -- Find an RDS TDE certificate to use
 4. USE [master]
 5. GO
 6. SELECT name FROM sys.certificates WHERE name LIKE 'RDSTDECertificate%'
 7. GO
 8. 
 9. USE [myDatabase]
10. GO
11. -- Create a database encryption key (DEK) using one of the certificates from the previous step
12. CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = AES_256
13. ENCRYPTION BY SERVER CERTIFICATE [RDSTDECertificateName]
14. GO
15. 
16. -- Turn on encryption for the database
17. ALTER DATABASE [myDatabase] SET ENCRYPTION ON
18. GO
19. 
20. -- Verify that the database is encrypted
21. USE [master]
22. GO
23. SELECT name FROM sys.databases WHERE is_encrypted = 1
24. GO
25. SELECT db_name(database_id) as DatabaseName, * FROM sys.dm_database_encryption_keys
26. GO
```

TDE를 사용하여 SQL Server 데이터베이스를 암호화하는 데 걸리는 시간은 몇 가지 요인에 따라 다릅니다. 여기에는 DB 인스턴스의 크기, 인스턴스가 프로비저닝된 IOPS 스토리지를 사용하는지 여부, 데이터 양 및 기타 요소가 포함됩니다.