태그 생성 및 관리

이 가이드에서는 태그를 만들고 관리하는 방법을 설명합니다. 태그는 Google Cloud 리소스에 연결할 수 있는 키-값 쌍입니다. 태그를 사용하면 지원되는 리소스에 특정 태그가 있는지 여부에 따라 정책을 조건부로 허용하거나 거부할 수 있습니다.

시작하기 전에

태그의 정의와 작동 방식에 대한 자세한 내용은 태그 개요를 참조하세요.

필수 권한

필요한 권한은 수행할 작업에 따라 달라집니다.

원하는 권한을 얻으려면 관리자에게 리소스 계층 구조의 적절한 수준에서 제안된 역할을 부여해 달라고 요청하세요.

태그 보기

태그 정의와 리소스에 연결된 태그를 보려면 태그 뷰어 역할(roles/resourcemanager.tagViewer) 또는 다음 권한이 포함된 다른 역할이 필요합니다.

필수 권한

  • resourcemanager.tagKeys.get
  • resourcemanager.tagKeys.list
  • resourcemanager.tagValues.list
  • resourcemanager.tagValues.get
  • listTagBindings: 적절한 리소스 유형. 예를 들면 Compute Engine 인스턴스에 연결된 태그를 보려면 compute.instances.listTagBindings가 필요합니다.
  • listEffectiveTags
  • : 적절한 리소스 유형. 예를 들어 Compute Engine 인스턴스에 연결되거나 상속된 모든 태그를 보려면 compute.instances.listEffectiveTags가 필요합니다.

조직 수준에서 태그를 보려면 조직 리소스에 대한 조직 뷰어 역할(roles/resourcemanager.organizationViewer)이 필요합니다.

태그 관리

태그 정의를 생성, 업데이트, 삭제하려면 태그 관리자 역할(roles/resourcemanager.tagAdmin)이나 다음 권한이 포함된 다른 역할이 필요합니다.

필수 권한

  • resourcemanager.tagKeys.create
  • resourcemanager.tagKeys.update
  • resourcemanager.tagKeys.delete
  • resourcemanager.tagKeys.list
  • resourcemanager.tagKeys.get
  • resourcemanager.tagKeys.getIamPolicy
  • resourcemanager.tagKeys.setIamPolicy
  • resourcemanager.tagValues.create
  • resourcemanager.tagValues.update
  • resourcemanager.tagValues.delete
  • resourcemanager.tagValues.list
  • resourcemanager.tagValues.get
  • resourcemanager.tagValues.getIamPolicy
  • resourcemanager.tagValues.setIamPolicy

조직 수준에서 태그를 관리하려면 조직 리소스에 대한 조직 뷰어 역할(roles/resourcemanager.organizationViewer)이 필요합니다.

리소스의 태그 관리

리소스에 연결된 태그를 추가하고 삭제하려면 태그 값태그 값이 연결된 리소스 모두에 태그 사용자 역할(roles/resourcemanager.tagUser)이나 동등한 권한을 가지 다른 역할이 필요합니다. 태그 사용자 역할에는 다음 권한이 포함됩니다.

필수 권한

  • 태그 값을 연결할 리소스에 필요한 권한
    • 리소스별 createTagBinding 권한(예: Compute Engine 인스턴스의 경우 compute.instances.createTagBinding)
    • 리소스별 deleteTagBinding 권한(예: Compute Engine 인스턴스의 경우 compute.instances.deleteTagBinding)
  • 태그 값에 필요한 권한:
    • resourcemanager.tagValueBindings.create
    • resourcemanager.tagValueBindings.delete
  • 프로젝트 및 태그 정의를 볼 수 있는 권한:
    • resourcemanager.tagValues.get
    • resourcemanager.tagValues.list
    • resourcemanager.tagKeys.get
    • resourcemanager.tagKeys.list
    • resourcemanager.projects.get

새 태그 생성 및 정의

태그는 키-값 쌍으로 구성되며 Google Cloud 계층 구조의 리소스에 연결됩니다. 새 태그를 만들려면 먼저 생성할 태그를 설명하는 태그 키를 만들어야 합니다. 예를 들어 environment라는 키를 만들어 리소스 계층 구조의 리소스에 대한 프로덕션 환경, 테스트 환경, 개발 환경을 지정하려고 할 수 있습니다.

그런 다음 키가 가질 수 있는 여러 값을 만들 수 있습니다. environment라는 태그 키를 만든 경우 가능한 환경이 3개 있음을 지정하고 production,development, test의 값을 각각 만들 수 있습니다.

주어진 조직 또는 프로젝트에 만들 수 있는 키는 최대 1,000개이고, 각 키마다 총 1,000개의 값을 만들 수 있습니다.

마지막으로 이러한 값을 계층 구조의 리소스에 연결할 수 있으며 키-값 쌍 연결을 사용하여 수행할 수 있습니다. 예를 들어 조직 전체에서 여러 테스트 환경 폴더에 test를 연결할 수 있으며, 각 폴더는 environment: test 키-값 쌍을 가집니다.

태그 만들기

시작하려면 태그 키를 만들어야 합니다.

태그 키의 shortName은 최대 길이가 256자(영문 기준)입니다. shortName에 허용되는 문자 집합에는 작은따옴표('), 큰따옴표("), 백슬래시(\), 슬래시(/)를 제외하고 UTF-8로 인코딩된 유니코드 문자가 포함됩니다.

shortName이 생성되면 변경할 수 없으며 동일한 네임스페이스 내에서 고유해야 합니다.

콘솔

태그 키를 만들려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택 도구에서 태그 키를 만들려는 조직 또는 프로젝트를 선택합니다.

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

  4. 태그 키 상자에 태그 키의 표시 이름을 입력합니다. 이 이름은 태그의 네임스페이스 이름의 일부가 됩니다.

  5. 태그 키 설명 상자에 태그 키에 대한 설명을 입력합니다.

  6. 이 키에 태그 값을 추가하려면 만들려는 각 태그 키에 대해 값 추가를 클릭합니다.

  7. 태그 값 상자에 태그 값의 표시 이름을 입력합니다. 이 이름은 태그의 네임스페이스 이름의 일부가 됩니다.

  8. 태그 값 설명 상자에 태그 값에 대한 설명을 입력합니다.

  9. 태그 값 추가를 완료했으면 태그 키 만들기를 클릭합니다.

gcloud

태그 키를 만들려면 gcloud resource-manager tags keys create 명령어를 사용합니다.

gcloud resource-manager tags keys create SHORT_NAME \
    --parent=RESOURCE_ID

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

  • SHORT_NAME은 태그 키의 표시 이름입니다(예: environment).

  • RESOURCE_ID는 이 태그 키의 상위 조직 또는 프로젝트 리소스의 ID입니다. 예를 들면 organizations/123456789012, projects/test-project123, projects/234567890123입니다. 조직 ID를 가져오는 방법은 조직 만들기 및 관리를 참조하세요. 프로젝트 ID를 가져오는 방법은 프로젝트 만들기 및 관리를 참조하세요.

다음과 비슷한 응답이 표시됩니다.

Creating tag key environment in organization 1234567890...
<blocking wait until creation completes>
name: tagKeys/123456789012
short_name: environment
namespaced_name: 123456789012/environment
parent: organizations/123456789012

Terraform

google_tags_tag_key 리소스를 사용합니다.

Terraform을 사용하여 태그 키를 만들기 전에 Cloud Resource Manager API를 사용 설정합니다.

다음 예시에서는 envdepartment라는 태그 키를 만듭니다.

data "google_project" "default" {}

resource "google_tags_tag_key" "env_tag_key" {
  parent     = "projects/${data.google_project.default.project_id}"
  short_name = "env"
}

resource "google_tags_tag_key" "department_tag_key" {
  parent     = "projects/${data.google_project.default.project_id}"
  short_name = "department"
}

Google Cloud 프로젝트에 Terraform 구성을 적용하려면 다음 섹션의 단계를 완료하세요.

Cloud Shell 준비

  1. Cloud Shell을 실행합니다.
  2. Terraform 구성을 적용할 기본 Google Cloud 프로젝트를 설정합니다.

    이 명령어는 프로젝트당 한 번만 실행하면 되며 어떤 디렉터리에서도 실행할 수 있습니다.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Terraform 구성 파일에서 명시적 값을 설정하면 환경 변수가 재정의됩니다.

디렉터리 준비

각 Terraform 구성 파일에는 자체 디렉터리(루트 모듈이라고도 함)가 있어야 합니다.

  1. Cloud Shell에서 디렉터리를 만들고 해당 디렉터리 내에 새 파일을 만드세요. 파일 이름에는 .tf 확장자가 있어야 합니다(예: main.tf). 이 튜토리얼에서는 파일을 main.tf라고 합니다.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. 튜토리얼을 따라 하는 경우 각 섹션이나 단계에서 샘플 코드를 복사할 수 있습니다.

    샘플 코드를 새로 만든 main.tf에 복사합니다.

    필요한 경우 GitHub에서 코드를 복사합니다. 이는 Terraform 스니펫이 엔드 투 엔드 솔루션의 일부인 경우에 권장됩니다.

  3. 환경에 적용할 샘플 매개변수를 검토하고 수정합니다.
  4. 변경사항을 저장합니다.
  5. Terraform을 초기화합니다. 이 작업은 디렉터리당 한 번만 수행하면 됩니다.
    terraform init

    원하는 경우 최신 Google 공급업체 버전을 사용하려면 -upgrade 옵션을 포함합니다.

    terraform init -upgrade

변경사항 적용

  1. 구성을 검토하고 Terraform에서 만들거나 업데이트할 리소스가 예상과 일치하는지 확인합니다.
    terraform plan

    필요에 따라 구성을 수정합니다.

  2. 다음 명령어를 실행하고 프롬프트에 yes를 입력하여 Terraform 구성을 적용합니다.
    terraform apply

    Terraform에 '적용 완료' 메시지가 표시될 때까지 기다립니다.

  3. 결과를 보려면 Google Cloud 프로젝트를 엽니다. Google Cloud 콘솔에서 UI의 리소스로 이동하여 Terraform이 리소스를 만들었거나 업데이트했는지 확인합니다.

API

태그 키를 만들려면 키의 JSON 표현을 만듭니다. 태그 키 형식에 대한 자세한 내용은 TagKey 참조를 확인하세요.

그런 다음 tagKeys.create 메서드를 사용합니다.

POST https://cloudresourcemanager.googleapis.com/v3/tagKeys/ -d

JSON 요청 본문:

{
    "parent": RESOURCE_ID,
    "shortName": SHORT_NAME,
    "description": DESCRIPTION,
}

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

  • SHORT_NAME은 태그 키의 표시 이름입니다(예: environment).

  • RESOURCE_ID는 이 태그 키의 상위 조직 또는 프로젝트 리소스의 ID입니다. 예를 들면 organizations/123456789012, projects/test-project123, projects/234567890123입니다. 조직 ID를 가져오는 방법은 조직 만들기 및 관리를 참조하세요. 프로젝트 ID를 가져오는 방법은 프로젝트 만들기 및 관리를 참조하세요.

  • DESCRIPTION은 키에 대한 설명이며 256자 이내로 입력합니다.

키를 만든 후 상위 리소스 내에서 네임스페이스화된 namespacedName이라는 사람이 읽을 수 있는 고유한 표시 이름과 name이라는 전역적으로 고유한 영구 ID를 찾을 수 있습니다.

태그 키 보기

만들 때 표시되는 영구 ID 또는 네임스페이화된 이름을 사용하여 특정 태그 키에 대한 정보를 찾을 수 있습니다.

콘솔

생성된 태그를 보려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택 도구에서 태그가 포함된 조직 또는 프로젝트를 선택합니다.

  3. 선택한 조직 또는 프로젝트의 모든 태그가 목록에 표시됩니다. 태그 키를 확인하려는 태그를 클릭합니다.

gcloud

주어진 태그 키와 관련된 정보를 표시하려면 gcloud resource-manager tags keys describe 명령어를 사용합니다.

gcloud resource-manager tags keys describe TAGKEY_NAME

TAGKEY_NAME은 정보를 표시할 태그 키의 영구 ID 또는 네임스페이스 이름입니다(예: tagKeys/123456789012 또는 project-id/environment).

다음과 비슷한 응답이 표시됩니다.

name: tagKeys/123456789012
short_name: environment
namespaced_name: 123456789012/environment
parent: organizations/123456789012

API

주어진 태그 키와 관련된 정보를 표시하려면 tagKeys.get 메서드를 사용합니다.

GET https://cloudresourcemanager.googleapis.com/v3/{name=TAGKEY_NAME}

TAGKEY_NAME은 정보를 표시할 태그 키의 영구 ID입니다(예: tagKeys/123456789012).

네임스페이스 이름을 사용하여 지정된 태그 키와 관련된 정보를 표시하려면 tagKeys.getNamespaced 메서드를 사용합니다.

GET https://cloudresourcemanager.googleapis.com/v3/tagKeys/namespaced?name={TAGKEY_NAMESPACED_NAME}

TAGKEY_NAMESPACED_NAME은 태그 키의 네임스페이스 이름이며 parentNamespace/tagKeyShortName 형식입니다.

태그 값 추가

태그 키를 만든 후에는 키에 허용되는 값을 추가할 수 있습니다.

태그 값의 shortName이 다음 요구사항을 충족해야 합니다.

  • shortName의 최대 길이는 256자(영문 기준)입니다.

  • shortName은 영숫자 문자로 시작해야 합니다.

  • shortName에는 작은따옴표('), 큰따옴표("), 백슬래시(\), 슬래시(/)를 제외하고 UTF-8로 인코딩된 유니코드 문자가 포함될 수 있습니다.

  • shortName은 생성된 후에는 변경될 수 없으며 동일한 네임스페이스 내에서 고유해야 합니다.

콘솔

태그 값을 만들려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택 도구에서 태그 값을 만들려는 조직 또는 프로젝트를 선택합니다.

  3. 태그 목록에서 새 값을 추가할 태그를 클릭합니다.

  4. 값 추가를 클릭합니다.

  5. 태그 값 상자에 태그 값의 표시 이름을 입력합니다. 이 이름은 태그의 네임스페이스 이름의 일부가 됩니다.

  6. 태그 값 설명 상자에 태그 값에 대한 설명을 입력합니다.

  7. 저장을 클릭합니다.

gcloud

태그 값을 만들려면 gcloud resource-manager tags values create 명령어를 사용합니다. 이 값을 만들 키를 지정해야 합니다.

gcloud resource-manager tags values create TAGVALUE_SHORTNAME \
    --parent=TAGKEY_NAME

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

  • TAGVALUE_SHORTNAME은 새 태그 값의 별칭입니다(예: production).

  • TAGKEY_NAME은 상위 태그 키의 영구 ID 또는 네임스페이스 이름입니다(예: tagKeys/4567890123).

다음과 비슷한 응답이 표시됩니다.

Creating tag value production in tag key 123456789012/environment...
<blocking wait until creation completes>
name: tagValues/7890123456
short_name: production
namespaced_name: 123456789012/environment/production
parent: tagKeys/123456789012

Terraform

google_tags_tag_value 리소스를 사용합니다.

Terraform을 사용하여 태그 값을 만들기 전에 Cloud Resource Manager API를 사용 설정합니다.

다음 예시에서는 prodsales라는 태그 값을 만듭니다.

data "google_project" "default" {}

resource "google_tags_tag_key" "env_tag_key" {
  parent     = "projects/${data.google_project.default.project_id}"
  short_name = "env1"
}

resource "google_tags_tag_key" "department_tag_key" {
  parent     = "projects/${data.google_project.default.project_id}"
  short_name = "department1"
}

resource "google_tags_tag_value" "env_tag_value" {
  parent     = "tagKeys/${google_tags_tag_key.env_tag_key.name}"
  short_name = "prod"
}

resource "google_tags_tag_value" "department_tag_value" {
  parent     = "tagKeys/${google_tags_tag_key.department_tag_key.name}"
  short_name = "sales"
}

Google Cloud 프로젝트에 Terraform 구성을 적용하려면 다음 섹션의 단계를 완료하세요.

Cloud Shell 준비

  1. Cloud Shell을 실행합니다.
  2. Terraform 구성을 적용할 기본 Google Cloud 프로젝트를 설정합니다.

    이 명령어는 프로젝트당 한 번만 실행하면 되며 어떤 디렉터리에서도 실행할 수 있습니다.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Terraform 구성 파일에서 명시적 값을 설정하면 환경 변수가 재정의됩니다.

디렉터리 준비

각 Terraform 구성 파일에는 자체 디렉터리(루트 모듈이라고도 함)가 있어야 합니다.

  1. Cloud Shell에서 디렉터리를 만들고 해당 디렉터리 내에 새 파일을 만드세요. 파일 이름에는 .tf 확장자가 있어야 합니다(예: main.tf). 이 튜토리얼에서는 파일을 main.tf라고 합니다.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. 튜토리얼을 따라 하는 경우 각 섹션이나 단계에서 샘플 코드를 복사할 수 있습니다.

    샘플 코드를 새로 만든 main.tf에 복사합니다.

    필요한 경우 GitHub에서 코드를 복사합니다. 이는 Terraform 스니펫이 엔드 투 엔드 솔루션의 일부인 경우에 권장됩니다.

  3. 환경에 적용할 샘플 매개변수를 검토하고 수정합니다.
  4. 변경사항을 저장합니다.
  5. Terraform을 초기화합니다. 이 작업은 디렉터리당 한 번만 수행하면 됩니다.
    terraform init

    원하는 경우 최신 Google 공급업체 버전을 사용하려면 -upgrade 옵션을 포함합니다.

    terraform init -upgrade

변경사항 적용

  1. 구성을 검토하고 Terraform에서 만들거나 업데이트할 리소스가 예상과 일치하는지 확인합니다.
    terraform plan

    필요에 따라 구성을 수정합니다.

  2. 다음 명령어를 실행하고 프롬프트에 yes를 입력하여 Terraform 구성을 적용합니다.
    terraform apply

    Terraform에 '적용 완료' 메시지가 표시될 때까지 기다립니다.

  3. 결과를 보려면 Google Cloud 프로젝트를 엽니다. Google Cloud 콘솔에서 UI의 리소스로 이동하여 Terraform이 리소스를 만들었거나 업데이트했는지 확인합니다.

API

태그 값을 만들려면 값의 JSON 표현을 만듭니다. 태그 값 형식에 대한 자세한 내용은 TagValue 참조를 확인하세요.

그런 다음 tagValues.create 메서드를 사용합니다.

POST https://cloudresourcemanager.googleapis.com/v3/tagValues/ -d

JSON 요청 본문:

{
    "parent": TAGKEY_NAME,
    "shortName": SHORT_NAME,
    "description": DESCRIPTION,
}

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

  • TAGKEY_NAME은 상위 태그 키의 영구 ID입니다(예: tagKeys/4567890123).

  • SHORT_NAME은 태그 값의 표시 이름입니다(예: environment).

  • DESCRIPTION은 값에 대한 설명이며 256자 이내로 입력합니다. 값을 만든 후 상위 리소스 내에서 네임스페이스화된 namespacedName이라는 사람이 읽을 수 있는 고유한 표시 이름과 name이라는 전역적으로 고유한 영구 ID를 찾을 수 있습니다.

태그 값 검색

만들 때 표시되는 영구 ID 또는 네임스페이화된 이름을 사용하여 특정 태그 값에 대한 정보를 찾을 수 있습니다.

콘솔

생성된 태그를 보려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택 도구에서 태그가 포함된 조직 또는 프로젝트를 선택합니다.

  3. 이 조직 또는 프로젝트 아래에 생성된 모든 태그가 목록에 표시됩니다. 태그 값을 보려는 태그를 클릭합니다.

gcloud

주어진 태그 값과 관련된 정보를 표시하려면 gcloud resource-manager tags values describe 명령어를 사용합니다.

gcloud resource-manager tags values describe TAGVALUE_NAME

TAGVALUE_NAME은 태그 값의 영구 ID 또는 네임스페이스 이름입니다(예: tagValues/4567890123 또는 123456789012/environment/production).

다음과 비슷한 응답이 표시됩니다.

name: tagValues/456789012345
short_name: production
namespaced_name: 123456789012/environment/production
parent: tagKeys/123456789012

API

주어진 태그 값과 관련된 정보를 표시하려면 tagValues.get 메서드를 사용합니다.

GET https://cloudresourcemanager.googleapis.com/v3/{name=TAGVALUE_NAME}

TAGVALUE_NAME은 태그 값의 영구 ID 이름입니다(예: tagValues/4567890123).

네임스페이스 이름을 사용하여 지정된 태그 값과 관련된 정보를 표시하려면 tagValues.getNamespaced 메서드를 사용합니다.

GET https://cloudresourcemanager.googleapis.com/v3/tagValues/namespaced?name={TAGVALUE_NAMESPACED_NAME}

TAGVALUE_NAMESPACED_NAME은 태그 값의 네임스페이스 이름이며 parentNamespace/tagKeyShortName/tagValueShortName 형식입니다.

Google Cloud CLI를 사용하여 태그를 참조할 때는 태그 키 및 값에 대한 네임스페이스 이름 또는 영구 ID를 사용할 수 있습니다. getNamespaced를 제외한 API 호출에서는 영구 ID만 사용해야 합니다. 태그에서 사용하는 식별자 유형에 대한 자세한 내용은 태그 정의 및 식별자를 참조하세요.

기존 태그 업데이트

연결된 키나 값을 업데이트하여 기존 태그를 수정할 수 있습니다. 태그 설명을 업데이트할 수 있지만 닉네임을 업데이트할 수 없습니다.

콘솔

태그 키의 설명을 업데이트하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택 도구에서 태그 키가 포함된 조직 또는 프로젝트를 선택합니다.

  3. 업데이트할 태그 키 옆에 있는 작업을 클릭한 후 세부정보 보기를 클릭합니다.

  4. 화면 상단 근처의 설명 옆에 있는 수정을 클릭합니다.

  5. 태그 키의 설명을 업데이트합니다.

  6. 저장을 클릭합니다.

gcloud

태그 키 설명을 수정하려면 gcloud resource-manager tags keys update 명령어를 사용합니다.

gcloud resource-manager tags keys update TAGKEY_NAME \
    --description=NEW_DESCRIPTION

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

  • TAGKEY_NAME은 업데이트할 키의 영구 ID 또는 네임스페이스가 있는 이름입니다(예: tagKeys/123456789012).

  • NEW_DESCRIPTION은 새 설명으로 사용할 256자 이하의 문자열입니다.

다음과 비슷한 응답이 표시됩니다.

name: tagKeys/123456789012
short_name: environment
namespaced_name: 123456789012/environment
description: "new description"
parent: organizations/123456789012

API

태그 키 설명을 수정하려면 tagKeys.patch 메서드를 사용합니다.

PATCH https://cloudresourcemanager.googleapis.com/v3/{tagKey.name=TAGKEY_NAME} -d

JSON 요청 본문:

{
    "description": DESCRIPTION,
}

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

  • TAGKEY_NAME은 태그 키의 영구 ID입니다(예: tagKeys/123456789012).

  • DESCRIPTION은 키에 대한 설명이며 256자 이내로 입력합니다.

태그 값의 설명을 변경할 수도 있습니다.

콘솔

태그 값의 설명을 업데이트하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택 도구에서 태그 값이 포함된 조직 또는 프로젝트를 선택합니다.

  3. 업데이트할 값에 대한 태그 키 옆에 있는 작업을 클릭한 후 세부정보 보기를 클릭합니다.

  4. 업데이트할 태그 값 옆에 있는 작업을 클릭한 후 세부정보 보기를 클릭합니다.

  5. 화면 상단 근처의 설명 옆에 있는 수정을 클릭합니다.

  6. 태그 값의 설명을 업데이트합니다.

  7. 저장을 클릭합니다.

gcloud

태그 값 설명을 수정하려면 gcloud resource-manager tags values update 명령어를 사용합니다.

gcloud resource-manager tags values update TAGVALUE_NAME \
    --description="NEW_DESCRIPTION"

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

  • TAGVALUE_NAME은 업데이트할 태그 값의 영구 ID 또는 네임스페이스 이름입니다(예: tagValues/4567890123).

  • NEW_DESCRIPTION은 새 설명으로 사용할 256자 이하의 문자열입니다.

다음과 비슷한 응답이 표시됩니다.

short_name: production
namespaced_name: 123456789012/environment/production
parent: tagKeys/123456789012
description: "new description"

API

태그 키 설명을 수정하려면 tagValues.patch 명령어를 사용합니다.

PATCH https://cloudresourcemanager.googleapis.com/v3/{tagKey.name=TAGVALUE_NAME} -d

JSON 요청 본문:

{
    "description": DESCRIPTION,
}

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

  • TAGVALUE_NAME은 태그 값의 영구 ID 이름입니다(예: tagValues/4567890123).

  • DESCRIPTION은 키에 대한 설명이며 256자 이내로 입력합니다.

태그 키 나열

Google Cloud 콘솔, gcloud CLI 또는 API 호출을 사용하여 특정 조직 또는 프로젝트 리소스와 연결된 모든 태그 키를 나열할 수 있습니다.

콘솔

모든 태그를 보려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택 도구에서 태그가 포함된 조직 또는 프로젝트를 선택합니다.

  3. 이 조직 또는 프로젝트 아래에 생성된 모든 태그가 목록에 표시됩니다.

gcloud

조직 또는 프로젝트 리소스 아래에 만든 모든 태그 키 목록을 반환하려면 gcloud resource-manager tags keys list 명령어를 사용합니다.

gcloud resource-manager tags keys list --parent=RESOURCE_ID

RESOURCE_ID는 연결된 태그 키를 찾으려는 조직 또는 프로젝트 리소스의 ID입니다.

  • 조직 또는 프로젝트 ID는 organizations/ORGANIZATION_ID 또는 projects/PROJECT_NAME 형식으로 제공해야 합니다(예: organizations/123456789012projects/test-project123). 조직 ID를 가져오는 방법은 조직 만들기 및 관리를 참조하세요. 프로젝트 ID를 가져오는 방법은 프로젝트 만들기 및 관리를 참조하세요. 다음과 비슷한 응답이 표시됩니다.
NAME                     SHORT_NAME      DESCRIPTION
tagKeys/123456789012     environment     description of tag key

API

주어진 리소스의 모든 태그 키 목록을 반환하려면 쿼리에 지정된 상위 리소스와 함께 tagKeys.list 메서드를 사용합니다.

GET https://cloudresourcemanager.googleapis.com/v3/tagKeys

{
    "parent": "RESOURCE_ID"
}

RESOURCE_ID는 연결된 태그 키를 찾으려는 조직 또는 프로젝트 리소스의 ID입니다(예: organizations/123456789012projects/test-project123).

태그 값 목록

Google Cloud 콘솔, gcloud CLI 또는 API 호출을 사용하여 특정 태그 키와 연관된 모든 태그 값을 나열할 수 있습니다.

콘솔

태그 키에 연결된 모든 태그 값을 보려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택 도구에서 태그 키가 포함된 조직 또는 프로젝트를 선택합니다.

  3. 찾으려는 태그 값이 포함된 태그 키 옆에 있는 작업을 클릭한 후 세부정보 보기를 클릭합니다.

  4. 이 태그 키로 만든 모든 태그 값이 목록에 표시됩니다.

gcloud

키에 연결된 모든 태그 값 목록을 반환하려면 gcloud resource-manager tags values list 명령어를 사용합니다.

gcloud resource-manager tags values list --parent=TAGKEY_NAME

TAGKEY_NAME은 연결된 값을 찾을 태그 키의 영구 ID 또는 네임스페이스 이름입니다(예: tagKeys/123456789012 또는 1234567/environment).

다음과 비슷한 응답이 표시됩니다.

NAME                     SHORT_NAME
tagValues/123456789012   production

API

키에 연결된 모든 태그 값 목록을 반환하려면 쿼리에 지정된 상위 태그 키와 함께 tagValues.list 메서드를 사용합니다.

GET https://cloudresourcemanager.googleapis.com/v3/tagValues

{
    "parent": "TAGKEY_NAME"
}

TAGKEY_NAME은 태그 키의 영구 ID 이름입니다(예: tagKeys/123456789012).

태그 액세스 관리

Google Cloud 콘솔을 사용하여 태그를 관리하고 리소스에 태그 값을 연결할 수 있는 특정 액세스 권한을 사용자에게 부여할 수 있습니다. 태그와 관련된 역할 목록 및 여기에 포함된 권한은 필수 권한을 참조하세요.

태그 키

태그 키에 대한 사용자의 액세스 권한을 관리하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택기에서 액세스를 관리하려는 태그 키가 포함된 조직 또는 프로젝트를 선택합니다.

  3. 액세스를 관리하려는 태그 옆의 체크박스를 클릭합니다.

  4. 액세스 관리를 클릭합니다.

  5. 주 구성원에 역할을 추가하려면 주 구성원 추가를 클릭합니다.

    1. 새 주 구성원 텍스트 상자에 새 역할을 부여할 주 구성원의 이메일 주소를 입력합니다.

    2. 역할 선택 드롭다운 메뉴에서 역할을 선택합니다. 역할을 두 개 이상 추가하려면 다른 역할 추가를 클릭합니다.

    3. 저장을 클릭합니다.

  6. 주 구성원의 역할을 수정하려면 수정할 주 구성원 옆에 있는 수정을 클릭합니다.

    1. 역할 드롭다운 메뉴를 클릭하고 새 역할을 선택하여 이 태그로 주 구성원에 할당된 역할을 변경할 수 있습니다.

    2. 역할을 더 추가하려면 다른 역할 추가를 클릭합니다.

    3. 이 태그로 이 주 구성원에서 역할을 삭제하려면 삭제할 역할 옆에 있는 역할 삭제를 클릭합니다.

    4. 저장을 클릭합니다.

  7. 주 구성원의 역할을 삭제하려면 삭제할 역할 옆에 있는 역할 삭제를 클릭합니다.

    1. 삭제를 클릭합니다.

태그 값

태그 값에 대한 사용자의 액세스 권한을 관리하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택기에서 액세스를 관리하려는 태그 키가 포함된 조직 또는 프로젝트를 선택합니다.

  3. 액세스를 관리할 값에 대한 태그 키 옆에 있는 작업을 클릭한 후 세부정보 보기를 클릭합니다.

  4. 액세스 관리를 클릭합니다.

  5. 주 구성원에 역할을 추가하려면 주 구성원 추가를 클릭합니다.

    1. 새 주 구성원 텍스트 상자에 새 역할을 부여할 주 구성원의 이메일 주소를 입력합니다.

    2. 역할 선택 드롭다운 메뉴에서 역할을 선택합니다. 역할을 두 개 이상 추가하려면 다른 역할 추가를 클릭합니다.

    3. 저장을 클릭합니다.

  6. 주 구성원의 역할을 수정하려면 수정할 주 구성원 옆에 있는 수정을 클릭합니다.

    1. 역할 드롭다운 메뉴를 클릭하고 새 역할을 선택하여 이 태그로 주 구성원에 할당된 역할을 변경할 수 있습니다.

    2. 역할을 더 추가하려면 다른 역할 추가를 클릭합니다.

    3. 이 태그로 이 주 구성원에서 역할을 삭제하려면 삭제할 역할 옆에 있는 역할 삭제를 클릭합니다.

    4. 저장을 클릭합니다.

  7. 주 구성원의 역할을 삭제하려면 삭제할 역할 옆에 있는 역할 삭제를 클릭합니다.

    1. 삭제를 클릭합니다.

리소스에 태그 연결

태그가 생성되고 태그와 리소스 모두에 적절한 액세스 권한이 부여되면 태그를 Google Cloud 리소스에 키-값 쌍으로 연결할 수 있습니다. 주어진 키의 리소스에는 정확히 하나의 값만 연결할 수 있습니다. 예를 들어 environment: development가 연결된 경우 environment: production 또는 environment: test를 연결할 수 없습니다. 각 리소스는 최대 50개의 키-값 쌍을 연결할 수 있습니다.

값을 Google Cloud 리소스에 연결하는 태그 binding 리소스를 만들어 태그를 리소스에 연결합니다. 다음 워크플로는 조직, 폴더, 프로젝트 리소스에 태그를 연결하는 방법을 설명합니다. 다른 유형의 리소스에 태그를 연결하는 방법은 태그 지원 서비스에서 해당 리소스에 대한 문서를 참조하세요.

콘솔

조직, 폴더, 프로젝트 리소스에 태그를 연결하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 리소스 관리 페이지를 엽니다.

    리소스 관리 페이지 열기

  2. 태그를 연결할 조직, 폴더, 프로젝트를 클릭합니다.

  3. 태그를 클릭합니다.

  4. 태그 패널에서 범위 선택을 클릭합니다.

  5. 태그가 포함된 조직 또는 프로젝트를 선택하고 열기를 클릭합니다.

  6. 태그 패널에서 태그 추가를 선택합니다.

  7. 필드에서 연결하려는 태그의 키를 목록에서 선택합니다. 키워드를 입력하여 목록을 필터링할 수 있습니다.

  8. 필드에서 연결하려는 태그의 값을 목록에서 선택합니다. 키워드를 입력하여 목록을 필터링할 수 있습니다.

  9. 태그를 더 연결하려면 태그 추가를 클릭한 후 각 항목에 대해 키와 값을 선택합니다.

  10. 저장을 클릭합니다.

  11. 확인 대화상자에서 확인을 클릭하여 태그를 연결합니다.

  12. 태그가 업데이트되었음을 확인하는 알림이 표시됩니다. 새 태그가 리소스 관리 페이지의 태그 열에 표시됩니다.

gcloud

리소스에 태그를 연결하려면 gcloud resource-manager tags bindings create 명령어를 사용하여 태그 binding 리소스를 만들어야 합니다.

gcloud resource-manager tags bindings create \
--tag-value=TAGVALUE_NAME \
--parent=RESOURCE_ID \
--location=LOCATION

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

  • TAGVALUE_NAME은 연결할 태그 값의 영구 ID 또는 네임스페이스 이름입니다(예: tagValues/4567890123 또는 12345678/environment/production).

  • RESOURCE_ID는 리소스 유형(//cloudresourcemanager.googleapis.com/)을 식별하는 API 도메인 이름을 포함한 리소스의 전체 ID입니다. 예를 들어 projects/7890123456에 태그를 연결하려면 전체 ID는 //cloudresourcemanager.googleapis.com/projects/7890123456입니다.

  • LOCATION은 리소스의 위치입니다. 태그를 폴더나 프로젝트와 같은 전역 리소스에 연결하는 경우 이 플래그를 생략해야 합니다. Compute Engine 인스턴스와 같은 리전별 리소스에 태그를 연결하는 경우 위치를 지정해야 합니다(예: us-central1).

API

리소스에 태그를 연결하려면 먼저 태그 값의 영구 ID 또는 네임스페이스 이름과 리소스의 영구 ID가 포함된 태그 바인딩의 JSON 표현을 만들어야 합니다. 태그 바인딩의 형식에 대한 자세한 내용은 TagBinding 참조를 확인하세요.

태그를 조직과 같은 전역 리소스에 연결하는 경우 전역 엔드포인트 호스트 이름이 지정된 tagBindings.create 메서드를 사용합니다.

POST https://cloudresourcemanager.googleapis.com/v3/tagBindings

Compute Engine 인스턴스와 같은 리전별 리소스에 태그를 연결하는 경우 리소스가 있는 리전별 엔드포인트가 지정된 tagBindings.create 메서드를 사용합니다.

POST https://LOCATION-cloudresourcemanager.googleapis.com/v3/tagBindings

JSON 요청 본문:

{
    "parent": RESOURCE_ID,
    "tagValue": TAGVALUE_NAME,
}

또는

{
    "parent": RESOURCE_ID,
    "tagValueNamespacedName": TAGVALUE_NAMESPACED_NAME,
}

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

  • RESOURCE_ID는 리소스 유형(//cloudresourcemanager.googleapis.com/)을 식별하는 API 도메인 이름을 포함한 리소스의 전체 ID입니다. 예를 들어 projects/7890123456에 태그를 연결하려면 전체 ID는 //cloudresourcemanager.googleapis.com/projects/7890123456입니다.

  • TAGVALUE_NAME은 연결된 태그 값의 영구 ID입니다(예: tagValues/4567890123).

  • TAGVALUE_NAMESPACED_NAME은 연결된 태그 값의 네임스페이스 이름이며, parentNamespace/tagKeyShortName/tagValueShortName 형식입니다.

리소스에 연결된 모든 태그 나열

상속되었거나 직접 연결된 태그에 대해 리소스에 연결된 모든 태그 목록을 가져올 수 있습니다.

콘솔

리소스에 연결되었거나 상속된 모든 태그를 보려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 리소스 관리 페이지를 엽니다.

    리소스 관리 페이지 열기

  2. 리소스 목록에서 조직, 폴더 또는 프로젝트를 찾습니다.

  3. 리소스에 연결된 태그가 태그 열에 표시됩니다. 상속된 태그는 상속됨으로 표시됩니다.

gcloud

리소스에 직접 연결된 태그 바인딩 목록을 가져오려면 gcloud resource-manager tags bindings list 명령어를 사용합니다. --effective 플래그를 추가하면 이 리소스로 상속되는 태그 목록도 반환됩니다.

gcloud resource-manager tags bindings list \
    --parent=RESOURCE_ID \
    --location=LOCATION

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

  • RESOURCE_ID는 리소스의 전체 ID입니다(예: //cloudresourcemanager.googleapis.com/projects/7890123456).

  • LOCATION은 리소스의 위치입니다. 폴더나 프로젝트와 같은 전역 리소스에 연결된 태그를 나열하는 경우 이 플래그를 생략해야 합니다. Compute Engine 인스턴스와 같은 리전별 리소스에 태그를 연결하는 경우 위치를 지정해야 합니다(예: us-central1).

다음과 비슷한 응답이 표시됩니다.

name: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456
tagValue: tagValues/567890123456
resource: //cloudresourcemanager.googleapis.com/projects/7890123456

--effective 플래그를 tags bindings list 명령어에 추가하면 이 리소스에서 상속한 모든 태그 목록도 반환됩니다. 다음과 비슷한 응답이 표시됩니다.

namespacedTagKey: 961309089256/environment
namespacedTagValue: 961309089256/environment/production
tagKey: tagKeys/417628178507
tagValue: tagValues/247197504380
inherited: true

리소스에 평가된 모든 태그가 직접 연결된 경우 inherited 필드는 false이고 생략됩니다.

API

조직과 같은 전역 리소스에 직접 연결된 태그 바인딩 목록을 가져오려면 tagBindings.list 메서드를 사용하고 쿼리에 상위 리소스를 지정합니다.

GET https://cloudresourcemanager.googleapis.com/v3/tagBindings

{
    "parent": "RESOURCE_ID"
}

Compute Engine 인스턴스와 같은 리전별 리소스에 연결된 태그 binding을 나열하려면 리소스가 있는 리전별 엔드포인트가 지정된 tagBindings.list 메서드를 사용합니다.

GET https://LOCATION-cloudresourcemanager.googleapis.com/v3/tagBindings

{
    "parent": "RESOURCE_ID"
}

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

  • RESOURCE_ID는 리소스의 전체 ID입니다(예: //cloudresourcemanager.googleapis.com/projects/7890123456).

  • LOCATION은 리소스의 리전별 엔드포인트입니다(예: us-central1).

성공하면 응답 본문에 TagBinding 객체 목록이 포함됩니다. 예를 들면 다음과 같습니다.

name: tagBindings/cloudresourcemanager.googleapis.com/projects/7890123456/567890123456
tagValue: tagValues/567890123456
resource: //cloudresourcemanager.googleapis.com/projects/7890123456

리소스에서 태그 분리

태그 binding 리소스를 삭제하여 리소스에서 태그를 분리할 수 있습니다.

콘솔

조직, 폴더, 프로젝트 리소스에서 태그를 분리하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 리소스 관리 페이지를 엽니다.

    리소스 관리 페이지 열기

  2. 태그를 분리하려는 조직, 폴더, 프로젝트를 클릭합니다.

  3. 태그를 클릭합니다.

  4. 태그 패널에서 분리하려는 태그 옆에 있는 항목 삭제를 클릭합니다.

  5. 저장을 클릭합니다.

  6. 확인 대화상자에서 확인을 클릭하여 태그를 분리합니다.

  7. 태그가 업데이트되었음을 확인하는 알림이 표시됩니다. 업데이트된 태그 목록이 리소스 관리 페이지의 태그 열에 표시됩니다.

gcloud

태그 바인딩을 삭제하려면 gcloud resource-manager tags bindings delete 명령어를 사용합니다.

gcloud resource-manager tags bindings delete \
--tag-value=TAGVALUE_NAME \
--parent=RESOURCE_ID \
--location=LOCATION

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

  • TAGVALUE_NAME은 연결된 태그 값의 영구 ID 또는 네임스페이스 이름입니다(예: tagValues/567890123456).

  • RESOURCE_ID는 리소스의 전체 ID입니다. 예를 들면 //cloudresourcemanager.googleapis.com/projects/7890123456입니다.

  • LOCATION은 리소스의 위치입니다. 폴더 또는 프로젝트와 같은 전역 리소스에 연결된 태그 binding을 삭제하는 경우 이 플래그를 생략해야 합니다. Compute Engine 인스턴스와 같은 리전별 리소스에 연결된 태그 binding을 삭제하는 경우 위치를 지정해야 합니다(예: us-central1).

API

조직과 같은 전역 리소스에 연결된 태그 binding을 삭제하려면 tagBindings.delete 메서드를 사용합니다.

DELETE https://cloudresourcemanager.googleapis.com/v3/{name=TAGBINDINGS_NAME}

Compute Engine 인스턴스와 같은 리전별 리소스에 연결된 태그 binding을 삭제하려면 리소스가 있는 리전별 엔드포인트가 지정된 tagBindings.delete 메서드를 사용합니다.

DELETE https://LOCATION-cloudresourcemanager.googleapis.com/v3/{name=TAGBINDINGS_NAME}

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

  • TAGBINDINGS_NAME은 TagBinding의 영구 ID입니다(예: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F1234567890/tagValues/567890123456).

  • LOCATION은 리소스의 리전별 엔드포인트입니다(예: us-central1).

태그 보존 조치로 태그 값 보호

태그 보존 조치는 태그 값이 삭제되지 않도록 보호하기 위해 만들 수 있는 리소스입니다. 태그 값에 태그 보존 조치가 있는 경우 태그 보존 조치를 먼저 삭제하지 않는 한 사용자가 삭제할 수 없습니다.

태그 보존 조치 만들기

gcloud CLI 또는 API를 사용하여 태그 보존 조치를 수동으로 만들 수 있습니다.

gcloud

태그 보존 조치를 만들려면 gcloud resource-manager tags holds create gcloud CLI 명령어를 사용합니다.

  gcloud resource-manager tags holds create TAGVALUE_NAME \
  --holder=HOLDER_NAME \
  --location=LOCATION

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

  • TAGVALUE_NAME은 이 태그 보존 조치를 생성할 태그 값의 영구 ID 또는 네임스페이스 이름입니다(예: tagValues/567890123456).

  • HOLDER_NAME은 태그 값이 연결된 리소스의 이름입니다. 200자(영문 기준) 미만이어야 합니다.

  • LOCATION은 리소스의 위치입니다. Google Cloud 프로젝트와 같은 전역 리소스에 대한 태그 보존 조치를 만드는 경우 이 플래그를 생략해야 합니다. 리전별 또는 영역별 리소스에 대한 태그 보존 조치를 만드는 경우 위치를 지정해야 합니다(예: us-central1).

API

태그 값에 대해 태그 보존 조치를 만들려면 먼저 태그 보존 조치의 JSON 표현을 만들어야 합니다. 이 JSON 참조에는 태그 값이 연결된 리소스에 대한 참조가 포함되어야 합니다. 태그 보존 조치의 형식에 대한 자세한 내용은 TagHolds 참조를 확인하세요.

조직과 같은 전역 리소스에 연결된 태그 값의 태그 보존 조치를 만드는 경우 tagHolds.create 메서드를 전역 엔드포인트 호스트 이름과 함께 사용합니다.

POST https://cloudresourcemanager.googleapis.com/v3/tagValues/TAGVALUE_NAME/tagHolds

Compute Engine 인스턴스와 같은 리전별 리소스에 연결된 태그 값의 태그 보존 조치를 만드는 경우 리소스가 있는 리전별 엔드포인트와 함께 tagHolds.create 메서드를 사용합니다.

POST https://LOCATION-cloudresourcemanager.googleapis.com/v3/TAGVALUE_NAME/tagHolds

JSON 요청 본문:

{
    "holder":HOLDER_NAME,
    "origin":ORIGIN_NAME
}

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

  • TAGVALUE_NAME은 연결된 태그 값의 영구 ID입니다(예: tagValues/4567890123).

  • HOLDER_NAME은 태그 값이 연결된 리소스의 이름입니다. 200자(영문 기준) 미만이어야 합니다.

  • ORIGIN_NAME은 이 요청의 출처를 나타내는 선택적 문자열입니다. 이 필드에는 출처가 서로 구분되도록 사람이 이해할 수 있는 정보가 포함되어야 합니다. 200자(영문 기준) 미만이어야 합니다.

태그 보존 조치 나열

gcloud CLI 또는 API를 사용하여 특정 태그 값의 모든 태그 보존 조치를 나열할 수 있습니다.

gcloud

태그 값의 태그 보존 조치를 나열하려면 gcloud resource-manager tags holds list gcloud CLI 명령어를 사용합니다.

  gcloud resource-manager tags holds list TAGVALUE_NAME \
  --location=LOCATION

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

  • TAGVALUE_NAME은 태그 값의 영구 ID 또는 네임스페이스 이름입니다(예: tagValues/567890123456).

  • LOCATION은 리소스의 위치입니다. 전역적으로 생성된 태그 보존 조치를 찾으려면 이 플래그를 생략해야 합니다. 리전별 또는 영역별 리소스의 태그 보존 조치를 찾고 있다면 위치를 지정해야 합니다(예: us-central1).

API

태그 값에 대한 태그 보존 조치 목록을 가져오려면 URL에 상위 태그 값을 지정하고 tagHolds GET 메서드를 사용합니다.

GET https://cloudresourcemanager.googleapis.com/v3/{TAGVALUE_NAME}/tagHolds

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

  • TAGVALUE_NAME은 태그 값의 영구 ID 또는 네임스페이스 이름입니다(예: tagValues/567890123456).

태그 보존 조치 삭제

gcloud CLI 또는 API를 사용하여 특정 태그 값에 생성된 태그 보존 조치를 삭제할 수 있습니다.

일부 리소스는 해당 리소스에 연결된 태그 값에 태그 보존 조치를 추가합니다. 이러한 리소스에 태그를 연결하면 리소스는 태그 보존 조치를 생성하여 사용자가 연결된 태그 값을 삭제하지 못하도록 합니다.

gcloud CLI 또는 API를 사용하여 태그 보존 조치를 삭제할 수 있습니다.

gcloud

태그 보존 조치를 삭제하려면 gcloud resource-manager tags holds delete gcloud CLI 명령어를 사용합니다.

  gcloud resource-manager tags holds delete TAGHOLD_NAME \
  --location=LOCATION

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

  • TAGHOLD_NAME는 태그 보존 조치의 네임스페이스 이름이며 list 명령어를 사용하여 찾을 수 있습니다. 예를 들면 다음과 같습니다. tagValues/1012910994523/tagHolds/d1c8f5e2-2954-43d6-8f46-5f812ab48c37.

  • LOCATION은 리소스의 위치입니다. 폴더 또는 프로젝트와 같은 전역 리소스에 연결된 태그 값의 태그 보존 조치를 삭제하는 경우 이 플래그를 생략해야 합니다. 리전별 또는 영역별 프로세스에서 생성된 태그 보존 조치를 삭제하는 경우 위치를 지정해야 합니다(예: us-central1).

API

태그 값을 삭제하려면 tagHolds.delete 메서드를 사용합니다.

DELETE https://cloudresourcemanager.googleapis.com/v3/{TAGVALUE_NAME}/tagHolds/{TAGHOLD_NAME}

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

  • TAGVALUE_NAME은 삭제할 태그 보존 조치가 연결된 태그 값의 영구 ID입니다(예: tagValues/567890123456).

  • TAGHOLD_NAME은 삭제하려는 태그 보존 조치의 네임스페이스 이름이며 list 명령어를 사용하여 찾을 수 있습니다. 예를 들면 다음과 같습니다. tagValues/1012910994523/tagHolds/d1c8f5e2-2954-43d6-8f46-5f812ab48c37.

태그 삭제

태그를 삭제하려면 정의된 구성요소를 각각 삭제해야 합니다. 먼저 이 태그를 계층 구조의 리소스에 연결하는 모든 태그 binding을 삭제해야 합니다. 태그 binding 삭제에 대한 안내는 리소스에서 태그 분리를 참조하세요.

태그가 다른 리소스에서 사용되거나 사용자가 수동으로 태그 보존 조치를 만든 경우, 태그 값을 삭제하려면 태그 보존 조치를 삭제하고 태그 바인딩을 삭제해야 할 수도 있습니다. 태그 보존 조치 삭제에 대한 자세한 내용은 태그 보존 조치 삭제를 참조하세요.

삭제할 태그 값에 대해 태그 binding이 더 이상 없으면 값을 삭제할 수 있습니다.

콘솔

태그 값을 삭제하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택 도구에서 태그 값이 포함된 조직 또는 프로젝트를 선택합니다.

  3. 삭제하려는 태그 값이 포함된 태그 키 옆에 있는 작업을 클릭한 후 세부정보 보기를 클릭합니다.

  4. 이 태그 키와 연관된 태그 값 목록에서 삭제하려는 태그 값을 클릭합니다.

  5. 삭제하려는 태그 값 옆에 있는 체크박스를 클릭한 후 값 삭제를 클릭합니다.

  6. 확인을 클릭합니다.

gcloud

태그 값을 삭제하려면 gcloud resource-manager tag values delete 명령어를 사용합니다.

gcloud resource-manager tags values delete TAGVALUE_NAME

TAGVALUE_NAME은 삭제할 태그 값의 영구 ID 또는 네임스페이스 이름입니다(예: tagValues/567890123456).

API

태그 값을 삭제하려면 tagValues.delete 메서드를 사용합니다.

DELETE https://cloudresourcemanager.googleapis.com/v3/{name=TAGVALUE_NAME}

TAGVALUE_NAME은 삭제할 태그 값의 영구 ID입니다(예: tagValues/567890123456).

키와 연결된 모든 태그 값이 삭제되면 키를 삭제할 수 있습니다.

콘솔

태그 키를 삭제하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 태그 페이지를 엽니다.

    태그 페이지 열기

  2. 페이지 상단의 범위 선택 도구에서 태그 키가 포함된 조직 또는 프로젝트를 선택합니다.

  3. 삭제하려는 태그 키 옆에 있는 체크박스를 클릭합니다.

  4. 태그 삭제를 클릭합니다.

  5. 확인을 클릭합니다.

gcloud

태그 키를 삭제하려면 gcloud resource-manager tags keys delete 명령어를 사용합니다.

gcloud resource-manager tags keys delete TAGKEYS_NAME

TAGKEYS_NAME은 삭제할 태그 키의 영구 ID 또는 네임스페이스 이름입니다(예: tagKeys/123456789012).

API

태그 키를 삭제하려면 tagKeys.delete 메서드를 사용합니다.

DELETE https://cloudresourcemanager.googleapis.com/v3/{name=TAGKEYS_NAME}

TAGKEYS_NAME은 삭제할 태그 키의 영구 ID입니다(예: tagKeys/123456789012).

정책 및 태그

태그와 태그를 지원하는 정책을 사용하여 조건부로 정책을 시행할 수 있습니다. 태그 값이 존재하는지 여부를 해당 정책의 조건으로 만들 수 있습니다.

예를 들어 리소스에 특정 태그가 있는지 여부에 따라 IAM(ID 및 액세스 관리) 역할을 조건부로 부여할 수 있습니다.

Identity and Access Management 조건 및 태그

태그 및 Identity and Access Management conditions 조건을 사용하여 계층 구조의 사용자에게 역할을 조건부로 부여할 수 있습니다. 이 프로세스를 사용하면 조건부 정책과 연결된 태그가 연결되기 전에는 사용자가 리소스에 액세스할 수 없게 됩니다. 예를 들어 리소스를 사용하려면 먼저 개발자가 비용 센터를 리소스에 할당해야 할 수 있습니다.

  1. 리소스에 적절한 거버넌스가 적용되었는지 여부를 식별하는 요소와 리소스를 연결하는 데 사용할 수 있는 태그를 만듭니다. 예를 들어 키가 costCenter이고 값이 0001, 0002 등으로 태그를 만들어 회사의 다양한 비용 센터와 리소스를 연결할 수 있습니다.

  2. 사용자가 태그를 필요로 하는 리소스에 태그를 추가하도록 허용하는 조직 수준 커스텀 역할을 만듭니다. 이렇게 하면 조직의 모든 위치에서 지정된 주 구성원에게 이러한 권한이 부여됩니다.

    예를 들어 사용자가 프로젝트에 태그를 추가하도록 허용하는 커스텀 역할에는 다음 권한이 포함됩니다.

    • resourcemanager.projects.get
    • resourcemanager.hierarchyNodes.create
    • resourcemanager.hierarchyNodes.delete
    • resourcemanager.hierarchyNodes.list
  3. 개발자용 프로젝트를 만들 경우 프로젝트에 이 커스텀 역할을 할당합니다.

  4. 프로젝트 내에서 원하는 작업을 수행할 수 있는 권한이 포함된 다른 역할을 개발자에게 할당합니다. 프로젝트의 사용자에게 역할을 부여하면 역할이 항상 조건부로 부여되어 costCenter 태그를 연결해야 합니다.

    resource.hasTagKey('123456789012/costCenter')
    

이제 프로젝트가 생성될 때마다 개발자는 프로젝트에 costCenter 태그를 연결해야 IAM 정책에서 부여한 작업을 수행할 수 있습니다.

조직 정책 및 태그

태그 및 조직 정책의 조건부 적용을 사용하면 계층 구조 리소스에 대한 중앙 집중식 제어가 가능합니다. 자세한 내용은 태그를 사용하여 조직 정책 설정을 참조하세요.

지원되는 서비스

태그를 지원하는 서비스의 목록은 태그를 지원하는 서비스를 참조하세요.

알려진 문제 해결

조건 표현식 실패

Google Cloud CLI를 사용하여 add-iam-policy-binding 명령어 중 하나를 실행하고 해당 리소스의 IAM 정책에 해당 역할의 조건부 역할 바인딩이 포함된 경우 gcloud CLI 도구에서 정책에 있는 조건 표현식 중 하나를 선택하라는 메시지를 표시합니다. 쉼표가 포함된 조건 표현식을 선택하면 명령어가 실패합니다. 이 문제를 해결하려면 --condition 플래그를 사용하여 명령줄에 조건 표현식을 지정합니다.