데이터 상주 개요

이 주제에서는 Cloud SQL을 사용하여 데이터 상주 요구사항을 적용하는 방법을 간략하게 설명합니다.

데이터 상주란 데이터의 물리적 위치와 데이터에 적용되는 현지 규정을 의미합니다.

전통적인 온프레미스 환경에서는 데이터 상주가 다양한 구성요소에 의해 통합되고 처리됩니다. 예를 들어 회사에서 토큰화 게이트웨이를 클라우드 액세스 보안 브로커(CASB)로 호스팅하여 해외로 전송하기 전에 애플리케이션 데이터를 보호할 수 있습니다. Google Cloud에서는 데이터 상주가 Cloud SQL을 비롯한 여러 Google Cloud 서비스에서 처리됩니다.

지역과 개인 정보 보호의 관련성이 커지고 있기 때문에 Google Cloud에서 데이터 상주를 지원하는 것이 중요합니다. 지역별 개인 정보 보호의 차이를 고려하는 데이터 상주가 고객의 지역별 개인 정보 보호를 개선하는 데 도움이 됩니다.

클라우드 컴퓨팅의 데이터 상주

데이터 상주와 관련해 알아야 할 문제를 몇 가지 소개합니다.

  • 회사 사용자가 데이터의 물리적 위치를 모르면 현지 규정도 알 수가 없습니다. 각 위치의 데이터 상주 정책을 조사하려면 사용자가 데이터 센터의 위치를 알아야 합니다.
  • 회사 사용자 및 제공업체가 서비스 수준 계약(SLA)을 사용하여 허용되는 위치를 설정할 수 있습니다. 하지만 SLA 약관과 다른 리전에 데이터를 저장해야 한다면 어떻게 해야 할까요?
  • 사용자의 데이터, 클라우드 프로젝트에서 사용하는 모든 서비스 및 리소스가 호스트 국가의 데이터 상주 규정을 준수하는지 확인해야 합니다.
    • 데이터 및 암호화 키를 저장할 위치를 결정하려면 어떻게 해야 하나요?
    • 사용자가 데이터에 액세스할 수 있는 위치를 결정하려면 어떻게 해야 하나요?

Cloud SQL을 포함한 Google Cloud 서비스에서는 다음과 같은 작업이 가능하여 이러한 문제가 해결됩니다.

  • 데이터의 스토리지 위치를 설정합니다. Cloud SQL 인스턴스를 만들 때 리전을 선택하거나 기존 인스턴스를 수정하여 리전을 수정할 수 있습니다.
  • Cloud SQL의 리전 간 읽기 복제본 기능을 사용하여 지정된 리전의 데이터 상주 표준을 충족합니다.
  • 사용자가 데이터에 액세스할 수 있는 네트워크 위치는 물론 이 데이터에 대한 클라우드 관리자의 액세스도 제어할 수 있습니다.

위의 Cloud SQL 기능을 사용하면 데이터의 위치를 제어하고 Google 또는 모든 사용자의 데이터 액세스를 제어할 수 있습니다.

Cloud SQL은 3가지 영역에서 데이터 상주 문제를 해결하는 데 도움을 줍니다.

이어지는 섹션에서 각 영역에 대해 자세히 설명합니다.

데이터 저장

데이터 상주에서는 개인 식별 정보(PII)가 특정 리전 내에 저장되며 데이터가 이 리전의 규정에 따라 처리됩니다.

데이터 저장은 데이터 지역성 법규와 같은 국가의 법률 및 규제 요구를 충족합니다. 예를 들어 정부 관련 데이터는 해당 국가에 저장해야 하거나 회사에서 계약에 의해 일부 고객의 데이터를 다른 국가에 저장해야 하는 경우도 있습니다. 따라서 데이터가 저장되는 국가의 데이터 상주 요구사항을 충족하는 것이 중요합니다.

Google Cloud를 사용하면 백업을 포함하여 데이터가 저장되는 위치를 구성할 수 있습니다. 여기에는 데이터를 저장하는 리전을 선택할 수 있는 기능이 포함됩니다. 이러한 리전에서 Cloud SQL의 리소스를 구성하면 Google에서는 서비스별 약관에 따라 해당 리전에만 저장 데이터를 보관합니다. 인스턴스를 만들 때 리전을 선택하거나 기존 인스턴스를 수정하여 리전을 수정할 수 있습니다.

백업 위치에 대한 자세한 내용은 커스텀 백업 위치를 참조하세요.

조직 정책 제약조건을 사용하여 조직, 프로젝트 또는 폴더 수준에서 데이터 상주 요구사항을 적용할 수 있습니다. 이러한 제약조건을 사용하면 지원되는 서비스의 리소스 생성이 허용되는 Google Cloud 위치를 정의할 수 있습니다. 데이터 상주를 위해 리소스 위치 제약조건을 사용하여 새 리소스의 물리적 위치를 제한할 수 있습니다. 제약조건의 정책을 미세 조정하여 asiaeurope과 같은 멀티 리전이나 us-east1 또는 europe-west1과 같은 리전을 허용 또는 거부 위치로 지정할 수도 있습니다.

데이터 상주를 적용하는 데 유용한 또 다른 기능은 VPC 서비스 제어입니다. VPC 서비스 제어를 사용하면 Cloud SQL Admin API 또는 Cloud Storage API를 사용하여 데이터를 가져오고 내보내는 것으로 Cloud SQL API의 사용을 제한할 수 있습니다. 이 같은 제한을 통해 데이터가 선택한 네트워크 위치에 유지됩니다. VPC 서비스 제어를 사용하면 서비스에서 액세스할 수 있는 가상 경계를 정의하는 서비스 경계를 만들어 해당 경계 외부로 데이터가 이동되지 않도록 막을 수 있습니다. Google Cloud IAM 정책에 따라 사용자가 승인된 경우에도 이 제약조건을 적용할 수 있습니다.

데이터 암호화

Cloud SQL을 비롯한 Google Cloud 서비스에서는 다양한 암호화 방법을 사용해 고객의 저장 콘텐츠 및 전송 중 콘텐츠를 암호화합니다. 암호화는 자동으로 이루어져 별도의 고객 조치가 필요하지 않습니다.

Cloud SQL에서는 고객 관리 암호화 키(CMEK)로 데이터에 추가 암호화 레이어를 추가할 수도 있습니다. CMEK는 자체 암호화 키를 관리해야 하는 민감한 정보 또는 규제 대상 데이터가 있는 조직을 위한 것입니다. CMEK 기능을 사용하면 Cloud SQL의 저장 데이터에 자체 암호화 키를 사용할 수 있습니다. CMEK를 추가한 후 API 호출이 있을 때마다 Cloud SQL은 고객의 키를 사용하여 데이터에 액세스합니다.

서비스를 배포하는 리전에 CMEK를 저장하려면 Cloud Key Management Service(Cloud KMS)를 사용하면 됩니다. 키를 만들 때 키 위치를 설정합니다. 또는 선택한 리전에 위치한 물리적 하드웨어 보안 모듈(HSM)에 키를 저장하려면 Cloud HSM을 사용합니다.

CMEK를 저장할 위치를 선택하는 또 다른 방법은 타사 제품을 사용하는 것입니다. Google 인프라 외부에 배포된 타사 키 관리 제품의 키를 저장하고 관리하려면 Cloud 외부 키 관리자 (Cloud EKM)를 사용하면 됩니다.

데이터 액세스

Cloud SQL을 사용하면 데이터에 액세스할 수 있는 사용자를 제어할 수 있습니다.

Google 지원 및 엔지니어링 담당자의 액세스를 제어하려면 액세스 승인을 사용하세요. 액세스 승인을 사용하면 Google 직원이 Google Cloud의 데이터 또는 구성에 액세스하기 전에 명시적인 승인을 받도록 요구할 수 있습니다(제외에 대한 내용은 Access Approval 제외 참조).

액세스 승인은 Google 관리자가 내 데이터와 상호작용할 때 실시간에 가까운 감사 로그를 생성하여 가시성을 제공하는 액세스 투명성을 보완해 줍니다. 감사 로그에는 관리자의 사무실 위치 및 액세스 이유가 포함됩니다. 운영 중인 지리적 리전 및 기타 규정 준수 관련 속성을 포함하여 내 데이터 또는 구성에 액세스할 수 있는 관리자에게 특정 속성을 적용할 수도 있습니다.

마지막으로 키 액세스 근거가 Cloud KMS 및 Cloud EKM과 원활하게 작동합니다. 데이터 암호화 또는 복호화를 위해 키 중 하나가 요청될 때마다 키 액세스 근거에서 설정된 자동 정책을 사용하여 키 액세스를 승인하거나 거부하는 메커니즘과 함께 자세한 근거를 제공합니다.

Cloud KMS와 Cloud EKM에서 액세스 승인, 액세스 투명성, 키 액세스 근거를 사용하여 Google에서 내 데이터를 복호화하지 못하도록 거부할 수 있습니다. 즉, 내 데이터의 액세스에 대한 결정권을 내가 갖게 됩니다.

요약 정리

Google Cloud와 Cloud SQL을 포함한 관련 서비스를 함께 사용하면 데이터의 위치를 제어하고 Google 또는 모든 사용자의 데이터 액세스를 제어할 수 있습니다. 이 같은 사항을 고려하면 Google Cloud에서 업무상 중요한 워크로드를 안심하고 빌드할 수 있습니다.