Looker(Google Cloud 핵심 서비스)에 CMEK 사용 설정

기본적으로 Google Cloud는 Google에서 관리하는 암호화 키를 사용하여 자동으로 저장 데이터를 암호화합니다. 그럼에도, 데이터를 보호하는 키와 관련된 특정한 규정 준수 또는 규제 요구사항이 있으면 Looker(Google Cloud 핵심 서비스)의 애플리케이션 수준 암호화에 고객 관리 암호화 키(CMEK)를 사용할 수 있습니다.

CMEK를 사용 설정하는 시기와 이유를 포함한 일반적인 CMEK에 대한 자세한 내용은 Cloud Key Management Service 문서를 참조하세요.

이 페이지에서는 CMEK를 사용하도록 Looker(Google Cloud 핵심 서비스) 인스턴스를 구성하는 방법을 설명합니다.

Looker(Google Cloud 핵심 서비스)와 CMEK는 어떻게 상호작용하나요?

Looker(Google Cloud 핵심 서비스)는 보조 키의 계층 구조를 통해 단일 CMEK 키를 사용하여 Looker(Google Cloud 핵심 서비스) 인스턴스에서 관리하는 민감한 정보를 보호합니다. 시작 시 Looker 인스턴스 내의 각 프로세스는 Cloud Key Management Service(KMS)를 1회 호출하여 키를 복호화합니다. 정상 작동 중(시작 후) 전체 Looker 인스턴스는 약 5분마다 KMS를 한 번 호출하여 키가 여전히 유효한지 확인합니다.

CMEK를 지원하는 Looker(Google Cloud 핵심 서비스)는 무엇인가요?

두 가지 기준이 충족되면 Looker(Google Cloud 핵심 서비스) 인스턴스가 CMEK를 지원합니다.

  • 이 페이지에 설명된 CMEK 구성 단계는 Looker(Google Cloud 핵심 서비스) 인스턴스가 생성되기 전에 완료되어야 합니다. 기존의 인스턴스에는 고객 관리 암호화 키를 사용 설정할 수 없습니다.
  • 인스턴스 에디션엔터프라이즈 또는 임베드여야 합니다.

CMEK로 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들기 위한 워크플로

이 페이지에서는 Looker(Google Cloud 핵심 서비스) 인스턴스에 CMEK를 설정하는 단계를 안내합니다.

  1. 환경을 설정합니다.
  2. Google Cloud CLI, Terraform, API 사용자만 해당: Looker 서비스 계정에 고객 관리 암호화 키가 필요한 경우 이미 설정되어 있지 않았다면 고객 관리 암호화 키가 필요한 각 프로젝트의 서비스 계정을 만듭니다.
  3. 키링과 키를 만들고 키의 위치를 설정합니다. 위치는 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들려는 Google Cloud 리전입니다.
  4. Google Cloud CLI, Terraform, API 사용자만 해당: 키 ID(KMS_KEY_ID) 및 키의 위치, 키링의 ID(KMS_KEYRING_ID)를 복사 또는 메모해 둡니다. 서비스 계정에 키에 대한 액세스 권한을 부여할 때 이 정보가 필요합니다.
  5. Google Cloud CLI, Terraform, API 사용자만 해당: 서비스 계정에 키에 대한 액세스 권한을 부여합니다.
  6. 프로젝트로 이동하고 다음 옵션으로 Looker(Google Cloud 핵심 서비스) 인스턴스를 만듭니다.
    1. 고객 관리 암호화 키에서 사용하는 것과 동일한 위치를 선택합니다.
    2. 버전엔터프라이즈 또는 임베드로 설정합니다.
    3. 고객 관리 키 구성을 사용 설정합니다.
    4. 이름 또는 ID로 고객 관리 암호화 키를 추가합니다.

모든 단계가 완료되면 Looker(Google Cloud 핵심 서비스) 인스턴스가 CMEK로 사용 설정됩니다.

시작하기 전에

아직 수행하지 않은 경우 이 페이지의 안내를 따를 수 있는 환경이 구성되어 있는지 확인하세요. 이 섹션의 절차에 따라 설정이 올바른지 확인하세요.

  1. Google Cloud 콘솔의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 만들거나 선택합니다. 참고: 이 절차에서 생성한 리소스를 유지하지 않으려면 기존 프로젝트를 선택하지 말고 프로젝트를 새로 만드세요. 이러한 단계가 완료되면 프로젝트를 삭제하여 프로젝트와 연결된 리소스를 삭제할 수 있습니다.

    프로젝트 선택기로 이동

  2. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다. 프로젝트에 결제가 사용 설정되어 있는지 확인하는 방법을 알아보세요.
  3. Google Cloud CLI를 설치합니다.
  4. gcloud CLI를 초기화하려면, 다음 명령어를 실행합니다.

    gcloud init
    

  5. Cloud Key Management Service API를 사용 설정합니다.

    API 사용 설정

  6. Looker(Google Cloud 핵심 서비스) API를 사용 설정합니다.

    API 사용 설정

필요한 역할

CMEK 설정에 필요한 역할을 이해하려면 Cloud Key Management Service 문서의 IAM으로 액세스 제어 페이지를 참고하세요.

Looker(Google Cloud 핵심 서비스) 인스턴스를 만들려면 Looker(Google Cloud 핵심 서비스) 인스턴스가 생성된 프로젝트에 대한 Looker 관리자 IAM 역할이 있는지 확인합니다. Google Cloud 콘솔 내에서 인스턴스에 대해 CMEK를 사용 설정하려면 CMEK에 사용 중인 키에 대한 Cloud KMS CryptoKey 암호화/복호화 IAM 역할이 있는지 확인하세요.

Looker 서비스 계정에 Cloud KMS 키에 대한 액세스 권한을 부여해야 하는 경우 사용 중인 키에 대한 Cloud KMS 관리자 IAM 역할이 필요합니다.

서비스 계정 만들기

Google Cloud CLI, Terraform 또는 API를 사용하여 Looker(Google Cloud 핵심 서비스) 인스턴스를 만드는 경우와 Looker 서비스 계정을 만들 Google Cloud 프로젝트에 대해 Looker 서비스 계정이 이미 생성되지 않은 경우 해당 프로젝트에 대한 서비스 계정을 만들어야 합니다. 프로젝트에 Looker(Google Cloud 핵심 서비스) 인스턴스를 두 개 이상 만들려는 경우 동일한 서비스 계정이 해당 프로젝트의 모든 Looker(Google Cloud 핵심 서비스) 인스턴스에 적용되므로 서비스 계정을 한 번만 만들면 됩니다. 콘솔을 사용하여 인스턴스를 만드는 경우 Looker(Google Cloud 핵심 서비스)는 고객 관리 암호화 키 사용 옵션을 구성할 때 자동으로 서비스 계정을 만들고 CMEK 키에 대한 액세스 권한을 부여합니다.

사용자가 서비스 계정을 관리할 수 있도록 다음 역할 중 하나를 부여합니다.

  • 서비스 계정 사용자(roles/iam.serviceAccountUser): 서비스 계정을 나열하고, 서비스 계정 세부정보를 가져오고, 서비스 계정을 가장할 수 있는 권한을 포함합니다.
  • 서비스 계정 관리자(roles/iam.serviceAccountAdmin): 서비스 계정을 나열하고 서비스 계정 세부정보를 가져올 수 있는 권한을 포함합니다. 또한, 서비스 계정을 생성, 업데이트, 삭제할 수 있는 권한도 포함됩니다.

현재는 Google Cloud CLI 명령어만 사용하여 고객 관리 암호화 키에 필요한 서비스 계정 유형을 만들 수 있습니다. Google Cloud 콘솔을 사용하는 경우 Looker(Google Cloud 핵심 서비스)가 자동으로 이 서비스 계정을 만듭니다.

gcloud

다음 명령어를 실행하여 서비스 계정을 만듭니다.

gcloud beta services identity create \
--service=looker.googleapis.com \
--project=PROJECT_ID

PROJECT_ID를 Looker(Google Cloud 핵심 서비스) 인스턴스가 있는 프로젝트로 바꿉니다.

이 명령어는 서비스 계정을 만들고 서비스 계정 이름을 반환합니다. 서비스 계정에 키에 대한 액세스 권한 부여의 절차 중에 이 서비스 계정 이름을 사용합니다.

서비스 계정을 만든 후 서비스 계정이 전파될 때까지 몇 분 정도 기다리세요.

키링 및 키 만들기

Looker(Google Cloud 핵심 서비스) 인스턴스와 동일한 Google Cloud 프로젝트 또는 별도의 사용자 프로젝트에 키를 만들 수 있습니다. Cloud KMS 키링 위치는 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들려는 리전과 일치해야 합니다. 멀티 리전 또는 전역 리전 키는 작동하지 않습니다. 리전이 일치하지 않으면 Looker(Google Cloud 핵심 서비스) 인스턴스 생성 요청이 실패합니다.

키링 만들기키 만들기 문서 페이지의 안내에 따라 다음 두 가지 기준을 충족하는 키링과 키를 만듭니다.

  • 키링 위치 필드는 Looker(Google Cloud 핵심 서비스) 인스턴스에 설정할 리전과 일치해야 합니다.
  • 용도 필드는 대칭 암호화/복호화여야 합니다.

키를 순환하고 새 키 버전을 만드는 방법에 관한 자세한 내용은 키 순환 섹션을 참고하세요.

KMS_KEY_IDKMS_KEYRING_ID를 복사 또는 메모

Google Cloud CLI, Terraform 또는 API를 사용하여 Looker(Google Cloud 핵심 서비스) 인스턴스를 설정하는 경우 Cloud KMS 리소스 ID 가져오기 문서 페이지의 안내에 따라 방금 만든 키링 및 키의 ID의 리소스 ID를 찾습니다. 키링의 ID(KMS_KEYRING_ID)와 함께 키 ID(KMS_KEY_ID) 및 위치를 복사하거나 메모해 둡니다. 서비스 계정에 키에 대한 액세스 권한을 부여할 때 이 정보가 필요합니다.

서비스 계정에 키에 대한 액세스 권한 부여

다음 두 가지 사항이 모두 해당되는 경우에만 이 절차를 수행하면 됩니다:

  • Google Cloud CLI, Terraform, 또는 API를 사용 중임
  • 서비스 계정에 키에 대한 액세스 권한이 아직 부여되지 않음. 예를 들어 동일한 프로젝트에 동일한 키를 사용하는 Looker(Google Cloud 핵심 서비스) 인스턴스가 이미 있으면 액세스 권한을 부여할 필요가 없습니다. 또는 다른 사용자가 키에 대한 액세스 권한을 이미 부여한 경우에는 액세스 권한을 부여할 필요가 없습니다.

서비스 계정에 액세스 권한을 부여하는 데 사용되는 키에 대해 Cloud KMS 관리자 IAM 역할이 있어야 합니다.

서비스 계정에 액세스 권한을 부여하려면 다음 명령을 실행합니다.

gcloud

gcloud kms keys add-iam-policy-binding KMS_KEY_ID \
--location=REGION \
--keyring=KMS_KEYRING_ID \
--member=serviceAccount:SERVICE_ACCOUNT_NAME \
--role=roles/cloudkms.cryptoKeyEncrypterDecrypter

다음을 바꿉니다.

  • KMS_KEY_ID: KMS 키의 ID입니다.
  • REGION: Looker(Google Cloud 핵심 서비스)가 생성되는 리전과 키링의 위치
  • KMS_KEYRING_ID: KMS 키링의 ID
  • SERVICE_ACCOUNT_NAME: 서비스 계정을 만들 때 반환된 서비스 계정 이름

서비스 계정에 IAM 역할을 부여한 후 권한이 전파될 때까지 몇 분 정도 기다립니다.

CMEK를 사용하여 Looker(Google Cloud 핵심 서비스) 인스턴스 만들기

Google Cloud 콘솔에서 고객 관리 암호화 키를 사용하여 인스턴스를 만들려면 먼저 위의 키링 및 키 만들기 섹션에 있는 단계에 따라 Looker(Google Cloud 핵심 서비스) 인스턴스에 사용할 리전과 동일한 리전에 키링과 키를 만듭니다. 다음으로, 다음 설정을 사용하여 Looker(Google Cloud 핵심 서비스) 인스턴스를 만드는 안내를 따르세요.

CMEK 설정으로 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들려면 다음 옵션 중 하나를 선택합니다.

콘솔

  1. CMEK에 사용 중인 키에 대한 Cloud KMS CryptoKey 암호화/복호화 IAM 역할이 있는지 확인합니다.
  2. 인스턴스 만들기 페이지의 에디션 섹션에서 CMEK를 사용할 엔터프라이즈 또는 임베드 에디션을 선택해야 합니다.
  3. 인스턴스 만들기 페이지의 암호화 섹션에서 고객 관리 암호화 키(CMEK) 라디오 버튼을 선택합니다. 그러면 고객 관리 키 선택 드롭다운 필드가 표시됩니다.
  4. 고객 관리 키 선택 필드에서 사용하려는 키를 설정합니다. 키는 생성 중인 Looker(Google Cloud 핵심 서비스) 인스턴스와 동일한 리전으로 설정된 키링에 있어야 합니다. 그렇지 않으면 인스턴스 생성이 실패합니다. 다음 두 가지 방법 중 하나를 통해 키를 선택할 수 있습니다.
    1. 드롭다운 목록에서 키 이름 선택: Google Cloud 프로젝트에서 사용 가능한 키가 드롭다운 목록에 표시됩니다. 키를 선택한 후 확인을 클릭합니다.
    2. 키의 리소스 ID 입력: 다음 텍스트를 클릭합니다. 키가 표시되지 않나요? 키 리소스 ID를 입력하세요 텍스트가 드롭다운 메뉴의 하단에 나타나면 클릭합니다. 그러면 키 ID를 입력할 수 있는 키 리소스 ID 입력 대화상자가 나타납니다. ID를 입력한 후 저장을 선택합니다.
  5. 키를 선택하면 키를 사용할 수 있는 권한을 서비스 계정에 부여할지 묻는 메시지가 나타납니다. 부여 버튼을 클릭합니다.
  6. 서비스 계정에 선택한 키를 사용하여 암호화 및 복호화할 수 있는 권한이 없으면 메시지가 표시됩니다. 이 경우 권한 부여를 클릭하여 서비스 계정에 선택한 KMS 키의 Cloud KMS CryptoKey 암호화/복호화 IAM 역할을 부여하세요.
  7. Looker(Google Cloud 핵심 서비스) 인스턴스의 모든 구성을 완료했으면 만들기를 클릭합니다.

gcloud

gcloud looker instances create INSTANCE_NAME \
--project=PROJECT_ID \
--oauth-client-id=OAUTH_CLIENT_ID\
--oauth-client-secret=OAUTH_CLIENT_SECRET \
--kms-key=KMS_KEY_ID
--region=REGION \
--edition=EDITION
[--consumer-network=CONSUMER_NETWORK --private-ip-enabled --reserved-range=RESERVED_RANGE]
[--no-public-ip-enabled]
[--public-ip-enabled]

다음을 바꿉니다.

  • INSTANCE_NAME: Looker(Google Cloud 핵심 서비스) 인스턴스의 이름입니다. 인스턴스 URL과 연결되어 있지 않습니다.
  • PROJECT_ID: Looker(Google Cloud 핵심 서비스) 인스턴스를 만드는 Google Cloud 프로젝트의 이름입니다.
  • OAUTH_CLIENT_IDOAUTH_CLIENT_SECRET: OAuth 클라이언트를 설정할 때 만든 OAuth 클라이언트 ID 및 OAuth 암호입니다. 인스턴스가 생성되면 OAuth 클라이언트의 승인된 리디렉션 URI 섹션에 인스턴스의 URL을 입력합니다.
  • KMS_KEY_ID: KMS 키의 ID입니다.
  • REGION: Looker(Google Cloud 핵심 서비스) 인스턴스가 호스팅되는 리전입니다. 사용 가능한 리전은 Looker(Google Cloud 핵심 서비스) 위치 문서 페이지에 나열되어 있습니다.
  • EDITION: CMEK를 사용 설정하려면 EDITIONcore-embed-annual 또는 core-enterprise-annual이어야 합니다.
  • CONSUMER_NETWORK: VPC 네트워크 또는 공유 VPC입니다. 비공개 IP 인스턴스를 만드는 경우 설정해야 합니다.
  • RESERVED_RANGE: Google에서 Looker(Google Cloud 핵심 서비스) 인스턴스의 서브네트워크를 프로비저닝할 VPC 내의 IP 주소 범위입니다. 비공개 IP 인스턴스를 만드는 경우 설정해야 합니다.

다음 플래그를 포함할 수 있습니다.

  • --private-ip-enabled는 비공개 IP를 사용 설정합니다.
  • --public-ip-enabled는 공개 IP를 사용 설정합니다.
  • --no-public-ip-enabled는 공개 IP를 사용 중지합니다.

Terraform

다음 Terraform 리소스를 사용하여 비공개 네트워크 연결엔터프라이즈 Looker(Google Cloud 핵심 서비스) 인스턴스를 프로비저닝하세요.

# Creates an Enterprise edition Looker (Google Cloud core) instance with full, Private IP functionality.
resource "google_looker_instance" "main" {
  name               = "my-instance"
  platform_edition   = "LOOKER_CORE_ENTERPRISE_ANNUAL"
  region             = "us-central1"
  private_ip_enabled = true
  public_ip_enabled  = false
  reserved_range     = google_compute_global_address.main.name
  consumer_network   = data.google_compute_network.main.id
  admin_settings {
    allowed_email_domains = ["google.com"]
  }
  encryption_config {
    kms_key_name = google_kms_crypto_key.main.id
  }
  maintenance_window {
    day_of_week = "THURSDAY"
    start_time {
      hours   = 22
      minutes = 0
      seconds = 0
      nanos   = 0
    }
  }
  deny_maintenance_period {
    start_date {
      year  = 2050
      month = 1
      day   = 1
    }
    end_date {
      year  = 2050
      month = 2
      day   = 1
    }
    time {
      hours   = 10
      minutes = 0
      seconds = 0
      nanos   = 0
    }
  }
  oauth_config {
    client_id     = "my-client-id"
    client_secret = "my-client-secret"
  }
  depends_on = [
    google_service_networking_connection.main,
    google_kms_crypto_key.main
  ]
}

resource "google_kms_key_ring" "main" {
  name     = "keyring-example"
  location = "us-central1"
}

resource "google_kms_crypto_key" "main" {
  name     = "crypto-key-example"
  key_ring = google_kms_key_ring.main.id
}

resource "google_service_networking_connection" "main" {
  network                 = data.google_compute_network.main.id
  service                 = "servicenetworking.googleapis.com"
  reserved_peering_ranges = [google_compute_global_address.main.name]
}

resource "google_compute_global_address" "main" {
  name          = "looker-range"
  purpose       = "VPC_PEERING"
  address_type  = "INTERNAL"
  prefix_length = 20
  network       = data.google_compute_network.main.id
}

data "google_project" "main" {}

data "google_compute_network" "main" {
  name = "default"
}

resource "google_kms_crypto_key_iam_member" "main" {
  crypto_key_id = google_kms_crypto_key.main.id
  role          = "roles/cloudkms.cryptoKeyEncrypterDecrypter"
  member        = "serviceAccount:service-${data.google_project.main.number}@gcp-sa-looker.iam.gserviceaccount.com"
}

Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.

이제 Looker(Google Cloud 핵심 서비스) 인스턴스가 CMEK로 사용 설정되었습니다.

CMEK가 사용 설정된 인스턴스의 키 정보 보기

Looker(Google Cloud 핵심 서비스) 인스턴스를 성공적으로 만들면 CMEK가 사용 설정되었는지 여부를 확인할 수 있습니다.

CMEK가 사용 설정되어 있는지 확인하려면 다음 옵션 중 하나를 선택합니다.

콘솔

  1. Google Cloud 콘솔에서 Looker 인스턴스 페이지로 이동합니다.
  2. 인스턴스 이름을 클릭하여 세부정보 페이지를 엽니다. 인스턴스에 CMEK가 사용 설정된 경우 암호화 행은 인스턴스에 사용된 암호화가 표시됩니다. 고객 관리 암호화 키(CMEK) 필드에 키 식별자가 표시됩니다.

gcloud

gcloud looker instances describe INSTANCE_NAME --region=REGION --format config

다음을 바꿉니다.

  • INSTANCE_NAME: Looker(Google Cloud 핵심 서비스) 인스턴스의 이름입니다. 인스턴스 URL과 연결되어 있지 않습니다.
  • REGION: 인스턴스가 생성된 리전입니다.

인스턴스가 CMEK로 구성되었는지 확인하려면 이 명령어는 kmsKeyName, kmsKeyNameVersion, kmsKeyState를 반환해야 합니다.

Cloud 외부 키 관리자(Cloud EKM) 사용

Looker(Google Cloud 핵심 서비스) 인스턴스의 데이터를 보호하려면 지원되는 외부 키 관리 파트너 내에서 관리하는 키를 사용하면 됩니다. 자세한 내용은 고려사항 섹션을 포함한 Cloud 외부 키 관리자 문서 페이지를 참고하세요.

Cloud EKM 키를 만들 준비가 되면 Cloud 외부 키 관리자 문서 페이지의 작동 방식 섹션을 참고하세요. 키가 생성된 후 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들 때 키 이름을 제공하세요.

Google은 외부 키 관리 파트너 시스템에서 키의 가용성을 제어하지 않습니다.

키 순환

보안 강화를 위해 키를 순환하는 방법을 사용할 수 있습니다. 키가 순환될 때마다 새 키 버전이 생성됩니다. 키 순환에 관한 자세한 내용은 키 순환 문서 페이지를 참고하세요.

Looker(Google Cloud 핵심 서비스) 인스턴스를 보호하는 데 사용되는 키를 순환하는 경우에도 해당 키 버전이 사용되었을 때 수행된 백업 또는 내보내기에 액세스하려면 이전 키 버전이 필요합니다. 따라서 Google에서는 이러한 항목에 계속 액세스할 수 있도록 순환 후 최소 45일 동안 이전 키 버전을 사용 설정해 두는 것이 좋습니다. 키 버전은 사용 중지되거나 폐기될 때까지 기본적으로 유지됩니다.

키 버전 중지 및 다시 사용 설정

다음 문서 페이지를 참고하세요.

Looker(Google Cloud 핵심 서비스) 인스턴스를 보호하는 데 사용되는 키 버전이 사용 중지된 경우 Looker(Google Cloud 핵심 서비스) 인스턴스는 작동을 중지하고 메모리에 있을 수 있는 암호화되지 않은 민감한 정보를 지운 다음, 키를 다시 사용할 수 있게 될 때까지 대기해야 합니다. 프로세스는 다음과 같습니다.

  1. Looker(Google Cloud 핵심 서비스) 인스턴스를 보호하는 데 사용되는 키 버전이 사용 중지되었습니다.
  2. 약 15분 내에 Looker(Google Cloud 핵심 서비스) 인스턴스가 키 버전이 취소되었음을 감지하고, 작업을 중지하고, 메모리에 있는 모든 암호화된 데이터를 삭제합니다.
  3. 인스턴스 작동이 중지되면 Looker API 호출이 오류 메시지를 반환합니다.
  4. 인스턴스 작동이 중지되면 Looker(Google Cloud 핵심 서비스) UI가 오류 메시지를 반환합니다.
  5. 키 버전을 다시 사용 설정하는 경우 인스턴스의 restart을 수동으로 트리거해야 합니다.

키 버전을 사용 중지하고 Looker(Google Cloud 핵심 서비스) 인스턴스가 자체적으로 중지될 때까지 기다리지 않으려면 Looker(Google Cloud 핵심 서비스) 인스턴스가 취소된 키 버전을 즉시 감지하도록 인스턴스 재시작을 수동으로 트리거할 수 있습니다.

키 버전 폐기

다음 문서 페이지를 참고하세요.

Looker(Google Cloud 핵심 서비스) 인스턴스를 보호하는 데 사용되는 키 버전이 삭제되면 Looker 인스턴스에 액세스할 수 없게 됩니다. 인스턴스는 삭제해야 하며, 해당 데이터에는 액세스할 수 없습니다.

문제 해결

이 섹션에서는 CMEK가 사용 설정된 인스턴스를 설정하거나 사용하는 중에 오류 메시지가 표시될 때 수행할 작업을 설명합니다.

Cloud KMS 오류 및 역할 또는 권한 누락으로 인해 생성 또는 업데이트와 같은 Looker(Google Cloud 핵심 서비스) 관리자 작업이 실패할 수 있습니다. Cloud KMS 키 버전이 누락되거나, Cloud KMS 키 버전이 중지 또는 삭제되거나, Cloud KMS 키 버전에 액세스할 수 있는 IAM 권한이 없거나, Cloud KMS 키 버전이 Looker(Google Cloud 핵심 서비스) 인스턴스와 다른 리전에 있는 경우 등에는 일반적으로 작업이 실패하게 됩니다. 일반적인 문제를 진단하고 해결하려면 다음 문제 해결 표를 사용하세요.

고객 관리 암호화 키 문제 해결 표

오류 메시지 가능한 원인 문제 해결 전략
제품별, 프로젝트별 서비스 계정을 찾을 수 없음 서비스 계정 이름이 잘못되었습니다. 올바른 사용자 프로젝트의 서비스 계정을 만들었는지 확인합니다.

서비스 계정 페이지로 이동

서비스 계정에 액세스 권한을 부여할 수 없음 사용자 계정에 이 키 버전에 대한 액세스 권한을 부여할 수 있는 권한이 없습니다.

사용자 계정 또는 서비스 계정에 조직 관리자 역할을 추가합니다.

IAM 계정 페이지로 이동

Cloud KMS 키 버전이 삭제됨 키 버전이 삭제되었습니다. 키 버전이 삭제되면 데이터를 암호화하거나 복호화하는 데 사용할 수 없습니다. Looker(Google Cloud 핵심 서비스) 인스턴스를 삭제해야 합니다.
Cloud KMS 키 버전이 사용 중지됨 키 버전이 사용 중지되었습니다.

Cloud KMS 키 버전을 다시 사용 설정합니다.

키 관리 페이지로 이동

Cloud KMS 키를 사용할 수 있는 권한이 없음 Looker(Google Cloud 핵심 서비스) 인스턴스에서 작업을 실행하는 데 사용하는 사용자 또는 서비스 계정에 cloudkms.cryptoKeyEncrypterDecrypter 역할이 없거나 Cloud KMS 키 버전이 없습니다.

사용자 또는 서비스 계정에 cloudkms.cryptoKeyEncrypterDecrypter 역할을 추가합니다.

IAM 계정 페이지로 이동

이 역할이 계정에 이미 있는 경우 키링 및 키 만들기 섹션에서 새 키 버전을 만드는 방법을 알아보세요. 그런 다음 인스턴스 생성 단계를 다시 완료합니다.

Cloud KMS 키를 찾을 수 없음 키 버전이 존재하지 않습니다. 새 키 버전을 만들고 인스턴스 생성 단계를 다시 완료합니다. 키링 및 키 만들기 섹션을 참고하세요.
Looker(Google Cloud 핵심 서비스) 인스턴스와 Cloud KMS 키 버전이 서로 다른 리전에 있음 Cloud KMS 키 버전과 Looker(Google Cloud 핵심 서비스) 인스턴스가 같은 리전에 있어야 합니다. Cloud KMS 키 버전이 전역 리전 또는 멀티 리전에 있는 경우에는 작동하지 않습니다. 인스턴스를 만들려는 동일한 리전에 키 버전을 만들고 인스턴스 생성 단계를 다시 완료합니다. 키링 및 키 만들기 섹션을 참고하세요.

다음 단계