분류

Couchbase Server의 데이터 암호화

카우치베이스 서버를 사용한 데이터 암호화

점점 더 많은 데이터가 카우치베이스에 저장되면서 빅데이터 보안이 최근 화두가 되고 있습니다. 모든 업종과 공공 부문의 조직은 민감한 데이터 자산을 보호해야 하는 과제를 안고 있으며, 그렇지 않을 경우 심각한 처벌을 받게 됩니다. 최근 내부자 위협 보고서에서 에서 발표한 보고서에 따르면 미국 기업의 93%가 내부자 위협에 취약한 것으로 나타났습니다. 데이터 암호화 는 민감한 데이터 액세스를 방지하는 효과적인 방법이며 내부 보안 공격을 포함한 많은 규제 표준에서 중요한 보안 제어가 되었습니다. 이 블로그에서는 Couchbase 앱의 민감한 데이터를 보호할 수 있는 여러 단계에 대해 설명합니다.

 

애플리케이션에서 데이터 암호화

데이터가 서버로 전송되기 전에도 애플리케이션 내부에서 데이터를 암호화할 수 있습니다. Couchbase의 데이터 모델을 사용하면 JSON 문서와 바이너리 데이터(예: 암호화된 블롭)를 모두 저장할 수 있습니다. 여러 면에서 앱은 민감한 정보인지 아닌지를 정확히 파악하고 선택적으로 보호 기능을 적용할 수 있기 때문에 데이터를 암호화하기에 가장 좋은 장소입니다. 앱에서 데이터를 암호화하려면 암호화 키가 필요하며 이 키는 보안 키 링을 사용하거나 하드웨어 보안 모듈(HSM)에서 비밀로 유지해야 합니다. 자체 암호화 알고리즘을 구현하는 것은 결코 좋은 생각이 아니며 앱에서 데이터를 암호화하려면 표준 암호화 라이브러리를 사용해야 합니다. 예를 들어, 보메트릭은 애플리케이션 암호화 라이브러리를 제공합니다. 사내 암호화 및 키 관리 솔루션을 구현하는 복잡성과 위험 없이 사용할 수 있는 솔루션입니다.  

 

샘플 파이썬도 잊지 마세요. 코드 를 사용하여 Couchbase의 필드 수준에서 데이터를 암호화할 수 있습니다.

 

이동 중인 데이터 암호화

데이터가 클라이언트와 서버 간에 이동하는 경우

따라서 데이터가 유선으로 전송되는 경우, 연결을 도청하는 중간자 공격자로부터 데이터를 보호해야 합니다. 카우치베이스 SDK 2.0 이상에서는 클라이언트-서버 통신에 SSL을 사용하여 암호화된 데이터 액세스가 가능합니다. 아래 이미지와 같이 SSL이 없으면 클라이언트와 서버 간의 연결에 대한 간단한 와이어샤크 프로브만으로도 상당한 양의 민감한 정보가 드러날 수 있습니다.

 

SSL을 활성화하면 서버와 주고받는 데이터는 클라이언트 인증서 저장소에 구성 및 저장된 서버 인증서를 사용하여 암호화됩니다. 조직의 보안 요구 사항에 따라 주기적으로 SSL 인증서를 다시 생성하는 것이 좋은 보안 모범 사례입니다.

 

암호화된 데이터 액세스 외에도 Couchbase 3.0은 보안 관리자 액세스도 지원합니다. 이를 통해 관리자는 공용 네트워크를 통해서도 브라우저를 통해 Couchbase Server를 안전하게 탐색하고 관리할 수 있습니다. 그렇다면 와이어샤크에서 암호화된 연결은 어떤 모습일까요? 아래 와이어샤크 스크린샷을 살펴보세요.

 

Screen Shot 2015-02-16 at 3.12.34 PM.png

 

클러스터 내 서버 간에 데이터가 이동하는 경우

앱에서 데이터를 연중무휴 24시간 사용할 수 있어야 합니다. 즉, 클러스터에서 서버가 죽더라도 앱은 데이터에 계속 액세스할 수 있어야 합니다. 고가용성을 위해 Couchbase는 클러스터 내 및 데이터센터 간에 데이터를 복제하며, 클러스터 내에서는 Couchbase에 저장된 모든 문서를 최대 3회까지 복제할 수 있습니다. 모든 민감한 데이터가 문서에 이미 암호화되어 있는 경우, 복제본은 그대로 전송되어 저장됩니다(즉, 암호화됨). 보안을 강화하려면 Couchbase 서버 노드 간 네트워크에서 IPSec을 사용하는 것이 좋습니다.

 

데이터가 데이터센터 간에 이동하는 경우

서로 다른 지역에 데이터센터가 있고 데이터센터 간에 민감한 데이터가 이동하는 것이 걱정되는 경우 Couchbase의 보안 XDCR(데이터센터 간 복제) 기능을 사용할 수 있습니다. 보안 XDCR을 사용하면 SSL 연결을 사용하여 두 데이터 센터 간의 트래픽을 암호화할 수 있습니다. 보안 데이터센터 간 복제(XDCR)를 사용하면 소스 및 대상 데이터센터의 모든 트래픽이 암호화됩니다. 암호화에는 추가 CPU 사이클이 필요하므로 CPU 부하가 약간 증가합니다. 조직의 보안 정책에 따라 XDCR 인증서를 주기적으로 교체하는 것이 좋은 보안 관행입니다.

 

디스크 내 데이터 암호화

보메트릭은 강력한 정책 기반의 투명한 암호화 솔루션을 제공합니다. Vormetric을 사용하면 Couchbase의 민감한 데이터가 디스크에 저장된 상태로 암호화됩니다. 따라서 데이터베이스를 도난, 복사, 분실하거나 부적절하게 액세스하더라도 데이터가 손상되지 않도록 보장합니다.

 

이 솔루션은 스토리지 계층에 설치되어 데이터를 투명하게 암호화하는 보메트릭 에이전트를 포함합니다. 에이전트는 물리적/가상 어플라이언스일 수 있는 분산형 데이터 보안 관리자와 통신하며 암호화 키를 안전하게 저장하는 역할을 담당합니다. 카우치베이스는 애플리케이션이나 데이터베이스를 변경하지 않고 민감한 정보를 스토리지 계층에 읽고 씁니다.

 

Screen Shot 2015-02-16 at 3.28.05 PM.png

보메트릭과 카우치베이스의 협업 방식에 대해 자세히 알아보시려면, 저희의 예정된 라이브 웨비나.

이 문서 공유하기
받은 편지함에서 카우치베이스 블로그 업데이트 받기
이 필드는 필수 입력 사항입니다.

작성자

게시자 돈 핀토, 수석 제품 관리자, Couchbase

Don Pinto is a Principal Product Manager at Couchbase and is currently focused on advancing the capabilities of Couchbase Server. He is extremely passionate about data technology, and in the past has authored several articles on Couchbase Server including technical blogs and white papers. Prior to joining Couchbase, Don spent several years at IBM where he maintained the role of software developer in the DB2 information management group and most recently as a program manager on the SQL Server team at Microsoft. Don holds a master's degree in computer science and a bachelor's in computer engineering from the University of Toronto, Canada.

댓글 남기기

카우치베이스 카펠라를 시작할 준비가 되셨나요?

구축 시작

개발자 포털에서 NoSQL을 살펴보고, 리소스를 찾아보고, 튜토리얼을 시작하세요.

카펠라 무료 사용

클릭 몇 번으로 Couchbase를 직접 체험해 보세요. Capella DBaaS는 가장 쉽고 빠르게 시작할 수 있는 방법입니다.

연락하기

카우치베이스 제품에 대해 자세히 알고 싶으신가요? 저희가 도와드리겠습니다.