티스토리 뷰

SQL Database V12 – 투명한 데이터 암호화(Transparent Data Encryption)

 

이번 글에서는 Azure SQL Database V12에서 투명한 데이터 암호화(TDE)를 지원하는 내용을 살펴보겠습니다. 보다 더 자세한 정보는 아래 링크를 참고할 수 있습니다.

https://msdn.microsoft.com/library/0bf7e8ff-1416-4923-9c4c-49341e208c62.aspx

 

Azure SQL Database V12의 새로운 기능에 대한 내용은 아래 링크를 참고할 수 있습니다.

https://azure.microsoft.com/ko-kr/documentation/articles/sql-database-v12-whats-new/

 

투명한 데이터 암호화(TDE) 설정하는 방법은 여러 가지 방법이 있습니다.

l  미리보기 포털

l  T-SQL 구문

l  PowerShell 스크립트

 

투명한 데이터 암호화(TDE) 설정은 미리보기 포털을 통해서 액세스 해보겠습니다.

1.     https://portal.azure.com 로 이동하여 V12 데이터베이스로 이동합니다.

2.     해당 데이터베이스 메뉴에서 모든 설정 메뉴를 클릭하면 투명한 데이터 암호화 메뉴를 볼 수 있습니다.
 

3.     미리 보기 조건을 수락해야 사용할 수 있습니다. 미리 보기 조건을 클릭하고 체크하고 확인을 클릭합니다.
   

4.     데이터 암호화 설정 메뉴를 선택하고 저장을 클릭하면 됩니다.   

5.     암호화 진행 메뉴를 살펴볼 수 있습니다.   

6.     암호화가 완료되면 아래 그림처럼 암호화됨상태를 확인할 수 있습니다.   

7.     T-SQL로 암호화 상태를 확인할 수 있습니다. sys.dm_database_encryption_keys 뷰의 encryption_state 값을 통해서 확인이 가능합니다. 뷰의 자세한 정보는 아래 링크를 참고할 수 있습니다.

SELECT * FROM  sys.dm_database_encryption_keys

 

https://msdn.microsoft.com/ko-kr/library/bb677274.aspx

  

 

암호화 되어 있는 데이터베이스의 경우 포털 이미지에 열쇠 표시로 나타납니다.

추가로 T-SQL 구문으로는 아래와 같은 구문으로 투명한 데이터 암호화(TDE) 설정이 가능합니다.

 

-- database encryption key 생성

CREATE DATABASE ENCRYPTION KEY

WITH ALGORITHM = AES_256

ENCRYPTION BY SERVER CERTIFICATE ##MS_TdeCertificate##;

 

-- 암호화 설정

ALTER DATABASE [AdventureWorksLT] SET ENCRYPTION ON;

GO

 

 

투명한 데이터 암호화(TDE) 설정은 지리적 복제, 특정 시점 복원, 삭제된 데이터베이스로부터 복원, 데이터베이스 복사 등에서도 설정이 상속되어 복호화 등의 설정은 필요 없습니다.

그래서 간단하게 다른 서버로 데이터베이스를 복사하여 설정을 확인해보았습니다. 

 

그러나 Bac 로 내보내기하여 다시 가져오기할 경우는 암호화되어 내보내는 것은 아니라고 설명이 되어 있어 테스트를 해보았습니다. 암호화되어 있지 않은 것으로 나타납니다.

 

Bac 파일 같은 경우 로컬로 복사할 수도 있어 다른 서버에 복원할 경우 복원이 된다는 것이 생각과는 다르며 Azure TDE 미리보기와 로컬 TDE와 차이가 있습니다. 이점은 고려해야 할 사항입니다.

 

댓글