다음을 통해 공유


Azure Cosmos DB for MongoDB vCore의 데이터베이스 보안 개요

적용 대상: MongoDB vCore

이 문서에서는 데이터베이스 보안 모범 사례 및 데이터베이스 위반을 차단, 검색 및 대응하기 위해 Azure Cosmos DB for MongoDB vCore에서 제공하는 주요 기능에 대해 설명합니다.

Azure Cosmos DB for MongoDB vCore 보안의 새로운 기능

이제 휴지 상태의 암호화를 대부분의 Azure 지역에서 Azure Cosmos DB for MongoDB vCore에 저장된 문서 및 백업에 대해 사용할 수 있습니다. 이러한 영역의 신규 및 기존 고객에 대해 미사용 데이터의 암호화가 자동으로 적용됩니다. 아무것도 구성할 필요가 없습니다. 이전과 동일한 대기 시간, 처리량, 가용성, 기능과 함께 미사용 데이터를 암호화해 안전하게 보호하는 이점을 얻을 수 있습니다. Azure Cosmos DB for MongoDB vCore 클러스터에 저장된 데이터는 서비스 관리형 키를 사용하여 Microsoft에서 관리하는 키로 자동으로 원활하게 암호화됩니다.

내 데이터베이스를 보호하는 방법

데이터 보안은 사용자, 고객 그리고 데이터베이스 공급자 간의 공동 책임입니다. 선택한 데이터베이스 공급자에 따라 담당하는 책임의 양이 달라질 수 있습니다. 온-프레미스 솔루션을 선택한 경우 끝점 보호부터 하드웨어의 물리적 보안까지 모든 항목을 제공해야 하며 이것은 쉬운 작업이 아닙니다. Azure Cosmos DB와 같은 PaaS 클라우드 데이터베이스 공급자를 선택할 경우 관여해야 하는 부분이 상당히 줄어듭니다. 다음 그림은 Microsoft의 클라우드 컴퓨팅에 대한 공유 책임 백서를 인용한 것으로 Azure Cosmos DB와 같은 PaaS 공급자를 사용할 경우 사용자가 작업할 부분이 어떻게 줄어드는지를 보여 줍니다.

고객 및 데이터베이스 공급자 책임 스크린샷.

이전 다이어그램은 대략적인 클라우드 보안 구성 요소를 보여주지만 데이터베이스 솔루션에 대해 특히 고려해야 하는 항목은 무엇일까요? 또한 솔루션을 서로 어떻게 비교해볼 수 있나요?

데이터베이스 시스템을 비교하는 데 다음 요구 사항 검사 목록을 사용하는 것이 좋습니다.

  • 네트워크 보안 및 방화벽 설정
  • 사용자 인증 및 세분화된 사용자 제어
  • 지역별 오류에 대해 전역으로 데이터를 복제하는 기능
  • 데이터 센터 간의 장애 조치(failover) 기능
  • 데이터 센터 내에서 로컬 데이터 복제
  • 자동 데이터 백업
  • 백업에서 삭제된 데이터 복원
  • 중요한 데이터 보호 및 격리
  • 공격 모니터링
  • 공격에 대응
  • 지오-펜스 데이터가 데이터 관리 제한을 준수하는 기능
  • 보호된 데이터 센터에서 서버의 물리적 보호
  • 인증

명백해 보일지 모르지만, 최근의 대규모 데이터베이스 침해는 다음과 같은 요구 사항의 간단하지만 민감한 중요성을 상기시켜 줍니다.

  • 최신 상태로 유지되는 패치된 서버
  • HTTPS(기본값)/TLS 암호화
  • 강력한 암호를 사용하는 관리 계정

Azure Cosmos DB에서 내 데이터베이스를 보호하는 방법

Azure Cosmos DB for MongoDB vCore는 이러한 모든 보안 요구 사항을 원활하게 충족합니다.

구체적으로 자세히 살펴보겠습니다.

보안 요구 사항 Azure Cosmos DB의 보안 접근 방식
네트워크 보안 IP 방화벽을 사용하는 것이 데이터베이스를 보호하기 위한 첫 번째 보호 계층입니다. Azure Cosmos DB for MongoDB vCore는 인바운드 방화벽 지원을 위해 정책 중심 IP 기반 액세스 제어를 지원합니다. IP 기반 액세스 제어는 기존 데이터베이스 시스템에서 사용하는 방화벽 규칙과 유사합니다. 단, 승인된 컴퓨터 또는 클라우드 서비스 집합에서만 Azure Cosmos DB for MongoDB vCore 클러스터에 액세스할 수 있도록 확장되었습니다.

Azure Cosmos DB for MongoDB vCore를 통해 특정 IP 주소(168.61.48.0), IP 범위(168.61.48.0/8), IP와 범위 조합을 사용하도록 할 수 있습니다.

이 허용된 목록 이외의 컴퓨터에서 보내는 모든 요청은 Azure Cosmos DB for MongoDB vCore에서 차단됩니다. 승인된 컴퓨터 및 클라우드 서비스에서 보내는 요청은 리소스에 대한 액세스 제어를 부여 받기 위해 인증 과정을 완료해야 합니다.

로컬 복제 단일 데이터 센터 내에서도 Azure Cosmos DB for MongoDB vCore는 LRS를 사용하여 데이터를 복제합니다. HA 지원 클러스터에는 주 노드와 보조 노드 간에 또 다른 복제 계층이 있으므로 99.995%의 가용성 SLA가 보장됩니다.
자동 온라인 백업 Azure Cosmos DB for MongoDB vCore 데이터베이스는 정기적으로 백업되며 지역 중복 저장소에 저장됩니다.
삭제된 데이터 복원 자동 온라인 백업을 사용하여 실수로 삭제한 데이터를 이벤트 후 최대 7일 이내에 복구할 수 있습니다.
중요한 데이터 보호 및 격리 이제 새로운 기능에 나열된 지역의 모든 데이터가 미사용 상태에서 암호화됩니다.
공격 모니터 감사 로깅 및 활동 로그를 사용하여 계정에서 정상 및 비정상적인 활동을 모니터링할 수 있습니다. 리소스에 대해 수행된 작업을 볼 수 있습니다. 이 데이터에는 작업을 시작한 사람, 작업이 발생한 시기, 작업 상태 등이 포함됩니다.
공격에 대응 잠재적인 공격을 보고하기 위해 Azure 지원에 연락한 경우 5단계 인시던트 대응 프로세스가 시작됩니다. 5단계 프로세스의 목표는 정상적인 서비스 보안 및 작업을 복원하는 것입니다. 5단계 프로세스는 문제가 검색되어 조사가 시작된 후 가능한 한 빨리 서비스를 복원합니다.

클라우드에서 Microsoft Azure의 보안 대응에 대한 자세한 정보
보호된 기능 Azure Cosmos DB for MongoDB vCore의 데이터는 SSD의 Azure 보호된 데이터 센터에 저장됩니다.

Microsoft 글로벌 데이터 센터에 대한 자세한 정보
HTTPS/SSL/TLS 암호화 MongoDB용 Azure Cosmos DB vCore는 최대 1.3(포함)의 TLS 수준을 지원합니다.
서버 측에서 최소 TLS 수준을 적용할 수 있습니다.
전송 중 암호화 암호화(SSL/TLS)는 항상 적용되며 암호화 없이 클러스터에 연결하려고 하면 해당 시도가 실패합니다. MongoDB 클라이언트를 통한 연결만 허용되며 암호화는 항상 적용됩니다. 데이터가 Azure Cosmos DB for MongoDB vCore에 기록될 때마다 전송 계층 보안 1.3을 사용하여 전송 중인 데이터가 암호화됩니다.
미사용 데이터 암호화 Azure Cosmos DB for MongoDB vCore는 미사용 데이터의 스토리지 암호화를 위해 FIPS 140-2 유효성 검사 암호화 모듈을 사용합니다. 모든 백업을 포함한 데이터는 임시 파일을 포함하여 디스크에서 암호화됩니다. 서비스는 Azure 스토리지 암호화에 포함된 AES 256비트 암호화를 사용하며, 키는 시스템에서 관리됩니다. 스토리지 암호화는 항상 켜져 있고 해제할 수 없습니다.
패치된 서버 Azure Cosmos DB for MongoDB vCore는 자동으로 수행되기 때문에 클러스터를 관리하고 패치할 필요가 없습니다.
강력한 암호를 사용하는 관리 계정 이 요구 사항은 당연하게 여겨질 수 있지만, 일부 경쟁업체와 달리 Azure Cosmos DB for MongoDB vCore에서는 관리 계정에 반드시 암호가 있어야 합니다.

TLS 암호 기반 인증을 통한 보안이 기본적으로 반영됩니다.
보안 및 데이터 보호 인증서 최신 인증 목록을 보려면 Azure 규정 준수와 Azure Cosmos DB를 비롯한 모든 Azure 인증에 대한 최신 Azure 규정 준수 문서를 참조하세요.

다음 스크린샷은 감사 로깅 및 활동 로그를 사용하여 계정을 어떻게 모니터링할 수 있는지 보여 줍니다. Azure Cosmos DB에 대한 활동 로그 스크린샷.

네트워크 보안 옵션

이 섹션에서는 클러스터에 대해 구성할 수 있는 다양한 네트워크 보안 옵션에 대해 설명합니다.

권한 없음

액세스 없음은 공용 또는 프라이빗 액세스가 사용하도록 설정되지 않은 경우 새로 만들어진 클러스터의 기본 옵션입니다. 이 경우 Azure 내부 또는 외부에 관계없이 어떤 컴퓨터도 데이터베이스 노드에 연결할 수 없습니다.

방화벽을 사용한 공용 IP 액세스

공용 액세스 옵션에서는 공용 IP 주소가 클러스터에 할당되고 클러스터에 대한 액세스는 방화벽으로 보호됩니다.

방화벽 개요

Azure Cosmos DB for MongoDB vCore는 서버 수준 방화벽을 사용하여 권한이 있는 컴퓨터를 지정할 때까지 클러스터에 대한 모든 액세스를 방지합니다. 방화벽은 각 요청이 시작된 IP 주소의 서버에 대한 액세스를 허용합니다. 방화벽을 구성하려면 허용 가능한 IP 주소 범위를 지정하는 방화벽 규칙을 생성해야 합니다.

방화벽 규칙을 사용하면 클라이언트가 클러스터와 그 안에 있는 모든 데이터베이스에 액세스할 수 있습니다. 서버 수준 방화벽 규칙은 Azure Portal을 사용하거나 Azure CLI와 같은 Azure 도구를 사용하여 프로그래밍 방식으로 구성할 수 있습니다.

기본적으로 방화벽은 클러스터에 대한 모든 액세스를 차단합니다. 다른 컴퓨터에서 클러스터를 사용하려면 클러스터에 액세스할 수 있도록 하나 이상의 서버 수준 방화벽 규칙을 지정해야 합니다. 방화벽 규칙을 사용하여 허용할 인터넷에서의 IP 주소 범위를 지정합니다. 방화벽 규칙은 Azure Portal 웹 사이트 자체에 대한 액세스에 영향을 주지 않습니다. 인터넷 및 Azure에서의 연결 시도는 데이터베이스에 도달하기 전에 먼저 방화벽을 통과해야 합니다. 방화벽 규칙 외에도 Azure Cosmos DB for MongoDB vCore 클러스터에만 개인 IP에 사용할 수 있는 프라이빗 링크 액세스가 있습니다.

다음 단계