고객 관리 암호화 키 사용

이 페이지에서는 고객 관리 암호화 키(CMEK)를 사용하여 Dataproc Metastore 서비스를 보호하는 방법을 설명합니다. CMEK는 Cloud Key Management Service를 통해 제어할 수 있는 키로 저장 데이터 암호화를 제공합니다. 키를 HSM 클러스터 또는 외부에 소프트웨어 키로 저장할 수 있습니다.

시작하기 전에

Dataproc Metastore 서비스를 VPC 서비스 제어 경계 내에서 실행하려면 Cloud Key Management Service(Cloud KMS) API를 경계에 추가해야 합니다.

Dataproc Metastore의 CMEK 지원 구성

Dataproc Metastore에 대한 CMEK 지원을 구성하려면 먼저 Dataproc Metastore 및 Cloud Storage 서비스 계정에 Cloud KMS 키 권한을 부여해야 합니다. 그런 다음 CMEK 키를 사용하는 Dataproc Metastore 서비스를 만들 수 있습니다.

Cloud KMS 키 권한 부여

다음 명령어를 사용하여 Dataproc Metastore의 Cloud KMS 키 권한을 부여하세요.

gcloud

  1. Cloud KMS에 CMEK 키를 만듭니다(아직 없는 경우). 다음 명령어는 소프트웨어 키를 만드는 방법의 예시입니다.

    gcloud config set project PROJECT_ID
    gcloud kms keyrings create KEY_RING \
      --project KEY_PROJECT \
      --location=LOCATION
    gcloud kms keys create KEY_NAME \
      --project KEY_PROJECT \
      --location=LOCATION \
      --keyring=KEY_RING \
      --purpose=encryption
    

    이와 유사한 방법으로 HSM 키를 만들거나 EKM 키를 만들 수 있습니다.

  2. Dataproc Metastore 서비스 에이전트 서비스 계정에 권한 부여:

    gcloud kms keys add-iam-policy-binding KEY_NAME \
      --location LOCATION \
      --keyring KEY_RING \
      --member=serviceAccount:$(gcloud beta services identity create \
      --service=metastore.googleapis.com 2>&1 | awk '{print $4}') \
      --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
    
  3. Cloud Storage 서비스 계정에 권한을 부여합니다.

    gsutil kms authorize -k projects/KEY_PROJECT/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME
    

CMEK 키로 Dataproc Metastore 서비스 만들기

서비스를 만드는 동안 CMEK 암호화를 구성하려면 다음 단계를 따르세요.

콘솔

  1. Google Cloud 콘솔에서 Dataproc Metastore 페이지를 엽니다.

    Dataproc Metastore로 이동

  2. Dataproc Metastore 페이지 상단에서 만들기를 클릭합니다.

    서비스 만들기 페이지가 열립니다.

  3. 필요에 따라 서비스를 구성합니다.

  4. 암호화에서 고객 관리 암호화 키(CMEK) 사용을 클릭합니다.

  5. 고객 관리 키를 선택합니다.

  6. 제출을 클릭합니다.

서비스의 암호화 구성을 확인합니다.

  1. Google Cloud 콘솔에서 Dataproc Metastore 페이지를 엽니다.

    Google Cloud 콘솔로 이동

  2. Dataproc Metastore 페이지에서 보려는 서비스 이름을 클릭합니다.

    해당 서비스의 서비스 세부정보 페이지가 열립니다.

  3. 구성 탭에서 세부정보에 CMEK가 사용 설정된 것으로 표시되는지 확인합니다.

gcloud

  1. gcloud metastore services create 명령어를 실행하여 CMEK 암호화로 서비스를 만듭니다.

    gcloud metastore services create SERVICE \
       --encryption-kms-key=KMS_KEY
    

    다음을 바꿉니다.

    • SERVICE: 새 서비스의 이름입니다.
    • KMS_KEY: 키 리소스 ID를 나타냅니다.
  2. 만들기가 성공했는지 확인합니다.

Google 제공 암호화 키로 보호되는 Dataproc Metastore 데이터

Cloud Monitoring 데이터베이스는 CMEK 암호화를 지원하지 않습니다. Google Cloud에서는 대신 Google 암호화 키를 사용하여 Dataproc Metastore 서비스의 이름과 서비스 구성을 보호합니다.

CMEK 사용 서비스로 데이터 가져오기 및 내보내기

가져오는 동안 데이터를 고객 관리 키로 암호화된 상태로 유지하려면 데이터를 가져오기 전에 Cloud Storage 버킷에 CMEK를 설정해야 합니다.

CMEK로 보호되지 않는 Cloud Storage 버킷에서 데이터를 가져올 수 있습니다. 가져온 후에는 Dataproc Metastore에 저장된 데이터가 대상 서비스의 CMEK 설정에 따라 보호됩니다.

내보낼 경우 내보낸 데이터베이스 덤프는 대상 스토리지 버킷의 CMEK 설정에 따라 보호됩니다.

Dataproc Metastore에 대한 CMEK 주의사항

  • CMEK가 사용 설정된 서비스에 대해 CMEK를 사용 중지하거나 삭제하면 서비스를 사용하거나 복구할 수 없습니다.

    • 데이터는 영구적으로 사라집니다.
  • 기존 서비스에 고객 관리 암호화 키를 사용 설정할 수 없습니다.

  • CMEK 사용 서비스에서 사용하는 키를 순환할 수 없습니다.

  • CMEK가 사용 설정된 서비스는 Data Catalog 동기화를 지원하지 않습니다. CMEK가 사용 설정된 서비스를 Data Catalog 동기화를 사용 설정하도록 업데이트하면 실패합니다. 또한 두 기능을 모두 사용 설정하여 새 서비스를 만들 수 없습니다.

  • 고객 관리 암호화 키를 사용하여 사용자 쿼리 및 응답과 같은 전송 중인 사용자 데이터를 암호화할 수 없습니다.

  • Cloud EKM 키를 사용하는 경우 Google은 외부 관리 키의 가용성을 제어 할 수 없습니다. Dataproc Metastore 서비스 생성 기간 중에 키를 사용할 수 없게 되면 서비스 생성이 실패합니다. Dataproc Metastore 서비스를 만든 후에 키를 사용할 수 없게 되면 키를 사용할 수 있을 때까지 서비스를 사용할 수 없게 됩니다. 외부 키 사용 시 고려사항은 Cloud EKM 고려사항을 참조하세요.

다음 단계