Tag adalah pasangan nilai kunci yang dapat Anda lampirkan ke resource Google Cloud. Anda dapat menggunakan tag untuk menerapkan kebijakan secara bersyarat berdasarkan apakah resource yang didukung memiliki tag tertentu.
Sebelum memulai
Untuk mengetahui informasi selengkapnya tentang apa itu tag dan cara kerjanya, lihat Ringkasan tag.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk mengelola tag, minta administrator untuk memberi Anda peran IAM berikut:
- Tag Viewer (
roles/resourcemanager.tagViewer) pada resource tempat tag tersebut dilampirkan -
Melihat dan mengelola tag di tingkat organisasi:
Organization Viewer (
roles/resourcemanager.organizationViewer) di organisasi -
Melampirkan dan menghapus tag dari resource:
Tag User (
roles/resourcemanager.tagUser) pada nilai tag dan resource target. Untuk melampirkan atau menghapus tag pada resource layanan tertentu, akun utama juga memerlukan izin binding tag khusus resource (seperticompute.instances.createTagBindingataustorage.buckets.createTagBinding). -
Membuat, memperbarui, dan menghapus definisi tag:
Tag Administrator (
roles/resourcemanager.tagAdmin) pada resource yang tag-nya Anda buat, perbarui, atau hapus
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Membuat dan menentukan tag baru
Tag adalah pasangan nilai kunci, dan dilampirkan ke resource dalam hierarkiGoogle Cloud Anda. Untuk membuat tag baru, Anda harus membuat kunci tag terlebih dahulu
yang mendeskripsikan tag yang Anda buat. Misalnya, Anda mungkin ingin menentukan lingkungan produksi, pengujian, dan lingkungan pengembangan untuk resource dalam hierarki resource dengan membuat kunci bernama environment.
Kemudian, Anda dapat membuat berbagai nilai yang dapat dimiliki kunci. Jika Anda membuat
kunci tag bernama environment, Anda mungkin ingin menentukan bahwa ada tiga
lingkungan potensial, dan membuat nilai untuk masing-masing: production,development,
dan test.
Terakhir, Anda dapat melampirkan tag ini ke resource, yang membawa
pengaitan key-value pair. Melampirkan kunci dan nilai tag ke resource juga dikenal sebagai membuat binding tag. Misalnya, Anda dapat
melampirkan test ke beberapa folder lingkungan pengujian di seluruh
organisasi, dan masing-masing akan membawa pasangan nilai kunci environment: test.
Anda juga dapat membuat kunci tag yang memungkinkan pengguna menentukan nilai secara dinamis saat menambahkan binding tag ke resource. Nilai ini disebut nilai tag dinamis(Pratinjau). Anda dapat mengonfigurasi aturan validasi untuk nilai tag dinamis yang memungkinkan Anda menerapkan format, nilai, atau batasan tertentu pada tag yang dibuat pengguna pada saat pemasangan resource.
Nilai tag dinamis berguna jika tidak praktis untuk menentukan setiap kemungkinan nilai tag sebelumnya. Misalnya, atribut seperti owner, ID aplikasi, service Id, atau cost center dapat memiliki ribuan nilai yang berbeda. Menentukan dan mengelola daftar nilai tag yang ekstensif secara manual akan menimbulkan beban administratif yang signifikan.
Batas kunci dan nilai tag
Anda dapat membuat maksimum 1.000 kunci tag dalam organisasi atau project tertentu. Batasan ini bersifat independen; misalnya, kunci tag yang dibuat di bawah project tidak diperhitungkan dalam batasan untuk node organisasi. Jika Anda perlu melebihi default ini, Anda dapat meminta penambahan hingga 10.000 kunci tag per organisasi atau project dengan mengirimkan permintaan dukungan.
Untuk nilai tag yang telah ditentukan, Anda dapat mengaitkan hingga 1.000 nilai per kunci tag secara default. Batas ini juga dapat ditingkatkan menjadi 10.000 nilai tag per kunci melalui permintaan dukungan. Namun, jika Anda menggunakan nilai tag dinamis, tidak ada batas atas jumlah nilai tag berbeda yang diizinkan per kunci tag.
Nilai tag dinamis tidak dapat digunakan dalam kondisi Identity and Access Management (IAM) atau dalam batasan Layanan Kebijakan Organisasi.
Membuat kunci tag
Untuk memulai, Anda harus membuat kunci tag.
shortName kunci tag dapat memiliki panjang maksimum 256 karakter. Himpunan karakter yang diizinkan untuk shortName mencakup karakter Unicode berenkode UTF-8 kecuali tanda kutip tunggal ('), tanda kutip ganda ("), garis miring terbalik (\), dan garis miring (/).
Setelah shortName dibuat, nama tersebut tidak dapat diubah, dan harus unik dalam namespace yang sama.
Konsol
Untuk membuat kunci tag, lakukan hal berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Scope picker di bagian atas halaman, pilih organisasi atau project tempat Anda ingin membuat kunci tag.
Klik Create.
Di kotak Tag key, masukkan nama tampilan kunci tag Anda. Ini akan menjadi bagian dari nama tag Anda dengan namespace.
Di kotak Tag key description, masukkan deskripsi kunci tag Anda.
Di bagian Tag values, klik Predefined values untuk membuat daftar tetap nilai yang diizinkan.
Klik Tambahkan nilai untuk setiap nilai yang ingin Anda buat.
Di kotak Tag value, masukkan nama tampilan nilai tag Anda. Ini akan menjadi bagian dari nama tag Anda dengan namespace.
Di kotak Tag value description, masukkan deskripsi nilai tag Anda.
Setelah selesai menambahkan nilai tag, klik Create tag key.
gcloud
Untuk membuat kunci tag, gunakan perintah gcloud resource-manager tags keys create:
gcloud resource-manager tags keys create SHORT_NAME \
--parent=RESOURCE_ID
Dengan:
SHORT_NAMEadalah nama tampilan untuk kunci tag Anda; misalnya:environment.RESOURCE_IDadalah ID resource organisasi atau project induk untuk kunci tag ini; misalnya:organizations/123456789012,projects/test-project123, atauprojects/234567890123. Untuk mempelajari cara mendapatkan ID organisasi, lihat Membuat dan mengelola organisasi. Untuk mempelajari cara mendapatkan project ID, lihat Membuat dan mengelola project.
Anda akan mendapatkan respons seperti berikut:
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
Sebelum membuat kunci tag menggunakan Terraform, aktifkan Cloud Resource Manager API.
Anda dapat menggunakan resource
google_tags_tag_key
untuk membuat kunci tag.
resource "google_tags_tag_key" "key" {
parent = "<var>RESOURCE</var>"
short_name = "<var>KEY_SHORT_NAME</var>"
description = "<var>DESCRIPTION</var>"
}
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
API
Untuk membuat kunci tag, buat representasi JSON dari kunci tersebut. Untuk mengetahui informasi selengkapnya tentang format kunci tag, lihat Referensi TagKey.
Kemudian, gunakan metode tagKeys.create:
POST https://cloudresourcemanager.googleapis.com/v3/tagKeys/ -d
Meminta isi JSON:
{
"parent": RESOURCE_ID,
"shortName": SHORT_NAME,
"description": DESCRIPTION,
}
Dengan:
SHORT_NAMEadalah nama tampilan untuk kunci tag Anda; misalnya:environment.RESOURCE_IDadalah ID resource organisasi atau project induk untuk kunci tag ini; misalnya:organizations/123456789012,projects/test-project123, atauprojects/234567890123. Untuk mempelajari cara mendapatkan ID organisasi, lihat Membuat dan mengelola organisasi. Untuk mempelajari cara mendapatkan project ID, lihat Membuat dan mengelola project.DESCRIPTIONadalah deskripsi kunci, dan tidak lebih dari 256 karakter.
Setelah membuat kunci, Anda dapat menemukan nama tampilan unik yang dapat dibaca manusia,
yang disebut namespacedName, yang diberi namespace dalam resource induknya,
dan ID permanen unik secara global yang disebut name.
Membuat kunci tag dengan nilai kunci dinamis
Untuk membuat kunci tag yang mendukung nilai dinamis, gunakan salah satu metode berikut:
Konsol
Untuk membuat kunci tag, lakukan hal berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Scope picker di bagian atas halaman, pilih organisasi atau project tempat Anda ingin membuat kunci tag.
Klik Create.
Di kotak Tag key, masukkan nama tampilan kunci tag Anda. Ini akan menjadi bagian dari nama tag Anda dengan namespace.
Di kotak Tag key description, masukkan deskripsi kunci tag Anda.
Di bagian Tag values, klik Dynamic values, lalu klik Add value constraints.
Tentukan ekspresi reguler validasi untuk memeriksa format nilai tag yang dibuat secara dinamis. Hanya nilai yang cocok dengan pola yang Anda berikan yang diizinkan. Secara default, ekspresi reguler cocok dengan semua nilai, misalnya
.*.Setelah menentukan ekspresi reguler validasi, klik Create tag key.
gcloud
gcloud resource-manager tags keys create SHORT_NAME \
--parent=RESOURCE_ID \
--allowed-values-regex=VALID_REGEX
Ganti kode berikut:
SHORT_NAME: nama tampilan untuk kunci tag Anda; misalnya:environment.RESOURCE_ID: ID organisasi induk atau resource project untuk kunci tag ini; misalnya:organizations/123456789012,projects/test-project123, atauprojects/234567890123. Untuk mempelajari cara mendapatkan ID organisasi, lihat Membuat dan mengelola organisasi. Untuk mempelajari cara mendapatkan project ID, lihat Membuat dan mengelola project.VALID_REGEX: ekspresi reguler dalam sintaksis RE2 yang menentukan format yang diizinkan untuk nilai tag yang terkait dengan kunci tag yang baru dibuat (hanya untuk memvalidasi nilai dinamis). Untuk mengizinkan nilai apa pun ditentukan, gunakan ekspresi reguler.*.
Anda akan mendapatkan respons seperti berikut:
allowedValuesRegex: '[abc]' name: tagKeys/123456789012 shortName: environment namespacedName: 123456789012/environment parent: organizations/123456789012
Terraform
Sebelum membuat kunci tag menggunakan Terraform, aktifkan Cloud Resource Manager API.
Anda dapat menggunakan resource google_tags_tag_key untuk membuat kunci tag yang mendukung nilai dinamis.
resource "google_tags_tag_key" "key" {
parent = "organizations/123456789"
short_name = "keyname"
description = "For keyname resources."
allowed_values_regex = "^[a-z]+$"
}
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
Ganti kode berikut:API
Untuk membuat kunci tag yang mendukung nilai tag dinamis, buat representasi JSON dari kunci tersebut. Untuk mengetahui informasi selengkapnya tentang format kunci tag, lihat Referensi TagKey.
Kemudian, gunakan metode tagKeys.create:
POST https://cloudresourcemanager.googleapis.com/v3/tagKeys/
Meminta isi JSON:
{
"parent": RESOURCE_ID,
"shortName": SHORT_NAME,
"description": DESCRIPTION,
"allowedValuesRegex": VALID_REGEX
}
Ganti kode berikut:
RESOURCE_ID: ID organisasi induk atau resource project untuk kunci tag ini; misalnya:organizations/123456789012,projects/test-project123, atauprojects/234567890123. Untuk mempelajari cara mendapatkan ID organisasi, lihat Membuat dan mengelola organisasi. Untuk mempelajari cara mendapatkan project ID, lihat Membuat dan mengelola project.SHORT_NAME: nama tampilan untuk kunci tag Anda; misalnya:environment.DESCRIPTION: deskripsi kunci, dan tidak lebih dari 256 karakter.VALID_REGEX: ekspresi reguler yang menentukan format yang diizinkan untuk nilai tag yang terkait dengan kunci tag yang baru dibuat.
Setelah membuat kunci, Anda dapat menemukan nama tampilan unik yang dapat dibaca manusia,
yang disebut namespacedName, yang diberi namespace dalam resource induknya,
dan ID permanen unik secara global yang disebut name.
Melihat kunci tag
Anda dapat menemukan informasi tentang kunci tag tertentu menggunakan ID permanen atau nama yang di-namespace yang ditampilkan saat Anda membuatnya.
Konsol
Untuk melihat tag yang dibuat, lakukan tindakan berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Pemilih cakupan di bagian atas halaman, pilih organisasi atau project yang berisi tag Anda.
Semua tag di organisasi atau project yang dipilih akan muncul dalam daftar. Klik tag yang ingin Anda lihat kunci tag-nya.
gcloud
Untuk menampilkan informasi yang terkait dengan kunci tag tertentu, gunakan perintah gcloud resource-manager tags keys describe:
gcloud resource-manager tags keys describe TAGKEY_NAME
TAGKEY_NAME adalah ID permanen atau nama dengan namespace dari kunci tag yang informasinya ingin Anda tampilkan; misalnya: tagKeys/123456789012 atau project-id/environment.
Anda akan mendapatkan respons seperti berikut:
name: tagKeys/123456789012 short_name: environment namespaced_name: 123456789012/environment parent: organizations/123456789012
Untuk tag dengan nilai dinamis, respons juga berisi kolom allowedValuesRegex
yang menampilkan ekspresi reguler RE2 yang digunakan untuk memvalidasi nilai tag dinamis
yang dimasukkan saat tag diterapkan ke resource.
API
Untuk menampilkan informasi yang terkait dengan kunci tag tertentu, gunakan metode tagKeys.get:
GET https://cloudresourcemanager.googleapis.com/v3/{name=TAGKEY_NAME}
TAGKEY_NAME adalah ID permanen kunci tag
yang informasinya ingin Anda tampilkan; misalnya:
tagKeys/123456789012.
Untuk menampilkan informasi yang terkait dengan kunci tag tertentu menggunakan nama dengan namespace-nya, gunakan metode tagKeys.getNamespaced:
GET https://cloudresourcemanager.googleapis.com/v3/tagKeys/namespaced?name={TAGKEY_NAMESPACED_NAME}
TAGKEY_NAMESPACED_NAME adalah nama dengan namespace kunci tag dan memiliki format parentNamespace/tagKeyShortName.
Untuk tag dengan nilai dinamis, respons juga berisi kolom allowedValuesRegex
yang menampilkan ekspresi reguler RE2 yang digunakan untuk memvalidasi nilai tag dinamis
yang dimasukkan saat tag diterapkan ke resource.
Menambahkan nilai tag
Setelah membuat kunci tag, Anda dapat menambahkan nilai yang diterima untuk kunci tersebut.
shortName nilai tag Anda harus memenuhi persyaratan berikut:
shortNamedapat memiliki panjang maksimum 256 karakter.shortNameharus diawali dengan karakter alfanumerik.shortNamedapat berisi karakter Unicode berenkode UTF-8 kecuali tanda kutip tunggal ('), tanda kutip ganda ("), garis miring terbalik (\), dan garis miring (/).shortNametidak dapat diubah setelah dibuat, dan harus unik dalam namespace yang sama.
Konsol
Untuk menambahkan nilai tag, lakukan hal berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Pemilih cakupan di bagian atas halaman, pilih organisasi atau project tempat Anda ingin membuat nilai tag.
Dalam daftar tag, klik tag yang ingin Anda tambahi nilai baru.
Di bagian Tag values, klik Predefined values untuk membuat daftar tetap nilai yang diizinkan.
Klik Tambahkan nilai untuk setiap nilai yang ingin Anda buat.
Di kotak Tag value, masukkan nama tampilan nilai tag Anda. Ini akan menjadi bagian dari nama tag Anda dengan namespace.
Di kotak Tag value description, masukkan deskripsi nilai tag Anda.
Klik Simpan.
gcloud
Untuk membuat nilai tag, gunakan perintah gcloud resource-manager tags values
create. Anda harus menentukan kunci tempat nilai ini dibuat:
gcloud resource-manager tags values create TAGVALUE_SHORTNAME \
--parent=TAGKEY_NAME
Dengan:
TAGVALUE_SHORTNAMEadalah nama pendek nilai tag baru; misalnya:production.TAGKEY_NAMEadalah ID permanen atau nama dengan namespace dari kunci tag induk; misalnya:tagKeys/4567890123.
Anda akan mendapatkan respons seperti berikut:
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
Gunakan resource google_tags_tag_value.
Sebelum membuat nilai tag menggunakan Terraform, aktifkan Cloud Resource Manager API.
Contoh berikut membuat nilai tag bernama prod dan sales:
Untuk menerapkan konfigurasi Terraform di project Google Cloud , selesaikan langkah-langkah di bagian berikut.
Menyiapkan Cloud Shell
- Luncurkan Cloud Shell.
-
Tetapkan project Google Cloud default tempat Anda ingin menerapkan konfigurasi Terraform.
Anda hanya perlu menjalankan perintah ini sekali per project, dan dapat dijalankan di direktori mana pun.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Variabel lingkungan akan diganti jika Anda menetapkan nilai eksplisit dalam file konfigurasi Terraform.
Menyiapkan direktori
Setiap file konfigurasi Terraform harus memiliki direktorinya sendiri (juga disebut modul root).
-
Di Cloud Shell, buat direktori dan file baru di dalam direktori tersebut. Nama file harus memiliki
ekstensi
.tf—misalnyamain.tf. Dalam tutorial ini, file ini disebut sebagaimain.tf.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Jika mengikuti tutorial, Anda dapat menyalin kode contoh di setiap bagian atau langkah.
Salin kode contoh ke dalam
main.tfyang baru dibuat.Atau, salin kode dari GitHub. Tindakan ini direkomendasikan jika cuplikan Terraform adalah bagian dari solusi menyeluruh.
- Tinjau dan ubah contoh parameter untuk diterapkan pada lingkungan Anda.
- Simpan perubahan Anda.
-
Lakukan inisialisasi Terraform. Anda hanya perlu melakukan ini sekali per direktori.
terraform init
Secara opsional, untuk menggunakan versi penyedia Google terbaru, sertakan opsi
-upgrade:terraform init -upgrade
Menerapkan perubahan
-
Tinjau konfigurasi dan pastikan resource yang akan dibuat atau
diupdate oleh Terraform sesuai yang Anda inginkan:
terraform plan
Koreksi konfigurasi jika diperlukan.
-
Terapkan konfigurasi Terraform dengan menjalankan perintah berikut dan memasukkan
yespada prompt:terraform apply
Tunggu hingga Terraform menampilkan pesan "Apply complete!".
- Buka project Google Cloud Anda untuk melihat hasilnya. Di konsol Google Cloud , buka resource Anda di UI untuk memastikan bahwa Terraform telah membuat atau mengupdatenya.
API
Untuk membuat nilai tag, buat representasi JSON dari nilai tersebut. Untuk mengetahui informasi selengkapnya tentang format nilai tag, lihat Referensi TagValue.
Kemudian, gunakan metode tagValues.create:
POST https://cloudresourcemanager.googleapis.com/v3/tagValues/ -d
Meminta isi JSON:
{
"parent": TAGKEY_NAME,
"shortName": SHORT_NAME,
"description": DESCRIPTION,
}
Dengan:
TAGKEY_NAMEadalah ID permanen kunci tag induk; misalnya:tagKeys/4567890123.SHORT_NAMEadalah nama tampilan untuk nilai tag Anda; misalnya:environment.DESCRIPTIONadalah deskripsi nilai, dan tidak lebih dari 256 karakter.
Setelah membuat nilai, Anda dapat menemukan nama tampilan unik yang dapat dibaca manusia, yang disebut namespacedName, yang diberi namespace dalam resource induknya, dan ID permanen unik secara global yang disebut name.
Menambahkan nilai tag ke kunci tag dinamis
Untuk kunci tag yang mendukung nilai tag dinamis, berikan nilai tag saat Anda melampirkan tag ke resource. Sistem akan memeriksa nilai dinamis terhadap ekspresi reguler validasi yang ditentukan untuk kunci tag tersebut. Jika nilai yang Anda berikan tidak cocok dengan ekspresi reguler validasi yang dikonfigurasi, Anda akan mendapatkan error.
Resource mewarisi binding nilai tag dinamis dari resource induknya.
Perhatikan bahwa kunci tag yang mendukung nilai tag dinamis tidak dapat memiliki nilai tag yang telah ditetapkan.
Membuat nilai tag hierarkis untuk tag Tata Kelola Data
Untuk kunci tag yang dibuat dengan --purpose=DATA_GOVERNANCE, Anda dapat menentukan nilai tag hierarkis (nilai tag turunan yang diinduki oleh nilai tag yang ada).
Untuk membuat nilai tag turunan menggunakan gcloud CLI, tentukan ID nilai tag induk atau jalur yang di-namespace-kan di flag --parent:
gcloud resource-manager tags values create CHILD_TAGVALUE_SHORTNAME \
--parent=PARENT_TAGVALUE_ID_OR_PATH
Dengan:
CHILD_TAGVALUE_SHORTNAMEadalah nama pendek untuk nilai tag turunan Anda; misalnya:confidential.PARENT_TAGVALUE_ID_OR_PATHadalah ID atau jalur dengan namespace dari nilai tag induk; misalnya:tagValues/281478880204285ataumy-project/my_key/my_value.
Untuk mencantumkan nilai tag turunan di bawah nilai tag induk, gunakan:
gcloud resource-manager tags values list \
--parent=PARENT_TAGVALUE_ID_OR_PATH
Mengambil nilai tag
Anda dapat menemukan informasi tentang nilai tag tertentu menggunakan ID permanen atau nama dengan namespace yang ditampilkan saat Anda membuatnya. Hal ini hanya berlaku untuk nilai tag yang telah ditetapkan, bukan nilai tag dinamis.
Konsol
Untuk melihat tag yang dibuat, lakukan tindakan berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Pemilih cakupan di bagian atas halaman, pilih organisasi atau project yang berisi tag Anda.
Semua tag yang telah Anda buat di organisasi atau project ini akan muncul dalam daftar. Klik tag yang ingin Anda lihat nilai tag-nya.
gcloud
Untuk menampilkan informasi yang terkait dengan nilai tag tertentu, gunakan perintah gcloud resource-manager tags values describe:
gcloud resource-manager tags values describe TAGVALUE_NAME
TAGVALUE_NAME adalah ID permanen atau
nama dengan namespace dari nilai tag; misalnya:
tagValues/4567890123 atau 123456789012/environment/production.
Anda akan mendapatkan respons seperti berikut:
name: tagValues/456789012345 short_name: production namespaced_name: 123456789012/environment/production parent: tagKeys/123456789012
API
Untuk menampilkan informasi yang terkait dengan nilai tag tertentu, gunakan metode tagValues.get:
GET https://cloudresourcemanager.googleapis.com/v3/{name=TAGVALUE_NAME}
TAGVALUE_NAME adalah ID permanen nilai tag; misalnya: tagValues/4567890123.
Untuk menampilkan informasi yang terkait dengan nilai tag tertentu menggunakan nama dengan namespace, gunakan metode tagValues.getNamespaced:
GET https://cloudresourcemanager.googleapis.com/v3/tagValues/namespaced?name={TAGVALUE_NAMESPACED_NAME}
TAGVALUE_NAMESPACED_NAME adalah nama dengan namespace
nilai tag dan memiliki format
parentNamespace/tagKeyShortName/tagValueShortName.
Saat mereferensikan tag menggunakan Google Cloud CLI, Anda dapat menggunakan nama yang di-namespace atau ID permanen untuk kunci dan nilai tag. Panggilan ke API
kecuali getNamespaced hanya boleh menggunakan ID permanen. Lihat
Definisi dan ID tag
untuk mengetahui informasi selengkapnya tentang jenis ID yang digunakan tag.
Memperbarui tag yang ada
Anda dapat mengubah tag yang ada dengan memperbarui kunci atau nilai yang terkait dengannya.
Anda dapat memperbarui deskripsi tag, tetapi tidak dapat memperbarui nama pendeknya. Untuk tag dengan nilai dinamis,
Anda dapat memperbarui deskripsi dan ekspresi reguler validasi yang menentukan
format yang diizinkan untuk nilai tag yang terkait dengan kunci tag. Perubahan pada kolom allowed_values_regex tidak berlaku surut dan tidak akan memengaruhi binding tag yang ada untuk kunci tag.
Konsol
Untuk memperbarui deskripsi kunci tag, lakukan hal berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Scope picker di bagian atas halaman, pilih organisasi atau project yang berisi kunci tag Anda.
Klik Actions di samping kunci tag yang ingin Anda perbarui, lalu klik View details.
Klik Edit di samping Description di dekat bagian atas layar.
Bergantung pada hal yang ingin Anda perbarui, pilih salah satu opsi berikut:
- Deskripsi: Klik Edit di samping Deskripsi.
- Ekspresi reguler validasi: Klik Edit di samping Ekspresi reguler validasi.
Di panel edit yang terbuka, perbarui deskripsi atau masukkan pola baru Anda di kolom Regex nilai yang diizinkan.
Klik Simpan.
gcloud
Untuk mengubah deskripsi kunci tag, gunakan
perintah gcloud resource-manager tags keys update:
gcloud resource-manager tags keys update TAGKEY_NAME \
--description=NEW_DESCRIPTION
Dengan:
TAGKEY_NAMEadalah ID permanen atau nama dengan namespace dari kunci yang akan diupdate; misalnya:tagKeys/123456789012.NEW_DESCRIPTIONadalah string yang tidak lebih dari 256 karakter untuk digunakan sebagai deskripsi baru.
Anda akan mendapatkan respons seperti berikut:
name: tagKeys/123456789012 short_name: environment namespaced_name: 123456789012/environment description: "new description" parent: organizations/123456789012
API
Untuk mengubah deskripsi kunci tag, gunakan metode tagKeys.patch:
PATCH https://cloudresourcemanager.googleapis.com/v3/{tagKey.name=TAGKEY_NAME} -d
Meminta isi JSON:
{
"description": DESCRIPTION,
}
Dengan:
TAGKEY_NAMEadalah ID permanen kunci tag; misalnya:tagKeys/123456789012.DESCRIPTIONadalah deskripsi kunci, dan tidak lebih dari 256 karakter.
Anda juga dapat mengubah deskripsi nilai tag.
Konsol
Untuk memperbarui deskripsi nilai tag, lakukan hal berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Scope picker di bagian atas halaman, pilih organisasi atau project yang berisi nilai tag Anda.
Klik Actions di samping kunci tag untuk nilai yang ingin Anda perbarui, lalu klik View details.
Klik Actions di samping nilai tag yang ingin Anda perbarui, lalu klik View details.
Klik Edit di samping Description dan edit deskripsi nilai tag.
Klik Simpan.
gcloud
Untuk mengubah deskripsi nilai tag, gunakan
perintah gcloud resource-manager tags values update:
gcloud resource-manager tags values update TAGVALUE_NAME \
--description="NEW_DESCRIPTION"
Dengan:
TAGVALUE_NAMEadalah ID permanen atau nama dengan namespace dari nilai tag yang akan diperbarui; misalnya:tagValues/4567890123.NEW_DESCRIPTIONadalah string yang tidak lebih dari 256 karakter untuk digunakan sebagai deskripsi baru.
Anda akan mendapatkan respons seperti berikut:
short_name: production namespaced_name: 123456789012/environment/production parent: tagKeys/123456789012 description: "new description"
API
Untuk mengubah deskripsi nilai tag, gunakan perintah tagValues.patch:
PATCH https://cloudresourcemanager.googleapis.com/v3/{tagKey.name=TAGVALUE_NAME} -d
Meminta isi JSON:
{
"description": DESCRIPTION,
}
Dengan:
TAGVALUE_NAMEadalah nama ID permanen nilai tag; misalnya:tagValues/4567890123.DESCRIPTIONadalah deskripsi kunci, dan tidak lebih dari 256 karakter.
Mencantumkan kunci tag
Anda dapat mencantumkan semua kunci tag yang terkait dengan resource organisasi atau project tertentu menggunakan konsol Google Cloud , gcloud CLI, atau dengan panggilan ke API.
Konsol
Untuk melihat semua tag:
Buka halaman Tag di konsol Google Cloud .
Dari Scope picker di bagian atas halaman, pilih organisasi atau project yang berisi tag Anda.
Semua tag yang telah Anda buat di organisasi atau project ini akan muncul dalam daftar.
gcloud
Untuk menampilkan daftar semua kunci tag yang dibuat di organisasi atau resource project, gunakan
perintah gcloud resource-manager tags keys list:
gcloud resource-manager tags keys list --parent=RESOURCE_ID
RESOURCE_ID adalah ID resource organisasi atau
project yang ingin Anda temukan kunci tag terlampirnya.
- ID organisasi atau project harus diberikan dalam format
organizations/ORGANIZATION_IDatauprojects/PROJECT_NAME; misalnya:organizations/123456789012danprojects/test-project123. Untuk mempelajari cara mendapatkan ID organisasi, lihat Membuat dan mengelola organisasi. Untuk mempelajari cara mendapatkan project ID, lihat Membuat dan mengelola project. Anda akan mendapatkan respons seperti berikut:
NAME SHORT_NAME DESCRIPTION tagKeys/123456789012 environment description of tag key
API
Untuk menampilkan daftar semua kunci tag untuk resource tertentu, gunakan metode tagKeys.list, dengan resource induk yang ditentukan dalam kueri:
GET https://cloudresourcemanager.googleapis.com/v3/tagKeys
{
"parent": "RESOURCE_ID"
}
RESOURCE_ID adalah ID resource organisasi atau
project yang ingin Anda temukan kunci tag terlampirnya; misalnya:
organizations/123456789012 dan projects/test-project123.
Mencantumkan nilai tag
Anda dapat mencantumkan semua nilai tag yang terkait dengan kunci tag tertentu menggunakan Google Cloud konsol, gcloud CLI, atau dengan panggilan ke API.
Untuk kunci tag yang mendukung nilai dinamis, konsol akan menampilkan ekspresi reguler validasi yang ditentukan oleh pengguna, bukan daftar nilai tag yang dibuat di bawah kunci tag.
Perintah gcloud CLI dan REST API hanya mengambil nilai tag yang telah ditetapkan, bukan nilai tag dinamis.
Konsol
Untuk melihat semua nilai tag yang dilampirkan ke kunci tag, lakukan hal berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Pemilih cakupan di bagian atas halaman, pilih organisasi atau project yang berisi kunci tag Anda.
Klik Actions di samping kunci tag yang berisi nilai tag yang ingin Anda temukan, lalu klik View details.
Semua nilai tag yang telah Anda buat di bagian kunci tag ini akan muncul dalam daftar. Untuk kunci tag dinamis, Anda akan melihat ekspresi reguler validasi yang ditentukan untuk kunci tag ini, bukan daftar nilai individual.
gcloud
Untuk menampilkan daftar semua nilai tag yang dilampirkan ke kunci, gunakan perintah gcloud resource-manager tags values list:
gcloud resource-manager tags values list --parent=TAGKEY_NAME
TAGKEY_NAME adalah ID permanen atau nama
dengan namespace dari kunci tag yang ingin Anda temukan nilai terlampirnya; misalnya:
tagKeys/123456789012 atau 1234567/environment.
Anda akan mendapatkan respons seperti berikut:
NAME SHORT_NAME tagValues/123456789012 production
API
Untuk menampilkan daftar semua nilai tag yang dilampirkan ke kunci, gunakan metode tagValues.list, dengan kunci tag induk yang ditentukan dalam kueri:
GET https://cloudresourcemanager.googleapis.com/v3/tagValues
{
"parent": "TAGKEY_NAME"
}
TAGKEY_NAME adalah nama ID permanen kunci tag; misalnya: tagKeys/123456789012.
Mengelola akses ke tag
Anda dapat memberi pengguna akses khusus untuk mengelola tag dan melampirkan nilai tag ke resource menggunakan konsol Google Cloud . Lihat Izin yang diperlukan untuk mengetahui daftar peran yang terkait dengan tag, dan izin yang dimilikinya.
Kunci tag
Untuk mengelola akses bagi pengguna pada kunci tag, lakukan hal berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Scope picker di bagian atas halaman, pilih organisasi atau project yang berisi kunci tag yang aksesnya ingin Anda kelola.
Klik kotak centang di samping tag yang ingin Anda kelola aksesnya.
Klik Kelola akses.
Untuk menambahkan peran ke akun utama, klik Add principal.
Di kotak teks New principals, masukkan alamat email akun utama yang ingin Anda beri peran baru.
Pilih peran dari menu dropdown Select a role. Jika Anda ingin menambahkan lebih dari satu peran, klik Add another role.
Klik Simpan.
Untuk mengedit peran akun utama, klik Edit di samping akun utama yang ingin Anda edit.
Anda dapat mengubah peran apa pun yang ditetapkan ke akun utama pada tag ini dengan mengklik menu dropdown Role dan memilih peran baru.
Jika Anda ingin menambahkan peran lainnya, klik Add another role.
Untuk menghapus peran dari akun utama ini pada tag ini, klik Hapus peran di samping peran yang ingin Anda hapus.
Klik Simpan.
Untuk menghapus peran akun utama, klik Hapus peran di samping peran yang ingin Anda hapus.
- Klik Hapus.
Nilai tag
Untuk mengelola akses bagi pengguna pada nilai tag, lakukan hal berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Scope picker di bagian atas halaman, pilih organisasi atau project yang berisi kunci tag yang ingin Anda kelola aksesnya.
Klik Actions di samping kunci tag untuk nilai yang aksesnya ingin Anda kelola, lalu klik View details.
Klik Kelola akses.
Untuk menambahkan peran ke akun utama, klik Add principal.
Di kotak teks New principals, masukkan alamat email akun utama yang ingin Anda beri peran baru.
Pilih peran dari menu dropdown Select a role. Jika Anda ingin menambahkan lebih dari satu peran, klik Add another role.
Klik Simpan.
Untuk mengedit peran akun utama, klik Edit di samping akun utama yang ingin Anda edit.
Anda dapat mengubah peran apa pun yang ditetapkan ke akun utama pada tag ini dengan mengklik menu dropdown Role dan memilih peran baru.
Jika Anda ingin menambahkan peran lainnya, klik Add another role.
Untuk menghapus peran dari akun utama ini pada tag ini, klik Hapus peran di samping peran yang ingin Anda hapus.
Klik Simpan.
Untuk menghapus peran akun utama, klik Hapus peran di samping peran yang ingin Anda hapus.
- Klik Hapus.
Melampirkan tag ke resource
Setelah tag dibuat dan akses yang sesuai diberikan ke tag dan resource, tag dapat dilampirkan ke resource Google Cloud sebagai pasangan nilai kunci. Hanya satu
nilai yang dapat ditambahkan ke resource untuk kunci tertentu. Misalnya, jika
environment: development dilampirkan, environment: production atau
environment: test tidak dapat dilampirkan.
Setiap resource dapat melampirkan maksimum 50 pasangan nilai kunci.
Tag dilampirkan ke resource dengan membuat resource binding tag yang menautkan nilai ke resource Google Cloud . Alur kerja berikut menjelaskan cara melampirkan tag ke resource organisasi, folder, atau project. Untuk mengetahui detail tentang cara melampirkan tag ke jenis resource lain, lihat dokumentasi untuk resource tersebut di Layanan yang mendukung tag.
Konsol
Untuk melampirkan tag ke resource organisasi, folder, atau project, lakukan hal berikut:
Buka halaman Manage resources di konsol Google Cloud .
Klik organisasi, folder, atau project yang ingin Anda lampirkan tag.
Klik Tag.
Di panel Tag, klik Pilih cakupan.
Pilih organisasi atau project yang berisi tag Anda, lalu klik Open.
Di panel Tag, pilih Tambahkan tag.
Di kolom Key, pilih kunci untuk tag yang ingin Anda lampirkan dari daftar. Anda dapat memfilter daftar dengan mengetik kata kunci.
Untuk tag dengan nilai yang telah ditentukan, pilih nilai yang akan dilampirkan dari menu drop-down Value. Anda dapat memfilter daftar dengan mengetik kata kunci.
Untuk tag dengan nilai dinamis, masukkan string yang cocok dengan ekspresi reguler validasi yang dikonfigurasi untuk kunci tag tersebut.
Jika Anda ingin melampirkan lebih banyak tag, klik Add Tag, lalu pilih kunci dan nilai untuk masing-masing tag.
Klik Simpan.
Dalam dialog Confirm, klik Confirm untuk melampirkan tag.
Notifikasi mengonfirmasi bahwa tag Anda telah diperbarui. Tag baru akan muncul di bawah kolom Tag di halaman Kelola resource.
gcloud
Untuk melampirkan tag ke resource, Anda harus membuat resource binding tag menggunakan perintah gcloud resource-manager tags bindings create:
gcloud resource-manager tags bindings create \ --tag-value=TAGVALUE_NAME \ --parent=RESOURCE_ID \ --location=LOCATION
Dengan:
TAGVALUE_NAMEadalah ID permanen atau nama dengan namespace dari nilai tag yang akan dilampirkan; misalnya:tagValues/4567890123atau12345678/environment/production. Untuk tag dengan nilai dinamis, berikan nama dengan namespace saja karena nilai tag dinamis tidak memiliki ID.RESOURCE_IDadalah ID lengkap resource, termasuk nama domain API untuk mengidentifikasi jenis resource. Untuk resource global seperti project, gunakan//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER. Untuk resource zona seperti instance VM Compute Engine, gunakan//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/INSTANCE_ID. Untuk mengetahui informasi selengkapnya, lihat Nama Resource Lengkap.LOCATIONadalah lokasi resource Anda. Hilangkan flag ini untuk resource global (seperti folder atau project). Untuk resource regional (seperti subnetwork), tentukan region (misalnya:us-central1). Untuk resource zona (seperti instance VM Compute Engine), tentukan zona (misalnya:us-central1-a).
API
Untuk melampirkan tag ke resource, Anda harus terlebih dahulu membuat representasi JSON binding tag yang menyertakan ID permanen atau nama dengan namespace dari nilai tag dan ID permanen resource tersebut. Untuk mengetahui informasi selengkapnya tentang format binding tag, lihat Referensi TagBinding.
Jika Anda melampirkan tag ke resource global seperti organisasi, gunakan metode tagBindings.create dengan nama host endpoint global:
POST https://cloudresourcemanager.googleapis.com/v3/tagBindings
Jika Anda melampirkan tag ke resource regional atau zona (seperti instance VM Compute Engine), gunakan metode tagBindings.create dengan endpoint regional atau zona tempat resource Anda berada (misalnya: https://us-central1-a-cloudresourcemanager.googleapis.com/v3/tagBindings).
POST https://LOCATION-cloudresourcemanager.googleapis.com/v3/tagBindings
Meminta isi JSON:
{
"parent": "RESOURCE_ID",
"tagValue": "TAGVALUE_NAME"
}
ATAU
{
"parent": "RESOURCE_ID",
"tagValueNamespacedName": "TAGVALUE_NAMESPACED_NAME"
}
Dengan:
RESOURCE_IDadalah ID lengkap resource, termasuk nama domain API untuk mengidentifikasi jenis resource. Untuk resource global seperti project, gunakan//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER. Untuk resource zona seperti instance VM Compute Engine, gunakan//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/INSTANCE_ID. Untuk mengetahui informasi selengkapnya, lihat Nama Resource Lengkap.TAGVALUE_NAMEadalah ID permanen nilai tag yang dilampirkan; misalnya:tagValues/4567890123.TAGVALUE_NAMESPACED_NAMEadalah nama dengan namespace nilai tag yang dilampirkan dan memiliki format:parentNamespace/tagKeyShortName/tagValueShortName. Tag dengan nilai dinamis hanya dapat dilampirkan menggunakan nama dengan namespace, karena nilai tag dinamis tidak memiliki ID.
Mengubah tag pada resource
Anda dapat melakukan operasi massal untuk mengubah tag dengan cara berikut:
- Menghapus semua binding tag: menghapus semua binding tag yang ada dari resource.
- Mengganti binding tag: mengganti semua binding tag yang ada di resource dengan kumpulan key-value pair baru.
- Menghapus binding tag: menghapus binding tag tertentu dari resource.
Untuk menghapus, mengganti, dan menghapus binding tag, Anda dapat menggunakan perintah
gcloud alpha resource-manager tags bindings update
di gcloud CLI atau metode locations.tagBindingCollections.patch
jika menggunakan API.
Menggunakan gcloud CLI
gcloud CLI menyediakan opsi berikut untuk mengubah binding tag:
Menghapus semua tag dari resource
Untuk menghapus semua tag dari resource, gunakan flag --clear-tags dengan perintah gcloud alpha resource-manager tags bindings update.
gcloud
gcloud alpha resource-manager tags bindings update \
--resource-name=RESOURCE_NAME \
--clear-tags
Ganti RESOURCE_NAME dengan nama resource lengkap dari
resource.
Menghapus tag tertentu dari resource
Untuk menghapus tag tertentu dari resource, gunakan flag --remove-tags
dengan perintah gcloud alpha resource-manager tags bindings update.
gcloud
gcloud alpha resource-manager tags bindings update \
--resource-name=RESOURCE_NAME \
--remove-tags=TAG_KEY_NAMESPACED_NAME
Ganti kode berikut:
RESOURCE_NAME: nama resource lengkap dari binding tag yang akan dihapus.TAG_KEY_NAMESPACED_NAME: nama dengan namespace dari kunci tag (misalnya,123456789012/environmentataumy-project-123/cost-center).
Anda dapat menentukan beberapa nama kunci tag yang di-namespace sebagai daftar yang dipisahkan koma. Contoh: --remove-tags=123456789012/environment,my-project-123/cost-center.
Ganti tag
Untuk mengganti semua binding tag yang ada pada resource dengan key-value pair baru,
gunakan flag --replace-tags dengan perintah gcloud alpha resource-manager tags bindings update.
gcloud
gcloud alpha resource-manager tags bindings update \
--resource-name=RESOURCE_NAME \
--replace-tags=TAG_KEY_NAMESPACED_NAME=TAG_VALUE_SHORT_NAME
Ganti kode berikut:
RESOURCE_NAME: nama resource lengkap dari resource.TAG_KEY_NAMESPACED_NAME: nama dengan namespace dari kunci tag (misalnya,123456789012/environmentataumy-project-123/cost-center).TAG_VALUE_SHORT_NAME: nama pendek nilai tag.
Anda dapat menentukan beberapa key-value pair sebagai comma separated list. Contoh: --replace-tags=123456789012/environment=dev,my-project-123/cost-center=frontend.
Menggunakan API
Isi permintaan metode locations.tagBindingCollections.patch menerima
objek JSON yang mewakili peta tag, dengan kunci dan nilai berupa string. API menggunakan peta ini untuk melakukan semua operasi tag—termasuk menghapus, mengganti, dan menghapus, sebagai satu operasi massal. API ini hanya mendukung semantik PUT. Saat Anda mengirim permintaan, API akan mengganti semua binding saat ini yang dilampirkan ke resource dengan kumpulan binding baru yang disediakan dalam peta permintaan Anda.
Saat Anda mengirim peta tag ke API, API akan memprosesnya terhadap tag resource saat ini sebagai berikut:
- Menghapus: Mengirim peta tag kosong ({}) akan menghapus semua binding tag yang ada dari resource.
- Hapus: Setiap key-value pair yang ada pada resource yang tidak disertakan dalam peta tag yang Anda berikan akan dihapus.
- Ganti: Peta tag yang tidak kosong akan menggantikan semua tag yang ada di resource dengan tag baru yang Anda berikan.
Mencantumkan semua tag yang dilampirkan ke resource
Anda bisa mendapatkan daftar semua tag yang dilampirkan ke resource, baik tag yang diwarisi maupun yang dilampirkan secara langsung.
Konsol
Untuk melihat semua tag yang dilampirkan ke atau diwarisi oleh resource, lakukan hal berikut:
Buka halaman Manage resources di konsol Google Cloud .
Temukan organisasi, folder, atau project Anda dalam daftar resource.
Tag yang dilampirkan ke resource akan muncul di kolom Tags. Tag yang diwarisi akan ditandai sebagai Diwarisi.
gcloud
Untuk mendapatkan daftar binding tag yang langsung dilampirkan ke resource, gunakan
perintah gcloud resource-manager tags bindings list. Jika menambahkan
flag --effective, Anda juga akan menampilkan daftar tag yang diwarisi oleh
resource ini.
gcloud resource-manager tags bindings list \
--parent=RESOURCE_ID \
--location=LOCATION
Dengan:
RESOURCE_IDadalah ID lengkap resource; misalnya://cloudresourcemanager.googleapis.com/projects/7890123456LOCATIONadalah lokasi resource Anda. Hilangkan flag ini untuk resource global (seperti folder atau project). Untuk resource regional atau zona (seperti instance VM Compute Engine), tentukan lokasinya; misalnya:us-central1-a.
Anda akan mendapatkan respons seperti berikut:
Untuk tag standar:
tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2FPROJECT_NUMBER%2Flocations%2FLOCATION%2Fresources%2FRESOURCE_ID/tagValues/TAG_VALUE_ID parent: //cloudresourcemanager.googleapis.com/projects/123456789012/locations/us-central1/example-resource/res-01 tagValue: tagValues/987654321098 tagValueNamespacedName: 961309089256/environment/production
Untuk tag dengan nilai dinamis:
tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2FPROJECT_NUMBER%2Flocations%2FLOCATION%2Fresources%2FRESOURCE_ID/tagKeys/TAG_KEY_ID parent: //cloudresourcemanager.googleapis.com/projects/123456789012/locations/us-central1/example-resource/res-01 tagValueNamespacedName: your-org-id/environment/staging
Untuk tag dengan nilai dinamis, kolom tagValue tidak ada dalam respons; hanya
tagValueNamespacedName yang diisi.
Jika menambahkan flag --effective ke perintah tags bindings list, Anda juga
akan menampilkan daftar semua tag yang diwarisi oleh resource ini. Anda akan
mendapatkan respons seperti berikut:
Untuk tag yang telah ditentukan:
inherited: true namespacedTagKey: 433637338589/environment namespacedTagValue: 433637338589/environment/production tagKey: tagKeys/162008917964 tagKeyParentName: organizations/433637338589 tagValue: tagValues/281482214193975
Untuk tag dengan nilai dinamis:
inherited: true namespacedTagKey: my-sample-org/dynamic-key namespacedTagValue: my-sample-org/dynamic-key/staging tagKey: tagKeys/281476834141096 tagKeyParentName: projects/357710452272
Jika semua tag yang dievaluasi pada resource dilampirkan langsung, kolom inherited
akan bernilai salah dan akan dihilangkan.
API
Untuk mendapatkan daftar binding tag yang langsung dilampirkan ke resource global seperti organisasi, gunakan metode tagBindings.list, dengan menentukan resource induk dalam kueri:
GET https://cloudresourcemanager.googleapis.com/v3/tagBindings
{
"parent": "RESOURCE_ID"
}
Jika Anda ingin mencantumkan binding tag yang dilampirkan ke resource regional atau zona, seperti instance VM Compute Engine, gunakan metode tagBindings.list dengan endpoint regional atau zona tempat resource Anda berada.
GET https://LOCATION-cloudresourcemanager.googleapis.com/v3/tagBindings
{
"parent": "RESOURCE_ID"
}
Untuk mencantumkan tag yang berlaku (termasuk tag yang diwarisi) yang dilampirkan ke resource, gunakan metode effectiveTags.list:
GET https://cloudresourcemanager.googleapis.com/v3/effectiveTags?parent=RESOURCE_ID
Dengan:
RESOURCE_IDadalah ID lengkap resource; misalnya://cloudresourcemanager.googleapis.com/projects/7890123456.LOCATIONadalah endpoint regional untuk resource Anda; misalnya:us-central1.
Jika berhasil, isi respons akan menyertakan daftar objek TagBinding. Contoh:
name: tagBindings/cloudresourcemanager.googleapis.com/projects/7890123456/567890123456 tagValue: tagValues/567890123456 tagValueNamespacedName: example-org/cost-center/1000 resource: //cloudresourcemanager.googleapis.com/projects/7890123456
Untuk tag dengan nilai dinamis, kolom tagValue tidak ada dalam respons; hanya
tagValueNamespacedName yang diisi.
Melepaskan tag dari resource
Anda dapat melepaskan tag dari resource dengan menghapus resource binding tag.
Konsol
Untuk melepaskan tag dari resource organisasi, folder, atau project, lakukan hal berikut:
Buka halaman Manage resources di konsol Google Cloud .
Klik organisasi, folder, atau project yang ingin Anda lepaskan tag-nya.
Klik Tag.
Di panel Tags, di samping tag yang ingin dilepas, klik Delete item.
Klik Simpan.
Dalam dialog Confirm, klik Confirm untuk melepas tag.
Notifikasi mengonfirmasi bahwa tag Anda telah diperbarui. Daftar tag yang diperbarui akan muncul di kolom Tag di halaman Kelola fasilitas.
gcloud
Untuk menghapus binding tag, gunakan perintah gcloud resource-manager tags bindings delete:
gcloud resource-manager tags bindings delete \ --tag-value=TAGVALUE_NAME \ --parent=RESOURCE_ID \ --location=LOCATION
Dengan:
TAGVALUE_NAMEadalah ID permanen atau nama dengan namespace dari nilai tag yang dilampirkan; misalnya:tagValues/567890123456. Untuk tag dengan nilai dinamis, berikan nama dengan namespace saja karena nilai tag dinamis tidak memiliki ID.RESOURCE_IDadalah ID lengkap resource. Contoh://cloudresourcemanager.googleapis.com/projects/7890123456LOCATIONadalah lokasi resource Anda. Jika Anda menghapus binding tag yang dilampirkan ke resource global, seperti folder atau project, Anda harus menghilangkan flag ini. Jika Anda menghapus binding tag yang dilampirkan ke resource regional, seperti instance Compute Engine, Anda harus menentukan lokasinya; misalnya:us-central1.
API
Untuk menghapus binding tag yang dilampirkan ke resource global seperti organisasi, gunakan metode tagBindings.delete:
DELETE https://cloudresourcemanager.googleapis.com/v3/{name=TAGBINDINGS_NAME}
Jika Anda ingin menghapus binding tag yang dilampirkan ke resource regional,
seperti instance Compute Engine, gunakan metode tagBindings.delete
dengan endpoint regional tempat resource Anda berada.
DELETE https://LOCATION-cloudresourcemanager.googleapis.com/v3/{name=TAGBINDINGS_NAME}
Dengan:
TAGBINDINGS_NAMEadalah ID permanen TagBinding. Untuk tag yang telah ditetapkan, formatnya adalahtagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F1234567890/tagValues/567890123456. Untuk tag dengan nilai dinamis, formatnya adalahtagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F1234567890/tagKeys/12345678.LOCATIONadalah endpoint regional untuk resource Anda; misalnya:us-central1.
Menerapkan tag wajib pada resource
Untuk menerapkan tag wajib pada resource, buat kebijakan organisasi kustom dan tetapkan kebijakan pada resource organisasi, folder, atau project untuk menerapkan batasan kustom.
Untuk mempelajari lebih lanjut penerapan tag, lihat Penerapan tag wajib menggunakan kebijakan organisasi.
Menyiapkan batasan kustom untuk menerapkan tag
Konsol
Di konsol Google Cloud , buka halaman Organization policies.
Pilih pemilih project di bagian atas halaman.
Dari pemilih project, pilih organisasi tempat Anda ingin menerapkan batasan kustom.
Siapkan batasan kustom dengan parameter berikut:
- Metode penegakan:
Govern tags - Resource type: nama yang sepenuhnya memenuhi syarat dari resource REST Google Cloud
yang ingin Anda terapkan tag wajibnya, misalnya,
file.googleapis.com/Instance - Condition: kondisi Common Expression Language (CEL) yang menentukan
kunci tag yang ingin Anda terapkan pada resource, misalnya
resource.hasDirectTagKey("1234567890/owner")untuk menerapkan binding tag untuk kunci tag1234567890/owner. Fungsi CELresource.hasDirectTagKeyhanya mencocokkan tag yang diterapkan langsung ke resource dan tidak mempertimbangkan tag yang diwarisi dari ancestor dalam hierarki resource. - Tindakan:
AllowatauDeny.- Izinkan: Jika kondisi yang ditentukan terpenuhi, tindakan untuk membuat atau memperbarui resource diizinkan.
- Tolak: Jika kondisi yang ditentukan terpenuhi, tindakan untuk membuat atau memperbarui resource akan diblokir.
- Metode penegakan:
Klik Create constraint.
gcloud
Buat file YAML untuk batasan khusus:
name: organizations/ORGANIZATION_ID/customConstraints/CONSTRAINT_NAME
resourceTypes:
- RESOURCE_NAME
methodTypes:
- GOVERN_TAGS
condition: "CONDITION"
actionType: ACTION
displayName: DISPLAY_NAME
description: DESCRIPTION
Ganti kode berikut:
ORGANIZATION_ID: ID organisasi Anda, seperti1234567890.CONSTRAINT_NAME: nama yang diinginkan untuk batasan khusus baru Anda. Batasan khusus harus dimulai dengancustom., dan hanya boleh meliputi huruf besar, huruf kecil, atau angka, misalnya,custom.enforceMandatoryTags.RESOURCE_NAME: nama yang sepenuhnya memenuhi syarat dari resource RESTGoogle Cloud yang ingin Anda terapkan tag wajibnya, misalnya,file.googleapis.com/Instance.CONDITION: kondisi Common Expression Language (CEL) yang menentukan kunci tag yang ingin Anda terapkan pada resource, misalnyaresource.hasDirectTagKey("1234567890/owner")untuk menerapkan binding tag untuk kunci tag1234567890/owner.ACTION: tindakan yang akan diambil jikaconditionterpenuhi. Ini dapat berupaALLOWatauDENY.Tindakan penolakan berarti bahwa jika kondisi yang ditentukan terpenuhi, operasi untuk membuat atau memperbarui resource akan diblokir.
Tindakan izinkan berarti jika kondisi yang ditentukan terpenuhi, operasi untuk membuat atau memperbarui resource diizinkan. Artinya juga bahwa setiap kasus lain kecuali yang tercantum secara eksplisit dalam kondisi diblokir.
DISPLAY_NAME: nama yang mudah dibaca manusia untuk batasan. Kolom ini memiliki panjang maksimum 200 karakter.DESCRIPTION: deskripsi batasan yang mudah dipahami untuk ditampilkan sebagai pesan error saat kebijakan dilanggar. Kolom ini memiliki panjang maksimum 2.000 karakter.
Siapkan batasan kustom agar tersedia untuk kebijakan organisasi di organisasi Anda.
Setelah menentukan batasan kustom, Anda dapat menguji dan menganalisis perubahan kebijakan organisasi dan menerapkan batasan.
Melindungi nilai tag dengan pembekuan tag
Penangguhan tag adalah resource yang dapat Anda buat untuk melindungi nilai tag agar tidak dihapus. Jika nilai tag memiliki penangguhan tag, nilai tersebut tidak dapat dihapus oleh pengguna kecuali jika penangguhan tag dihapus terlebih dahulu.
Pembekuan tag tidak dapat diterapkan pada nilai tag dinamis.
Membuat pembekuan tag
Anda dapat membuat penangguhan tag secara manual menggunakan gcloud CLI atau API.
gcloud
Untuk membuat penangguhan tag, gunakan perintah gcloud CLI gcloud resource-manager tags holds create:
gcloud resource-manager tags holds create TAGVALUE_NAME \ --holder=HOLDER_NAME \ --location=LOCATION
Dengan:
TAGVALUE_NAMEadalah ID permanen atau nama dengan namespace dari nilai tag yang akan dibuatkan penangguhan tag ini; misalnya:tagValues/567890123456.HOLDER_NAMEadalah nama resource tempat nilai tag dilampirkan. Harus kurang dari 200 karakter.LOCATIONadalah lokasi resource Anda. Jika Anda membuat penangguhan tag untuk resource global, seperti Google Cloud project, Anda harus menghilangkan flag ini. Jika Anda membuat penangguhan tag untuk resource regional atau zona, Anda harus menentukan lokasinya; misalnya:us-central1.
API
Untuk membuat penangguhan tag untuk nilai tag, Anda harus terlebih dahulu membuat representasi JSON
dari penangguhan tag. Referensi JSON ini harus menyertakan referensi
ke resource tempat nilai tag dilampirkan. Untuk mengetahui informasi selengkapnya
tentang format penangguhan tag, lihat
referensi TagHolds.
Jika Anda membuat penangguhan tag untuk nilai tag yang dilampirkan ke resource global
seperti organisasi, gunakan
metode tagHolds.create
dengan nama host endpoint global:
POST https://cloudresourcemanager.googleapis.com/v3/tagValues/TAGVALUE_NAME/tagHolds
Jika Anda membuat penangguhan tag untuk nilai tag yang dilampirkan ke resource regional, seperti instance Compute Engine, gunakan metode tagHolds.create dengan endpoint regional tempat resource Anda berada.
POST https://LOCATION-cloudresourcemanager.googleapis.com/v3/TAGVALUE_NAME/tagHolds
Meminta isi JSON:
{
"holder":HOLDER_NAME,
"origin":ORIGIN_NAME
}
Dengan:
TAGVALUE_NAMEadalah ID permanen nilai tag yang dilampirkan; misalnya:tagValues/4567890123.HOLDER_NAMEadalah nama resource tempat nilai tag dilampirkan. Harus kurang dari 200 karakter.ORIGIN_NAMEadalah string opsional yang mewakili asal permintaan ini. Kolom ini harus menyertakan informasi yang dapat dipahami manusia untuk membedakan origin satu sama lain. Harus kurang dari 200 karakter.
Mencantumkan penangguhan tag
Anda dapat mencantumkan semua penangguhan tag di bawah nilai tag tertentu menggunakan gcloud CLI atau API.
gcloud
Untuk mencantumkan penangguhan tag yang berada di bawah nilai tag, gunakan perintah gcloud CLI gcloud resource-manager tags holds list:
gcloud resource-manager tags holds list TAGVALUE_NAME \ --location=LOCATION
Dengan:
TAGVALUE_NAMEadalah ID permanen atau nama dengan namespace dari nilai tag; misalnya:tagValues/567890123456.LOCATIONadalah lokasi resource Anda. Jika Anda mencari penangguhan tag yang dibuat secara global, Anda harus menghilangkan flag ini. Jika Anda mencari penangguhan tag di resource regional atau zona, Anda harus menentukan lokasinya; misalnya:us-central1.
API
Untuk mendapatkan daftar penangguhan tag di bawah nilai tag, gunakan metode GET tagHolds, dengan menentukan nilai tag induk di URL:
GET https://cloudresourcemanager.googleapis.com/v3/{TAGVALUE_NAME}/tagHolds
Dengan:
TAGVALUE_NAMEadalah ID permanen atau nama dengan namespace dari nilai tag; misalnya:tagValues/567890123456.
Menghapus pembekuan tag
Anda dapat menghapus penangguhan tag yang dibuat pada nilai tag tertentu menggunakan gcloud CLI atau API.
Beberapa resource menambahkan penangguhan tag ke nilai tag yang dilampirkan ke resource tersebut. Jika Anda melampirkan tag ke resource tersebut, resource akan membuat penangguhan tag yang akan mencegah pengguna menghapus nilai tag yang dilampirkan.
Anda dapat menghapus penangguhan tag menggunakan gcloud CLI atau API.
gcloud
Untuk menghapus penangguhan tag, gunakan perintah gcloud CLI gcloud resource-manager tags holds delete:
gcloud resource-manager tags holds delete TAGHOLD_NAME \ --location=LOCATION
Dengan:
TAGHOLD_NAMEadalah nama dengan namespace dari penangguhan tag, yang dapat ditemukan menggunakan perintahlist. Contoh:tagValues/1012910994523/tagHolds/d1c8f5e2-2954-43d6-8f46-5f812ab48c37.LOCATIONadalah lokasi resource Anda. Jika Anda menghapus penangguhan tag yang berada di bawah nilai tag yang dilampirkan ke resource global, seperti folder atau project, Anda harus menghilangkan flag ini. Jika Anda menghapus penangguhan tag yang dibuat dari proses regional atau zona, Anda harus menentukan lokasinya; misalnya:us-central1.
API
Untuk menghapus nilai tag, gunakan metode tagHolds.delete:
DELETE https://cloudresourcemanager.googleapis.com/v3/{TAGVALUE_NAME}/tagHolds/{TAGHOLD_NAME}
Dengan:
TAGVALUE_NAMEadalah ID permanen nilai tag yang dilampiri penangguhan tag yang ingin Anda hapus; misalnya:tagValues/567890123456.TAGHOLD_NAMEadalah nama tag hold dengan namespace yang ingin Anda hapus, yang dapat ditemukan menggunakan perintahlist. Contoh:tagValues/1012910994523/tagHolds/d1c8f5e2-2954-43d6-8f46-5f812ab48c37.
Menghapus tag
Untuk menghapus tag, Anda harus menghapus setiap komponen penentunya. Pertama, Anda harus menghapus binding tag apa pun yang melampirkan tag ini ke resource dalam hierarki Anda. Untuk mengetahui petunjuk tentang cara menghapus binding tag, lihat Melepaskan tag dari resource.
Jika tag digunakan oleh resource lain, atau pengguna telah membuat penangguhan tag secara manual, Anda mungkin perlu menghapus penangguhan tag serta menghapus binding tag sebelum dapat menghapus nilai tag. Untuk mengetahui informasi tentang cara menghapus penangguhan tag, lihat Menghapus penangguhan tag.
Setelah tidak ada lagi binding tag untuk nilai tag yang ingin dihapus, Anda dapat menghapus nilai tersebut.
Konsol
Untuk menghapus nilai tag, lakukan langkah-langkah berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Scope picker di bagian atas halaman, pilih organisasi atau project yang berisi nilai tag Anda.
Klik Tindakan di samping kunci tag yang berisi nilai tag yang ingin Anda hapus, lalu klik Lihat detail.
Dalam daftar nilai tag yang terkait dengan kunci tag ini, klik nilai tag yang ingin Anda hapus.
Klik kotak centang di samping nilai tag yang ingin Anda hapus, lalu klik Delete values.
Klik Konfirmasi.
gcloud
Untuk menghapus nilai tag, gunakan perintah gcloud resource-manager tag values delete:
gcloud resource-manager tags values delete TAGVALUE_NAME
TAGVALUE_NAME adalah ID permanen atau
nama dengan namespace dari nilai tag yang ingin Anda hapus; misalnya:
tagValues/567890123456.
API
Untuk menghapus nilai tag, gunakan metode tagValues.delete:
DELETE https://cloudresourcemanager.googleapis.com/v3/{name=TAGVALUE_NAME}
TAGVALUE_NAME adalah ID permanen nilai tag yang ingin Anda hapus; misalnya: tagValues/567890123456.
Setelah semua nilai tag yang terkait dengan kunci dihapus, Anda dapat menghapus kunci tersebut. Untuk tag dengan nilai dinamis, semua binding terkait harus dihapus sebelum kunci tag dapat dihapus.
Konsol
Untuk menghapus kunci tag, lakukan tindakan berikut:
Buka halaman Tag di konsol Google Cloud .
Dari Scope picker di bagian atas halaman, pilih organisasi atau project yang berisi kunci tag Anda.
Klik kotak centang di samping kunci tag yang ingin Anda hapus.
Klik Hapus tag.
Klik Konfirmasi.
gcloud
Untuk menghapus kunci tag, gunakan perintah gcloud resource-manager tags keys delete:
gcloud resource-manager tags keys delete TAGKEYS_NAME
TAGKEYS_NAME adalah ID permanen atau
nama dengan namespace dari kunci tag yang ingin Anda hapus; misalnya:
tagKeys/123456789012.
API
Untuk menghapus kunci tag, gunakan metode tagKeys.delete:
DELETE https://cloudresourcemanager.googleapis.com/v3/{name=TAGKEYS_NAME}
TAGKEYS_NAME adalah ID permanen kunci tag yang ingin Anda hapus; misalnya: tagKeys/123456789012.
Kebijakan dan tag
Anda dapat menggunakan tag dengan kebijakan yang mendukungnya untuk menerapkan kebijakan tersebut secara bersyarat. Anda dapat menjadikan ada atau tidaknya nilai tag sebagai kondisi untuk kebijakan tersebut.
Misalnya, Anda dapat memberikan peran Identity and Access Management (IAM) secara bersyarat berdasarkan apakah resource memiliki tag tertentu atau tidak.
Kondisi dan tag Identity and Access Management
Anda dapat menggunakan tag dan kondisi Identity and Access Management untuk memberikan peran bersyarat kepada pengguna dalam hierarki Anda. Proses ini membuat resource tidak dapat diakses oleh pengguna hingga tag yang terkait dengan kebijakan bersyarat dilampirkan. Misalnya, Anda mungkin ingin mewajibkan developer menetapkan pusat biaya ke resource sebelum dapat menggunakannya.
Buat tag yang dapat Anda gunakan untuk mengaitkan resource dengan sesuatu yang akan mengidentifikasi apakah resource telah menerapkan tata kelola yang tepat. Misalnya, Anda dapat membuat tag dengan kunci
costCenterdan nilai0001,0002, dan seterusnya, untuk mengaitkan resource dengan berbagai pusat biaya di perusahaan Anda.Buat peran khusus tingkat organisasi yang memungkinkan pengguna menambahkan tag ke resource yang memerlukan tag. Tindakan ini memberikan izin ini kepada akun utama yang ditentukan di mana pun dalam organisasi Anda.
Misalnya, peran khusus yang memungkinkan pengguna menambahkan tag ke project akan mencakup izin berikut:
resourcemanager.projects.getresourcemanager.hierarchyNodes.createresourcemanager.hierarchyNodes.deleteresourcemanager.hierarchyNodes.list
Saat membuat project untuk developer, tetapkan peran khusus ini kepada mereka di project.
Tetapkan peran lain kepada developer Anda yang mencakup izin bagi mereka untuk melakukan tindakan yang diinginkan di dalam project tersebut. Saat Anda memberikan peran kepada pengguna di project, peran tersebut harus selalu diberikan secara bersyarat untuk mewajibkan lampiran tag
costCenter.resource.hasTagKey('123456789012/costCenter')
Untuk memberikan peran IAM secara bersyarat menggunakan tag di konsolGoogle Cloud , lakukan hal berikut:
Buka halaman IAM di konsol Google Cloud .
Klik Grant Access (atau klik Edit principal di samping akun utama yang ada).
Di kolom New principals, masukkan alamat email akun utama.
Di menu drop-down Select a role, pilih peran yang ingin Anda berikan.
Klik Add IAM condition.
Di kolom Title, masukkan nama untuk kondisi.
Di pembuat kondisi, di bagian Condition type, pilih Resource > Tag.
Masukkan kunci tag dan nilai tag dengan namespace (atau pilih dari daftar).
Klik Save untuk menerapkan kondisi, lalu klik Save untuk menyimpan binding peran.
Misalnya, dalam organisasi dengan beberapa tim engineering (team-a
dan team-b), setiap tim mengelola resource di seluruh lingkungan development dan
production. Anda dapat melampirkan environment: development ke
folder dan project pengembangan, serta environment: production ke
folder dan project produksi. Kemudian, berikan peran Developer kepada anggota team-a secara bersyarat pada resource yang diberi tag environment: development (menggunakan resource.matchTag('123456789012/environment', 'development')), untuk memastikan developer memiliki akses tulis dalam pengembangan sekaligus membatasi akses produksi untuk engineer operasi yang ditunjuk.
Sekarang, setiap kali project dibuat, developer Anda harus melampirkan tag costCenter
ke project tersebut sebelum dapat melakukan tindakan di dalamnya yang diberikan oleh
kebijakan izin.
Kebijakan organisasi dan tag
Anda dapat menggunakan tag dan penerapan bersyarat kebijakan organisasi untuk memberikan kontrol terpusat atas resource dalam hierarki Anda. Untuk mengetahui informasi selengkapnya, lihat Menetapkan kebijakan organisasi dengan tag.
Tag sistem
Tag sistem adalah tag yang dikelola Google yang dapat diikat oleh layanan Google Cloud ke resource. Tag sistem ini dapat dilihat dan digunakan seperti binding tag lainnya
pada resource, tetapi tidak dapat diedit atau dihapus dari resource. Kunci tag sistem memiliki awalan system: dalam nama pendeknya dan dikelola dalam namespace tag yang diawali dengan awalan google.
| Kunci Tag (Nama dengan Namespace) | Nilai Tag | Deskripsi |
|---|---|---|
google/system:sdp-data-sensitivity |
HIGH, MODERATE, LOW, UNKNOWN |
Tag yang dapat dikonfigurasi untuk dilampirkan secara otomatis oleh layanan Sensitive Data Protection ke resource yang diprofilkannya untuk menunjukkan tingkat sensitivitas data yang ditemukan dari resource tersebut. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan pemberian tag otomatis dalam konfigurasi penemuan. |
google:AppHub/environment |
PRODUCTION, STAGING, TEST, DEVELOPMENT |
Tag semantik sistem ([Pratinjau](https://cloud.google.com/products#product-launch-stages)) direplikasi secara otomatis dari App Hub untuk atribut lingkungan. |
google:AppHub/criticality |
MISSION_CRITICAL, HIGH, MEDIUM, LOW |
Tag semantik sistem ([Pratinjau](https://cloud.google.com/products#product-launch-stages)) direplikasi secara otomatis dari App Hub untuk atribut kekritisan. |
Melihat dan mengelola tag semantik
Anda dapat melihat dan mencantumkan semantik tertentu yang disinkronkan dari App Hub.
Melihat tag semantik yang disinkronkan
Gunakan metode berikut untuk memverifikasi bahwa atribut App Hub telah disebarkan sebagai tag semantik sistem hanya baca ke resource yang mendasarinya.
gcloud
Untuk melihat binding pada resource yang mendasarinya (misalnya, tugas MIG atau Cloud Run), gunakan perintah gcloud resource-manager tags bindings list:
gcloud resource-manager tags bindings list \
--parent=//API_DOMAIN/projects/PROJECT_NUMBER/... \
--location=LOCATION
Contoh output yang menampilkan tag sistem App Hub:
---
namespacedTagKey: google:AppHub/criticality
namespacedTagValue: google:AppHub/criticality/low
parent: //compute.googleapis.com/projects/my-project-id/zones/us-central1-a/instances/my-instance
tagKey: tagKeys/345678901234
tagValue: tagValues/456789012345
---
Mengambil semantik resource
Gunakan metode berikut untuk mengambil pemetaan semantik otoritatif yang terkait
dengan resource. Untuk mengambil semantik resource, API menggunakan izin IAM <var>RESOURCE</var>.listEffectiveTags khusus resource yang ada.
gcloud
Untuk melihat pemetaan semantik yang efektif (misalnya, mengonfirmasi
ENVIRONMENT:STAGING atau CRITICALITY:LOW), gunakan
perintah gcloud alpha resource-manager tags semantics list:
gcloud alpha resource-manager tags semantics list \
--parent=//API_DOMAIN/projects/PROJECT_NUMBER/... \
--location=LOCATION
Contoh output:
---
semanticKey: CRITICALITY
semanticValue: LOW
---
Melihat Katalog Semantik
Anda dapat menjelajahi Katalog Semantik di konsol Google Cloud untuk melihat semantik yang tersedia dan pemetaannya ke atribut OpenTelemetry (OTel).
Konsol
Untuk mengakses Katalog Semantik menggunakan konsol Google Cloud , lakukan hal berikut:
Buka halaman Tag di konsol Google Cloud .
Klik tab Semantic Catalog yang terletak di area dasbor utama untuk melihat tabel yang memetakan kunci semantik internal ke standar OpenTelemetry.
Layanan yang didukung
Untuk daftar layanan yang mendukung tag, lihat Layanan yang mendukung tag.