Autokey 개요

Cloud KMS Autokey는 프로비저닝 및 할당을 자동화하여 고객 관리 암호화 키(CMEK)를 만들고 사용하는 것을 간소화합니다. Autokey를 사용하면 키링, 키, 서비스 계정을 사전에 계획하고 프로비저닝할 필요가 없습니다. 대신 Autokey는 Cloud KMS 관리자 대신 위임된 권한을 사용하여 리소스가 생성될 때 요청 시 키를 생성합니다.

Autokey에서 생성된 키를 사용하면 HSM 보호 수준, 업무 분장, 키 순환, 위치, 키 특이성을 포함한 데이터 보안의 업계 표준 및 권장사항을 일관되게 조정할 수 있습니다. Autokey는 Cloud KMS Autokey와 통합되는 Google Cloud 서비스의 리소스 유형과 관련된 일반 가이드라인과 가이드라인을 모두 따르는 키를 만듭니다. 키가 생성�� 후 Autokey를 사용하여 요청된 키는 동일한 설정을 사용하는 다른 Cloud HSM 키와 동일하게 작동합니다.

Autokey는 승격된 키 생성 권한으로 코드형 인프라를 실행할 필요가 없어 관리를 위한 Terraform 사용을 간소화합니다.

Autokey를 사용하려면 폴더 리소스가 포함된 조직 리소스가 있어야 합니다. 조직 및 폴더 리소스에 대한 자세한 내용은 리소스 계층 구조를 참조하세요.

Cloud KMS Autokey는 Cloud HSM을 사용할 수 있는 모든 Google Cloud 위치에서 사용할 수 있습니다. Cloud KMS 위치에 대한 자세한 내용은 Cloud KMS 위치를 참조하세요. Cloud KMS Autokey를 사용하는 데 추가 비용이 들지 않습니다. Autokey를 사용하여 생성된 키에는 다른 Cloud HSM 키와 동일한 가격이 책정됩니다. 가격 책정에 대한 자세한 내용은 Cloud Key Management Service 가격 책정을 참조하세요.

Autokey 작동 방식

이 섹션에서는 Cloud KMS Autokey의 작동 방식을 설명합니다. 다음 사용자 역할이 이 프로세스에 참여합니다.

보안 관리자
보안 관리자는 폴더 또는 조직 수준에서 보안을 관리할 책임이 있는 사용자입니다.
Autokey 개발자
Autokey 개발자는 Cloud KMS Autokey를 사용하여 리소스를 만들어야 하는 사용자입니다.
Cloud KMS 관리자
Cloud KMS 관리자는 Cloud KMS 리소스를 관리하는 사용자입니다. 이 역할은 수동으로 생성된 키를 사용할 때보다 Autokey를 사용할 때의 책임이 더 적습니다.

다음 서비스 에이전트도 이 프로세스에 참여합니다.

Cloud KMS 서비스 에이전트
특정 키 프로젝트의 Cloud KMS용 서비스 에이전트입니다. Autokey는 승격된 권한을 가진 이러한 서비스 에이전트를 사용하여 Cloud KMS 키 및 키링을 만들고 키에 IAM 정책을 설정하여 각 리소스 서비스 에이전트에 암호화 및 복호화 권한을 부여합니다.
리소스 서비스 에이전트
특정 리소스 프로젝트의 특정 서비스에 대한 서비스 에이전트입니다. 이 서비스 에이전트는 Cloud KMS 키에 대한 암호화 및 복호화 권한이 있어야 리소스에서 CMEK 보호에 해당 키를 사용할 수 있습니다. Autokey는 리소스 서비스 에이전트를 만들고 필요 시 Cloud KMS 키를 사용하는 데 필요한 권한을 부여합니다.

보안 관리자의 Cloud KMS Autokey 사용 설정

Autokey를 사용하려면 먼저 보안 관리자가 다음 일회성 설정 태스크를 완료해야 합니다.

  1. 리소스 폴더에서 Cloud KMS Autokey를 사용 설정하고 해당 폴더의 Autokey 리소스가 포함될 Cloud KMS 프로젝트를 식별합니다.

  2. Cloud KMS 서비스 에이전트를 만든 후 서비스 에이전트에 키 생성 및 할당 권한을 부여합니다.

  3. Autokey 개발자 사용자에게 Autokey 사용자 역할을 부여합니다.

이 구성이 완료되면 이제 Autokey 개발자가 Cloud HSM 키 생성을 주문형으로 트리거할 수 있습니다. Cloud KMS Autokey의 전체 설정 안내를 보려면 Cloud KMS Autokey 사용 설정을 참조하세요.

Autokey 개발자의 Cloud KMS Autokey 사용

Autokey가 성공적으로 설정되면 승인된 Autokey 개발자가 이제 주문형으로 생성된 키를 사용하여 보호되는 리소스를 만들 수 있습니다. 리소스 생성 프로세스의 세부정보는 만들려는 리소스에 따라 다르지만 프로세스는 다음 흐름을 따릅니다.

  1. Autokey 개발자가 호환되는 Google Cloud 서비스에서 리소스를 만들기 시작합니다. 리소스를 생성하는 동안 개발자는 Autokey 서비스 에이전트에 새 키를 요청합니다.

  2. Autokey 서비스 에이전트는 개발자의 요청을 수신하고 다음 단계를 완료합니다.

    1. 선택한 위치의 키 프로젝트에 키링을 만듭니다(아직 키링이 없는 경우).
    2. 리소스 유형에 적합한 세분성으로 키링에 키를 만듭니다(아직 키가 없는 경우).
    3. 프로젝트별, 서비스별 서비스 계정을 만듭니다(아직 서비스 계정이 없는 경우).
    4. 프로젝트별, 서비스별 서비스 계정에 키에 대한 암호화 및 복호화 권한을 부여합니다.
    5. 개발자가 리소스 만들기를 완료할 수 있도록 주요 세부정보를 개발자에게 제공합니다.
  3. Autokey 서비스 에이전트가 키 세부정보를 성공적으로 반환하면 개발자는 보호된 리소스 만들기를 즉시 완료할 수 있습니다.

Cloud KMS Autokey는 다음 섹션에서 설명하는 속성이 포함된 키를 만듭니다. 이 키 만들기 흐름을 통해 업무 분장을 유지할 수 있습니다. Cloud KMS 관리자는 Autokey로 생성된 키를 계속 완벽하게 파악하고 제어할 수 있습니다.

폴더에서 Autokey를 사용 설정한 후 사용하려면 Cloud KMS Autokey를 사용하여 보호되는 리소스 만들기를 참조하세요.

Autokey로 생성되는 키 정보

Cloud KMS Autokey에서 만든 키에는 다음과 같은 속성이 있습니다.

  • 보호 수준: HSM
  • 알고리즘: AES-256 GCM
  • 순환 기간: 1년

    Autokey로 키가 생성되면 Cloud KMS 관리자가 기본값에서 순환 기간을 수정할 수 있습니다.

  • 업무 분장:

    • 서비스의 서비스 계정에는 키에 대한 암호화 및 복호화 권한이 자동으로 부여됩니다.
    • Cloud KMS 관리자 권한은 평소와 같이 Autokey로 생성된 키에 적용됩니다. Cloud KMS 관리자는 Autokey에서 생성된 키를 보고, 업데이트하고, 사용 설정 또는 사용 중지하고, 폐기할 수 있습니다. Cloud KMS 관리자에게는 암호화 및 복호화 권한이 부여되지 않습니다.
    • Autokey 개발자는 키 생성 및 할당만 요청할 수 있습니다. 키를 보거나 관리할 수 없습니���.
  • 키 특이성 또는 세분화: Autokey로 생성된 키는 리소스 유형에 따라 달라지는 세부사항이 있습니다. 키 세부사항에 대한 서비스별 세부정보는 이 페이지의 호환 서비스를 참조하세요.

  • 위치: Autokey는 보호할 리소스와 동일한 위치에 키를 만듭니다.

    Cloud HSM을 사용할 수 없는 위치에 CMEK로 보호되는 리소스를 만들어야 하는 경우에는 CMEK를 수동으로 만들어야 합니다.

  • 키 버전 상태: Autokey를 사용해서 요청된 새로 생성된 키는 사용 설정된 상태의 기본 키 버전으로 생성됩니다.

  • 키링 이름 지정: Autokey에서 만든 모든 키는 선택한 위치의 Autokey 프로젝트에 있는 autokey라는 키링에 생성됩니다. Autokey 프로젝트의 키링은 Autokey 개발자가 지정된 위치의 첫 번째 키를 요청하면 생성됩니다.

  • 키 이름 지정: Autokey에서 생성된 키는 다음 이름 지정 규칙을 따릅니다.

    PROJECT_NUMBER-SERVICE_SHORT_NAME-RANDOM_HEX
    
  • 모든 Cloud KMS 키와 마찬가지로 Autokey로 생성된 키는 내보�� 수 없습니다.

  • 키 추적과 호환되는 CMEK 통합 서비스에 사용되는 모든 Cloud KMS 키와 마찬가지로 Autokey에서 생성된 키는 Cloud KMS 대시보드에서 추적됩니다.

Autokey 적용

폴더 내에서 Autokey 사용을 적용하려면 IAM 액세스 제어를 CMEK 조직 정책과 결합하면 됩니다. 이 기능은 Autokey 서비스 에이전트가 아닌 주 구성원에서 키 생성 권한을 삭제한 후 Autokey 키 프로젝트를 사용하여 CMEK로 모든 리소스를 보호하도록 요구하는 방식으로 작동합니다. Autokey 사용을 적용하는 방법에 대한 자세한 안내는 Autokey 사용 적용을 참조하세요.

호환 서비스

다음 표에는 Cloud KMS Autokey와 호환되는 서비스가 나와 있습니다.

서비스 보호되는 리소스 키 세부사항
Cloud Storage
  • storage.googleapis.com/Bucket

스토리지 버킷 내의 객체는 버킷 기본 키를 사용합니다. Autokey는 storage.object 리소스의 키를 만들지 않습니다.

버킷당 키 1개
Compute Engine
  • compute.googleapis.com/Disk
  • compute.googleapis.com/Image
  • compute.googleapis.com/Instance
  • compute.googleapis.com/MachineImage

스냅샷은 스냅샷을 만들 디스크의 키를 사용합니다. Autokey는 compute.snapshot 리소스의 키를 만들지 않습니다.

리소스당 키 1개
BigQuery
  • bigquery.googleapis.com/Dataset

Autokey는 데이터 세트의 기본 키를 만듭니다. 데이터 세트 내의 테이블, 모델, 쿼리, 임시 테이블은 데이터 세트 기본 키를 사용합니다.

Autokey는 데이터 세트가 아닌 BigQuery 리소스의 키를 만들지 않습니다. 데이터 세트에 포함되지 않은 리소스를 보호하려면 프로젝트 또는 조직 수준에서 자체 기본 키를 만들어야 합니다.

리소스당 키 1개
Secret Manager
  • secretmanager.googleapis.com/Secret

Secret Manager는 Terraform 또는 REST API를 사용하여 리소스를 만들 때만 Cloud KMS Autokey와 호환됩니다.

프로젝트 내 위치당 키 1개

제한사항

  • AutokeyConfig 리소스를 삭제할 수 없습니다. AutokeyConfig를 업데이트하고 enabled=false를 설정하여 폴더에서 Autokey를 중지할 수 있지만 구성된 키 프로젝트는 AutokeyConfig에 유지됩니다. AutokeyConfig를 업데이트하여 구성된 키 프로젝트는 변경할 수 있습니다.
  • gcloud CLI는 Autokey 리소스에 사용할 수 없습니다.
  • 키 핸들은 Cloud 애셋 인벤토리에 없습니다.

다음 단계