CMEK 조직 정책 적용

Google Cloud 에서는 조직 내 CMEK 사용을 보장하기 위해 두 가지 조직 정책 제약조건이 사용됩니다.

  • constraints/gcp.restrictNonCmekServices는 CMEK 보호를 요구하기 위해 사용됩니다.
  • constraints/gcp.restrictCmekCryptoKeyProjects는 CMEK 보호에 사용되는 Filestore 키를 제한하기 위해 사용됩니다.

CMEK 조직 정책은 지원되는 Google Cloud 서비스 내에서 새로 생성된 리소스에만 적용됩니다.

작동 방식에 관한 자세한 설명은 Google Cloud 리소스 계층 구조CMEK 조직 정책을 참고하세요.

조직 정책으로 CMEK 사용 제어

Filestore는 CMEK 조직 정책 제약 조건과 통합되어 조직의 Filestore 리소스에 대한 암호화 규정 준수 요구사항을 지정할 수 있습니다.

통합을 통해 다음을 수행할 수 있습니다.

다음 섹션에서는 이러한 두 가지 작업을 모두 다룹니다.

모든 Filestore 리소스에 CMEK 필요

일반적인 정책에서는 조직의 모든 리소스를 보호하기 위해 CMEK를 사용하도록 요구합니다. constraints/gcp.restrictNonCmekServices 제약조건을 사용하여 Filestore에서 이 정책을 시행할 수 있습니다.

이 조직 정책을 설정하면 지정된 Cloud KMS 키가 없는 모든 리소스 만들기 요청이 실패합니다.

이 정책을 설정하면 프로젝트의 새 리소스에만 적용됩니다. Cloud KMS 키가 설정되지 않은 기존 리소스도 계속 존재하며 문제 없이 액세스할 수 있습니다.

콘솔

  1. 조직 정책 페이지를 엽니다.

    조직 정책으로 이동

  2. 필터 필드에 constraints/gcp.restrictNonCmekServices를 입력한 다음 CMEK 없이 리소스를 만들 수 있는 서비스 제한을 클릭합니다.

  3. 정책 관리를 클릭합니다.

  4. 정책 수정 페이지에서 상위 정책 재정의를 선택합니다.

  5. 규칙 추가를 선택합니다.

  6. 정책 값에서 커스텀을 선택합니다.

  7. 정책 유형에서 거부를 선택합니다.

  8. 커스텀 값 필드에 is:file.googleapis.com를 입력합니다.

  9. 완료를 클릭한 다음 정책 설정을 클릭합니다.

gcloud

  1. 정책을 저장할 /tmp/policy.yaml 임시 파일을 만듭니다.

      name: projects/PROJECT_ID/policies/gcp.restrictNonCmekServices
      spec:
        rules:
        - values:
            deniedValues:
            - is:file.googleapis.com
    

    PROJECT_ID를 사용하려는 프로젝트의 프로젝트 ID로 바꿉니다.

  2. org-policies set-policy 명령어를 실행합니다.

      gcloud org-policies set-policy /tmp/policy.yaml
    

정책이 성공적으로 적용되었는지 확인하려면 프로젝트에서 인스턴스 또는 백업을 만들어 보면 됩니다. Cloud KMS 키를 지정하지 않으면 프로세스가 실패합니다.

Filestore 프로젝트의 Cloud KMS 키 제한

constraints/gcp.restrictCmekCryptoKeyProjects 제약조건을 사용하여 Filestore 프로젝트의 리소스를 보호하는 데 사용할 수 있는 Cloud KMS 키를 제한할 수 있습니다.

규칙을 지정할 수 있는데, 예를 들어 'projects/my-company-data-project의 모든 Filestore 리소스에 대해 이 프로젝트에서 사용되는 Cloud KMS 키는 projects/my-company-central-keys 또는 projects/team-specific-keys에서 가져와야 한다'와 같이 지정하면 됩니다.

콘솔

  1. 조직 정책 페이지를 엽니다.

    조직 정책으로 이동

  2. 필터 필드에 constraints/gcp.restrictCmekCryptoKeyProjects를 입력한 다음 CMEK에 KMS CryptoKey를 제공할 수 있는 프로젝트 제한을 클릭합니다.

  3. 정책 관리를 클릭합니다.

  4. 정책 수정 페이지에서 상위 정책 재정의를 선택합니다.

  5. 규칙 추가를 선택합니다.

  6. 정책 값에서 커스텀을 선택합니다.

  7. 정책 유형에서 거부를 선택합니다.

  8. 커스텀 값 필드에 다음을 입력합니다.

    under:projects/KMS_PROJECT_ID
    

    KMS_PROJECT_ID를 사용하려는 Cloud KMS 키가 있는 프로젝트 ID로 바꿉니다.

    예를 들면 under:projects/my-kms-project입니다.

  9. 완료를 클릭한 다음 정책 설정을 클릭합니다.

gcloud

  1. 정책을 저장할 /tmp/policy.yaml 임시 파일을 만듭니다.

      name: projects/PROJECT_ID/policies/gcp.restrictCmekCryptoKeyProjects
      spec:
        rules:
        - values:
            allowedValues:
            - under:projects/KMS_PROJECT_ID
    

    각 항목의 의미는 다음과 같습니다.

    • PROJECT_ID는 사용하려는 프로젝트의 프로젝트 ID입니다.
    • KMS_PROJECT_ID는 사용하려는 Cloud KMS 키가 있는 프로젝트 ID입니다.
  2. org-policies set-policy 명령어를 실행합니다.

      gcloud org-policies set-policy /tmp/policy.yaml
    

정책이 성공적으로 적용되었는지 확인하려면 다른 프로젝트의 Cloud KMS 키를 사용하여 인스턴스 또는 백업을 만들어 보면 됩니다. 프로세스가 실패합니다.

제한사항

조직 정책을 설정할 때는 다음과 같은 제한사항이 적용됩니다.

CMEK 사용 가능 여부

참고로 기본 HDD 및 기본 SSD 서비스 등급에는 CMEK 지원이 제공되지 않습니다. 이러한 제약 조건이 정의된 방식을 고려할 때 CMEK 사용이 필요한 조직 정책을 적용한 후 연결된 프로젝트에서 기본 등급 인스턴스 또는 백업을 만들려고 하면 이러한 만들기 작업이 실패합니다.

기존 리소스

기존 리소스에는 새로 만든 조직 정책이 적용되지 않습니다. 예를 들어 모든 create 작업에 대해 CMEK를 지정해야 하는 조직 정책을 만드는 경우 정책은 기존 인스턴스 및 백업 체인에 소급하여 적용되지 않습니다. 이러한 리소스는 CMEK 없이도 계속 액세스할 수 있습니다. 인스턴스 또는 백업 체인 등 기존 리소스에 정책을 적용하려면 리소스를 교체해야 합니다.

조직 정책을 설정하는 데 필요한 권한

테스트 목적으로는 조직 정책을 설정하거나 업데이트할 수 있는 권한을 획득하기 어려울 수 있습니다. 조직 정책 관리자 역할을 부여받아야 하며, 이 역할은 조직 수준에서만 부여할 수 있습니다.

조직 수준에서 역할을 부여받아야 하지만 특정 프로젝트나 폴더에만 적용되는 정책을 지정할 수 있습니다.

Cloud KMS 키 순환이 미치는 영향

Filestore는 리소스와 연결된 Cloud KMS 키가 순환될 때 리소스의 암호화 키를 자동으로 순환하지 않습니다.

  • 기존 인스턴스 및 백업의 모든 데이터는 생성될 때 사용한 키 버전으로 계속 보호됩니다.

  • 새로 생성된 인스턴스 또는 백업은 생성 시 지정된 기본 키 버전을 사용합니다.

키를 순환해도 이전 키 버전으로 암호화된 데이터는 자동으로 다시 암호화되지 않습니다. 최신 키 버전으로 데이터를 암호화하려면 리소스에서 이전 키 버전을 복호화한 다음 동일한 리소스를 새 키 버전으로 다시 암호화해야 합니다. 또한 키를 순환해도 기존 키 버전이 자동으로 사용 중지되거나 삭제되지는 않습니다.

이러한 각 작업을 실행하는 방법에 관한 자세한 안내는 다음 가이드를 참고하세요.

Cloud KMS 키에 대한 Filestore 액세스 권한

Cloud KMS 키는 다음과 같은 조건에서 Filestore에서 사용 가능하며 액세스할 수 있습니다.

  • 키가 사용 설정되어 있음
  • Filestore 서비스 계정에 키에 대한 암호화 및 복호화 권한이 있음

다음 단계