Cloud EKM 키 관리

이 주제에서는 Cloud 외부 키 관리자(Cloud EKM)를 사용하여 Google Cloud 외부에서 관리되는 키를 사용하여 저장 데이터를 암호화하는 방법을 설명합니다.

시작하기 전에

다음 단계를 완료하면 Cloud EKM 키를 사용하여 데이터를 보호할 수 있습니다.

새 프로젝트 만들기

Cloud EKM을 테스트할 때는 새 프로젝트를 설정하는 것이 좋습니다.

  1. Google Cloud Console에서 리소스 관리 페이지로 이동합니다.

    리소스 관리 페이지로 이동

  2. 새 Google Cloud 프로젝트를 만들거나 기존 프로젝트를 선택합니다.

  3. Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다. 프로젝트에 결제가 사용 설정되어 있는지 확인하는 방법을 알아보세요.

  4. Cloud EKM 가격 책정에 대해 자세히 알아볼 수 있습니다.

Cloud KMS 사용 설정

  1. 프로젝트에 Cloud Key Management Service API를 사용 설정합니다.

    Cloud Key Management Service API 사용 설정

  2. 프로젝트의 Cloud EKM 서비스 계정을 기록합니다. 다음 예시에서는 project-number를 Google Cloud 프로젝트의 프로젝트 번호로 바꿉니다. 이 정보는 Google Cloud Console을 사용하여 Cloud EKM 키를 만들 때마다 표시됩니다.

    service-project-number@gcp-sa-ekms.iam.gserviceaccount.com
    

외부 키 관리 파트너 시스템 준비

외부 키 관리 파트너 시스템에서 Google Cloud 서비스 계정에 외부 키 사용 권한을 부여합니다. 서비스 계정을 이메일 주소로 취급합니다. 파트너는 이 주제에 사용된 용어와 다른 용어를 사용할 수 있습니다.

외부 키 만들기

외부 키 관리 파트너 시스템에서 이 단계를 수행합니다. 정확한 단계는 외부 키 관리 파트너에 따라 다릅니다. 지원되는 Cloud EKM 파트너 목록을 검토할 수 있습니다.

  1. 필요한 경우 외부 키 관리 파트너의 액세스를 요청하여 이 릴리스에 참여합니다.

  2. 외부 키 관리 파트너 시스템에서 키를 만들거나 기존 키를 선택합니다.

    Cloud EKM 키에 사용할 Google Cloud 리전 근처 리전의 키를 만듭니다. 이를 통해 Google Cloud 프로젝트와 외부 키 관리 파트너 간의 네트워크 지연 시간을 줄일 수 있습니다. 그렇지 않으면 실패한 작업이 증가할 수 있습니다. 자세한 내용은 Cloud EKM 및 리전을 참조하세요.

  3. 외부 키의 URI를 기록해 둡니다. Cloud EKM 키를 만들려면이 정보가 필요합니다.

Cloud EKM 키 만들기

키를 만들 때 키를 사용할 위치에 있는 키링에 키를 추가합니다. Cloud EKM 키의 경우 위치가 외부 키의 위치와 가까이 있어야 합니다.

이 주제에서는 키링을 만드는 방법을 보여 주지만 적절한 위치에 있는 기존 키링에 키를 만들 수 있습니다.

gcloud

  1. 외부 키 관리 파트너가 권장하는 리전 중 하나에 키링을 생성합니다.

    gcloud kms keyrings \
     create key-ring-name \
     --location location
    
  2. 키링에 키를 만듭니다. 보호 수준을 external로 설정하고 용도를 encryption으로 설정합니다. 초기 키 버전이 생성되지 않도록 --skip-initial-version-creation을 추가합니다. default algorithmexternal-symmetric-encryption으로 설정합니다.

    gcloud kms keys \
     create key-name \
     --keyring key-ring-name \
     --location location \
     --purpose encryption \
     --protection-level external \
     --skip-initial-version-creation \
     --default-algorithm external-symmetric-encryption
    
  3. 방금 만든 키의 키 버전을 만듭니다. --external-key-uri 플래그를 외부 키 URI로 설정합니다. 이 버전을 기본 키 버전으로 설정하려면 --primary 플래그를 포함합니다. 이전 단계와 동일한 키 이름, 키링, 위치를 사용합니다.

    gcloud kms keys versions \
     create \
     --key key-name \
     --keyring key-ring-name \
     --location location \
     --external-key-uri external-key-uri \
     --primary
    

Console

키링 만들기

  1. Cloud Console에서 암호화 키 페이지로 이동합니다.

    암호화 키 페이지로 이동

  2. 키링 만들기를 클릭합니다.

  3. 키링 이름 필드에 키링 이름을 입력합니다.

  4. 위치 드롭다운에서 외부 키 관리 파트너가 권장하는 리전 중 하나를 선택합니다.

  5. 만들기를 클릭합니다. 키링이 생성되고 키 생성 대화상자가 나타납니다.

Cloud EKM 키를 만듭니다.

  1. 키 유형으로 외부 관리 키를 선택합니다. 용도가 자동으로 대칭 암호화 / 복호화로 설정되고 키 유형 및 알고리즘 필드가 외부 대칭 키로 설정됩니다. 이 값은 수정할 수 없습니다.

  2. 키 이름을 지정하세요.

  3. 외부 키의 URI를 입력합니다.

  4. 원하는 경우 키의 라벨을 추가합니다. 라벨 지정 키에 대해 자세히 알아볼 수 있습니다.

  5. 만들기를 클릭합니다.

키 버전은 자동으로 생성되며 기본 버전이 됩니다.

새 키의 키 리소스 ID를 가져오기하여 다음 시나리오에서 데이터를 보호할 수 있습니다.

외부 키 순환

외부 키의 URI를 변경해야 하는 경우 Cloud EKM 키를 순환할 수 있습니다. 키를 순환하면 Cloud EKM 키에 새 키 버전이 추가됩니다.

외부 키의 이전 버전이 여전히 외부 키 관리 파트너 시스템의 외부 키 URI에서 사용할 수 있기만 하면 Cloud EKM 키를 순환한 후에도 이전 버전의 키를 사용하여 암호화된 데이터를 여전히 복호화할 수 있습니다.

외부 키 관리 파트너 시스템의 키 자료는 변경되지 않지만 URI가 변경되면 키를 순환하지 않고도 키의 외부 URI를 업데이트할 수 있습니다.

gcloud

키를 순환하려면 업데이트된 외부 키 URI가 포함된 새 키 버전을 만들고 이 버전을 기본 키 버전으로 만듭니다. 키를 만들 때 사용한 이름, 키링, 위치를 사용합니다.

gcloud kms keys versions \
  create \
  --key key-name \
  --keyring key-ring-name \
  --location location \
  --external-key-uri new-external-key-uri \
  --primary

콘솔

  1. Cloud Console에서 암호화 키 페이지로 이동합니다.
    암호화 키 페이지로 이동

  2. 키 링을 선택한 다음 키를 선택합니다.

  3. 순환을 선택합니다.

  4. 새 키 URI를 입력하고 키 순환을 선택합니다.

새 키 버전이 기본 버전이 됩니다.

키 버전의 URI 업데이트

새 키 URI에 원래 키 URI와 정확히 동일한 키 자료가 있으면 Cloud EKM 키를 순환하지 않고도 Cloud EKM 키 버전의 키 URI를 업데이트할 수 있습니다. URI에 동일한 키 자료가 없으면 키 URI 업데이트가 실패합니다. 기본 버전이 아닌 키 버전의 키 URI를 업데이트할 수도 있습니다.

키 자료가 외부 키 관리 파트너 시스템에서 순환되었다면 대신 키를 순환해야 합니다.

gcloud

키 버전의 URI를 업데이트하려면 gcloud beta kms versions update 명령어를 사용하여 업데이트할 키 버전을 지정하고 --external-key-uri 플래그를 새 URI로 지정합니다.

gcloud kms keys versions update key-version \
  --key key \
  --keyring keyring \
  --location location \
  --external-key-uri uri

예를 들어 다음 명령어는 example-key 키의 버전 2에 대한 URI를 https://example-key.example.com/v0/example_key로 업데이트합니다.

gcloud kms keys versions update 2 \
  --key example-key> \
  --keyring example-keyring \
  --location us-west1 \
  --external-key-uri https://example-key.example.com/v0/example_key

콘솔

  1. Cloud Console에서 암호화 키 페이지로 이동합니다.
    암호화 키 페이지로 이동

  2. 키링을 선택한 다음 키와 버전을 선택합니다.

  3. 더보기 를 클릭한 다음 키 URI 보기를 클릭합니다.

  4. 키 URI 업데이트를 클릭합니다.

  5. 새 키 URI를 입력한 다음 저장을 클릭합니다.

외부 키 사용 중지 또는 폐기

Cloud EKM 키와 외부 키 사이의 연결을 일시적으로 사용 중지하려면 Cloud EKM 키 또는 키 버전을 사용 중지할 수 있습니다. 전체 키를 사용 중지하는 것이 좋습니다. 키 사용 중지는 3시간 내에 적용됩니다.

키를 사용 중지할 때는 키에 대한 액세스 권한도 취소해야 합니다. IAM 작업은 수초 범위 내에서 일관성을 갖습니다. 외부 키 관리 파트너 시스템에서 Google Cloud 서비스 계정의 액세스 권한도 취소하는 것이 좋습니다.

Cloud EKM 키와 외부 키 사이의 연결을 영구적으로 삭제하려면 Cloud EKM 키 버전 폐기를 예약할 수 있습니다. 24시간이 지나면 키가 폐기됩니다. 키 폐기는 영구적입니다. 키 버전이 폐기되면 Cloud EKM 키 버전으로 암호화된 데이터를 더 이상 암호화하거나 복호화할 수 없습니다. 동일한 외부 키 URI를 사용하는 경우에도 폐기된 Cloud EKM 키 버전을 다시 만들 수 없습니다.

오류 해석

Cloud EKM 키를 만들거나 사용할 때 오류가 발생하면 오류가 기록됩니다. 이러한 오류를 해석하고 수정하는 방법에 대한 세부정보는 Cloud EKM 오류 참조를 확인하세요.

지원 받기

Cloud EKM에 문제가 발생하면 지원팀에 문의하세요.