이 문서에서는 Google Cloud 콘솔, Google Cloud CLI, Cloud KMS API 또는 Terraform을 사용하여 Cloud KMS Autokey를 사용 설정하고 구성하는 방법을 보여줍니다. 폴더에 전용 프로젝트 키 저장소를 사용하여 Autokey를 사용 설정하거나, 개별 프로젝트 또는 폴더 내의 모든 프로젝트에 동일 프로젝트 키 저장소를 사용하여 Autokey를 사용 설정할 수 있습니다. Autokey에 대한 자세한 내용은 Autokey 개요를 참고하세요.
이 문서는 관리자를 대상으로 합니다.
Autokey 구성 상속
폴더에서 Autokey를 구성하면 해당 폴더 내의 하위 폴더와 프로젝트가 상위 폴더의 Autokey 구성을 상속합니다. 하위 폴더 또는 프로젝트에서 Autokey를 구성할 때 상위 리소스의 구성을 상속할지 아니면 해당 리소스에 대한 새 Autokey 구성을 만들지 결정합니다. 하위 리소스에 적용된 Autokey 구성은 상위 폴더의 구성을 재정의합니다.
다음 표에는 지원되는 Autokey 구성 사용 사례가 나와 있습니다.
| 리소스 유형 | Autokey 구성 | 설명 |
|---|---|---|
| 조직 | 해당 없음 | 조직에서는 자동 키를 사용 설정할 수 없습니다. 조직 내의 하위 리소스는 빈 AutokeyConfig 리소스를 상속합니다. Google Cloud 콘솔에서 이러한 리소스의 자동 키 상태가 사용 설정되지 않음으로 표시됩니다. 조직 내에서 Autokey 사용을 제한하거나 완전히 사용 중지하려면 조직 정책을 사용하면 됩니다. 자세한 내용은 Autokey 사용 제어를 참고하세요. |
| 폴더 | DEDICATED_KEY_PROJECT |
전용 프로젝트 키 저장소가 있는 Autokey가 폴더 내의 리소스 프로젝트에 사용 설정됩니다. 이 구성을 상속하는 리소스 프로젝트의 경우 Autokey는 전용 키 프로젝트에 키를 만듭니다. |
| 폴더 | RESOURCE_PROJECT |
동일 프로젝트 키 저장소가 있는 Autokey가 폴더 내의 리소스 프로젝트에 사용 설정됩니다. 이 구성을 상속하는 리소스 프로젝트의 경우 Autokey는 보호하는 리소스와 동일한 프로젝트에 키를 만듭니다. |
| 폴더 | DISABLED |
폴더 내에서 Autokey가 사용 중지되지만 하위 폴더와 프로젝트는 이 구성을 재정의할 수 있습니다. 폴더 내에서 Autokey를 제한하거나 완전히 사용 중지하려면 조직 정책을 사용하면 됩니다. 자세한 내용은 Autokey 사용 제어를 참고하세요. |
| 폴더 | KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED |
폴더는 상위 폴더 또는 조직에서 Autokey 구성을 상속합니다. |
| 프로젝트 | RESOURCE_PROJECT |
동일 프로젝트 키 저장소가 있는 Autokey가 리소스 프로젝트에 사용 설정되어 있습니다. 이 프로젝트에서 생성된 리소스의 경우 Autokey는 동일한 프로젝트에 키를 만듭니다. |
| 프로젝트 | DISABLED |
리소스 프로젝트에 Autokey가 사용 중지되어 있습니다. 이 프로젝트에서 리소스를 만드는 개발자는 자신이 만드는 리소스에 CMEK를 사용하려면 키를 수동으로 만들고 프로비저닝해야 합니다. |
| 프로젝트 | KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED |
프로젝트는 상위 폴더에서 Autokey 구성을 상속합니다. |
시작하기 전에
폴더에 전용 프로젝트 키 저장소를 사용하여 Autokey를 사용 설정하려면 다음이 필요합니다.
Autokey를 사용 설정할 폴더가 포함된 조직 리소스. Autokey를 사용 설정할 폴더가 없으면 새 리소스 폴더를 생성할 수 있습니다. 이 폴더에서 Autokey를 사용 설정하면 폴더 내의 모든 리소스 프로젝트에 Autokey가 사용 설정됩니다.
전용 프로젝트 키 스토리지를 사용하여 Autokey를 사용하려는 리소스 프로젝트가 있지만 해당 프로젝트가 Autokey를 사용 설정할 폴더 내에 있지 않은 경우 기존 리소스 프로젝트를 새 폴더로 이동할 수 있습니다.
동일 프로젝트 키 저장으로 Autokey를 사용 설정하려면 다음 중 하나가 있어야 합니다.
- 자동 키를 사용 설정하고
keyHandles.create권한이 IAM 거부 정책에 의해 차단되지 않는 프로젝트 Google Cloud - Autokey를 사용 설정할 폴더로, IAM 거부 정책에 의해
keyHandles.create권한이 차단되지 않은 프로젝트가 하나 이상 포함되어 있습니다. Google Cloud
필요한 역할
Autokey를 사용 설정하고 구성하는 데 필요한 권한을 얻으려면 관리자에게 폴더, 프로젝트 또는 상위 리소스에 대한 다음 IAM 역할을 부여해 달라고 요청하세요.
-
Autokey를 사용 설정하려면 다음 단계를 따르세요.
- Cloud KMS Autokey 관리자 (
roles/cloudkms.autokeyAdmin) - 서비스 사용량 관리자(
roles/serviceusage.serviceUsageAdmin)
- Cloud KMS Autokey 관리자 (
-
전용 프로젝트 키 저장소를 사용하여 Autokey를 사용 설정하려면 다음 단계를 따르세요.
- 폴더 IAM 관리자 (
roles/resourcemanager.folderIamAdmin) - 결제 계정 사용자 (
roles/billing.user)
- 폴더 IAM 관리자 (
-
자동 키 구성을 보려면 Cloud KMS 뷰어 (
roles/cloudkms.viewer)를 사용하세요. -
모든 유효한 Autokey 구성을 보려면 다음을 실행하세요.
- Cloud 애셋 뷰어 (
roles/cloudasset.viewer) - 조직 - 서비스 사용량 소비자(
roles/serviceusage.serviceUsageConsumer)
- Cloud 애셋 뷰어 (
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
이러한 사전 정의된 역할에는 Autokey를 사용 설정하고 구성하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.
필수 권한
Autokey를 사용 설정하고 구성하려면 다음 권한이 필요합니다.
-
Autokey를 사용 설정하려면 다음 단계를 따르세요.
-
cloudkms.autokeyConfigs.* -
serviceusage.services.enable
-
-
전용 프로젝트 키 저장소를 사용하여 Autokey를 사용 설정하려면 다음 단계를 따르세요.
-
resourcemanager.folders.get -
resourcemanager.folders.getIamPolicy -
resourcemanager.folders.setIamPolicy -
billing.resourceAssociations.create
-
-
Autokey 구성을 보려면 다음을 실행하세요.
-
cloudkms.folders.showEffectiveAutokeyConfig -
cloudkms.projects.showEffectiveAutokeyConfig
-
-
모든 유효한 Autokey 구성을 보려면 다음을 실행하세요.
-
cloudasset.assets.query -
serviceusage.services.use
-
커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.
Terraform 설정
이 섹션에는 이 문서의 나머지 Terraform 샘플의 필수 요건인 Terraform 변수와 리소스의 예가 포함되어 있습니다. Terraform을 사용하여 Autokey 구성을 만들거나 관리하지 않는 경우 이 섹션을 건너뛰세요.
Terraform 설정 샘플을 표시하거나 숨기려면 여기를 클릭하세요.
이 샘플은 다음 설정 단계를 완료합니다.
- 후속 Terraform 샘플에서 사용되는 변수를 정의합니다.
- 리소스 폴더를 만듭니다. 개별 프로젝트에서 동일한 프로젝트 키 저장소만 사용하려는 경우 이 단계를 건너뛰어도 됩니다.
- Autokey 관리자 및 사용자 역할을 부여합니다.
variable "organization_ID" { description = "Your Google Cloud Org ID" type = string default = "ORGANIZATION_ID" } variable "billing_account" { description = "Your Google Cloud Billing Account ID" type = string default = "BILLING_ACCOUNT_ID" } /* List the users who should have the authority to enable and configure Autokey at a folder level */ variable "autokey_folder_admins" { type = list(string) default = [AUTOKEY_ADMIN_USER_IDS] } /* List the users who should have the authority to protect their resources with Autokey */ variable "autokey_folder_users" { type = list(string) default = [