본문 바로가기

nCipher HSM (Thales-HSM )

Microsoft MS-SQL TDE (EKM 키 관리)


최근 오라클 TDE와 HSM을 같이 활용하여 암호화 하는 방법을 많은 기업에서 도입 중에 있습니다. MS-SQL에서도 오라클 TDE와 같은 자체 암호화 기능이 있을까요?


MS-SQL에서도 자체 암호화 옵션과 키 관리 기능이 있습니다. Microsoft에서도 암호화 키 관리는 HSM에 하는 것이 안전하다고 권고하고 있습니다.

MS-SQL 서버에서도 HSM을 이용하여 강력한 암호화와 안전한 키 관리를 할 수 있습니다. MS-SQL 서버에서는 이러한 암호화 키 관리 기능을 EKM(확장 가능 키 관리)라고 하고 있습니다. 자세한 내용은 아래의 SQL Server 2014 매뉴얼을 참조하시기 바랍니다. 


아래의 원본 링크를 참조하시거나 아래에 MS SQL Server 라이브러리를 옮긴글을 참조하시기 바랍니다.

※ 참조 문서 원본 : SQL Server 및 데이터베이스 암호화 키 - EKM 확장 가능 키 관리



EKM (확장 가능 키 관리)

SQL Server에서는 암호화 및 키 생성용 MSCAPI(Microsoft Cryptographic API) 공급자를 사용하여 EKM(확장 가능 키 관리)과 함께 데이터 암호화 기능을 제공합니다. 데이터 및 키 암호화를 위한 암호화 키는 임시 키 컨테이너에서 생성되며 데이터베이스에 저장되기 전에 공급자로부터 내보내져야 합니다. 이 방법을 사용하면 SQL Server에서 암호화 키 계층 및 키 백업을 포함한 키 관리를 처리할 수 있습니다.


규정 준수에 대한 요구와 데이터에 포함된 개인 정보 보호에 대한 관심이 증가함에 따라 조직에서는 "심층 방어" 솔루션을 제공하기 위해 암호화를 활용하고 있습니다. 일반적으로 이 방법은 데이터베이스 암호화 관리 도구만 사용하므로 유용한 방법이 아닙니다. 하드웨어 공급업체에서는 HSM(하드웨어 보안 모듈)을 사용하여 엔터프라이즈 키 관리를 해결하는 제품을 제공합니다. HSM 장치는 하드웨어나 소프트웨어 모듈에 암호화 키를 저장합니다. 이 방법은 암호화 키와 암호화 데이터가 별도로 보관되므로 더욱 안전한 솔루션입니다.


많은 공급업체에서 키 관리와 암호화 가속 둘 다를 위해 HSM을 제공합니다. HSM 장치는 응용 프로그램과 HSM 간의 매개자로 서버 프로세스가 포함된 하드웨어 인터페이스를 사용합니다. 또한 공급업체는 하드웨어나 소프트웨어일 수 있는 해당 모듈을 통해 MSCAPI 공급자를 구현합니다. 일반적으로 MSCAPI는 HSM에서 제공하는 기능의 하위 집합만 제공합니다. 또한 공급업체는 HSM, 키 구성 및 키 액세스를 위해 관리 소프트웨어를 제공할 수도 있습니다.


HSM 구현은 공급업체마다 다르며 SQL Server에서 사용하려면 공용 인터페이스가 필요합니다. MSCAPI는 이 인터페이스를 제공하지만 HSM 기능의 하위 집합만 지원합니다. 이외에도 MSCAPI에는 기본적으로 대칭 키를 지속할 수 없고 세션 지향이 지원되지 않는 등의 제한 사항이 있습니다.


SQL Server 확장 가능 키 관리를 사용하면 타사 EKM/HSM 공급업체가 SQL Server에 해당 모듈을 등록할 수 있습니다. EKM 모듈이 등록되면 SQL Server에서 이러한 모듈에 저장된 암호화 키를 사용할 수 있고, 이를 통해 SQL Server에서 이러한 모듈이 지원하는 대량 암호화 및 암호 해독 같은 고급 암호화 기능과 키 에이징 및 키 회전 같은 키 관리 함수에 액세스할 수 있습니다.




EKM 구성

일부 Microsoft SQL Server 버전에서는 확장 가능 키 관리를 사용할 수 없습니다. SQL Server 버전에서 지원하는 기능 목록을 보려면 SQL Server 2014 버전에서 지원하는 기능을 참조하십시오.

기본적으로 확장 가능 키 관리는 해제되어 있습니다. 이 기능을 사용하도록 설정하려면 다음 예와 같이 다음 옵션과 값이 포함된 sp_configure 명령을 사용합니다.



sp_configure 'show advanced', 1

GO

RECONFIGURE

GO

sp_configure 'EKM provider enabled', 1

GO

RECONFIGURE

GO



※ 참고 : EKM을 지원하지 않는 SQL Server 버전에서 이 옵션에 대해 sp_configure 명령을 사용할 경우 오류가 수신됩니다.

기능을 사용하지 않으려면 값을 0으로 설정합니다. 서버 옵션을 설정하는 방법은 sp_configure(Transact-SQL)를 참조하십시오.




EKM 사용 방법

SQL Server 확장 가능 키 관리를 사용하면 데이터베이스 파일을 보호하는 암호화 키를 스마트 카드, USB 장치 또는 EKM/HSM 모듈과 같은 외부 장치에 저장할 수 있을 뿐 아니라 데이터베이스 관리자(sysadmin 그룹의 멤버 제외)로부터 데이터를 보호할 수도 있습니다. 즉, 외부 EKM/HSM 모듈에서 데이터베이스 사용자만 액세스할 수 있는 암호화 키를 사용하여 데이터를 암호화할 수 있습니다.


또한 확장 가능 키 관리는 다음과 같은 이점을 제공합니다.

  • 추가 권한 확인(의무 분리 가능)
  • 하드웨어 기반 암호화/암호 해독의 성능 향상
  • 외부 암호화 키 생성
  • 외부 암호화 키 저장(데이터와 키의 물리적 분리)
  • 암호화 키 검색
  • 외부 암호화 키 보존(암호화 키 회전 사용)
  • 더 쉬워진 암호화 키 복구
  • 안전한 암호화 키 삭제
  • 관리 가능한 암호화 키 배포

사용자 이름과 암호 조합 또는 EKM 드라이버에서 정의한 다른 메서드에 확장 가능 키 관리를 사용할 수 있습니다.
※ 주의 : 문제 해결을 위해 Microsoft 기술 지원 서비스에 EKM 공급자의 암호화 키를 제공하거나 공급업체 도구나 프로세스에 액세스해야 할 수 있습니다.



EKM 장치를 사용한 인증
EKM 모듈은 둘 이상의 인증 유형을 지원할 수 있습니다. 각 공급자는 SQL Server에 한 가지 유형의 인증만 제공합니다. 즉, 모듈에서 기본 또는 기타 인증 유형을 지원하는 경우 둘 다가 아닌 둘 중 하나만 제공합니다.

사용자 이름/암호를 통한 EKM 장치별 기본 인증
username/password 쌍을 사용하여 기본 인증을 지원하는 EKM 모듈의 경우 SQL Server에서 자격 증명을 사용하여 투명한 인증을 제공합니다. 자격 증명에 대한 자세한 내용은 자격 증명(데이터베이스 엔진)을 참조하십시오.

로그온할 때마다 EKM 공급자에 대해 자격 증명을 만든 후 로그인(Windows 및 SQL Server 계정 모두)에 매핑하여 EKM 모듈에 액세스할 수 있습니다. 자격 증명의 Identify 필드에는 사용자 이름이 포함되고 secret 필드에는 EKM 모듈에 연결할 암호가 포함됩니다.

EKM 공급자에 대해 매핑된 로그인 자격 증명이 없으면 SQL Server 서비스 계정에 매핑된 자격 증명이 사용됩니다.

자격 증명이 고유한 EKM 공급자에 대해 사용되는 경우 로그인에 여러 개의 매핑된 자격 증명이 있을 수 있습니다. 로그인별로 각 EKM 공급자에 하나의 매핑된 자격 증명만 있어야 합니다. 동일한 자격 증명이 다른 로그인에 매핑될 수 있습니다.

다른 유형의 EKM 장치별 인증
Windows 또는 user/password 조합 이외의 인증을 사용하는 EKM 모듈의 경우 SQL Server와는 별도로 인증이 수행되어야 합니다.




오라클 TDE 사용 기업뿐만 아니라, MS-SQL Server를 사용하시는 기업에서도 EKM 기능과 HSM을 연동하여 강력한 데이터베이스 보안 시스템 구축이 가능합니다.

전세계 암호화장비 시장 점유율 1위인 Thales E-security의 HSM으로 MS-SQL Server에서도 강력한 데이터베이스 보안 솔루션을 구축하시기 바랍니다.




전 세계 암호화장비 시장점유율 1위 Thales e-security 제품 한국 총판 아이마켓코리아