יצירה וניהול של תגים

תגים הם צמדי מפתח/ערך שאפשר לצרף למשאבי Google Cloud. אתם יכולים להשתמש בתגים כדי לאכוף כללי מדיניות באופן מותנה, על סמך השאלה אם למשאב נתמך יש תג ספציפי.

לפני שמתחילים

לסקירה כללית על התגים

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות לניהול תגים, בקשו מהאדמין לתת לכם את התפקידים הבאים ב-IAM:

  • Tag Viewer (roles/resourcemanager.tagViewer) במשאבים שהתגים מצורפים אליהם
  • צפייה בתגים וניהול שלהם ברמת הארגון: Organization Viewer (roles/resourcemanager.organizationViewer) בארגון
  • הוספה והסרה של תגים ממשאבים: משתמש בתג (roles/resourcemanager.tagUser) בערך התג ובמשאב המטרה. כדי לצרף תגים למשאבי שירות ספציפיים או להסיר אותם, חשבונות המשתמשים צריכים גם הרשאות קישור לתגים ספציפיים למשאבים (כמו compute.instances.createTagBinding או storage.buckets.createTagBinding).
  • יצירה, עדכון ומחיקה של הגדרות תגים: Tag Administrator (roles/resourcemanager.tagAdmin) במשאב שבו יוצרים, מעדכנים או מוחקים תגים

להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

יצירה והגדרה של תג חדש

תגים הם צמדי מפתח/ערך שמצורפים למשאב בGoogle Cloud ההיררכיה. כדי ליצור תג חדש, קודם צריך ליצור מפתח תג שמתאר את התג שאתם יוצרים. לדוגמה, כדי לציין סביבות ייצור, בדיקה ופיתוח למשאבים בהיררכיית המשאבים, אפשר ליצור מפתח בשם environment.

לאחר מכן, אתם יכולים ליצור את הערכים השונים שהמפתח יכול לקבל. אם יצרתם מפתח תג בשם environment, יכול להיות שתרצו לציין שיש שלוש סביבות פוטנציאליות וליצור ערך לכל אחת מהן: production,‏ development ו-test.

בסוף, אתם יכולים לצרף את התגים האלה למשאבים, והם יכללו את השיוך של צמד המפתח/ערך. צירוף של מפתח וערך של תג למשאב נקרא גם "יצירת קישור תגים". לדוגמה, אפשר לצרף את התג test לכמה תיקיות של סביבות בדיקה בארגון, ובכל אחת מהן יהיה צמד המפתח/ערך environment: test.

אתם יכולים גם ליצור מפתחות תגים שמאפשרים למשתמשים לציין ערכים באופן דינמי כשמוסיפים קישור בין תגים למשאב. הערכים האלה נקראים ערכי תגים דינמיים (גרסת טרום-השקה (Preview)). אתם יכולים להגדיר כללי אימות לערכי התגים הדינמיים, שמאפשרים לאכוף פורמטים, ערכים או אילוצים ספציפיים על התגים שהמשתמשים יוצרים בזמן צירוף המשאבים.

ערכי תגים דינמיים שימושיים כשלא מעשי להגדיר מראש כל ערך תג אפשרי. לדוגמה, למאפיינים כמו owner,‏ מזהה האפליקציה,‏ service Id או cost center יכולים להיות אלפי ערכים נפרדים. הגדרה מראש ותחזוקה ידנית של רשימות נרחבות כאלה של ערכי תגים יוצרות עומס ניהולי משמעותי.

מגבלות על מפתחות וערכים של תגים

אפשר ליצור עד 1,000 מפתחות של תגים בארגון או בפרויקט נתון. המגבלות האלה לא תלויות זו בזו. לדוגמה, מפתחות של תגים שנוצרו בפרויקט לא נכללים במגבלה של צומת הארגון. אם אתם צריכים לחרוג ממספר ברירת המחדל, אתם יכולים לשלוח בקשת תמיכה כדי להגדיל את המכסה ל-10,000 מפתחות תגים לכל ארגון או פרויקט.

כברירת מחדל, לערכי תגים מוגדרים מראש אפשר לשייך עד 1,000 ערכים לכל מפתח תג. אפשר גם להגדיל את המגבלה הזו ל-10,000 ערכי תגים לכל מפתח באמצעות בקשת תמיכה. עם זאת, אם אתם משתמשים בערכי תגים דינמיים, אין מגבלה על מספר ערכי התגים הייחודיים שמותרים לכל מפתח תג.

אי אפשר להשתמש בערכים של תגים דינמיים בתנאים של ניהול זהויות והרשאות גישה (IAM) או באילוצים של שירות מדיניות הארגון.

יצירת מפתח תג

כדי להתחיל, צריך ליצור מפתח תג.

האורך המקסימלי של shortName של מפתח התג הוא 256 תווים. קבוצת התווים המותרת ל-shortName כוללת תווי Unicode בקידוד UTF-8, חוץ ממירכאות בודדות ('), מירכאות כפולות ("), לוכסנים הפוכים (\) ולוכסנים (/).

אחרי שיוצרים את shortName, אי אפשר לשנות אותו והוא חייב להיות ייחודי באותו מרחב שמות.

המסוף

כדי ליצור מפתח תג:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שבהם רוצים ליצור מפתח תג.

  3. לוחצים על Create.

  4. בתיבה Tag key, מזינים את השם המוצג של מפתח התג. הוא הופך לחלק מהשם של התג במרחב השמות.

  5. בתיבה Tag key description, מזינים תיאור של מפתח התג.

  6. בקטע Tag values, לוחצים על Predefined values כדי ליצור רשימה קבועה של ערכים מותרים.

  7. לוחצים על הוספת ערך לכל ערך שרוצים ליצור.

  8. בתיבה ערך התג, מזינים את השם המוצג של ערך התג. הוא הופך לחלק מהשם של התג במרחב השמות.

  9. בתיבה Tag value description, מזינים תיאור של ערך התג.

  10. כשמסיימים להוסיף ערכי תגים, לוחצים על Create tag key.

gcloud

כדי ליצור מפתח תג, משתמשים בפקודה gcloud resource-manager tags keys create:

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

כאשר:

  • ‫SHORT_NAME הוא השם המוצג של מפתח התג. לדוגמה: environment.

  • ‫RESOURCE_ID הוא המזהה של משאב הפרויקט או הארגון ההורה של מפתח התג הזה, לדוגמה: organizations/123456789012,‏ projects/test-project123 או projects/234567890123. במאמר יצירה וניהול של ארגונים מוסבר איך למצוא את מזהה הארגון. במאמר יצירה וניהול של פרויקטים מוסבר איך למצוא את מזהה הפרויקט.

אמורים לקבל תגובה שדומה לזו:

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

לפני שיוצרים מפתחות של תגים באמצעות Terraform, צריך להפעיל את Cloud Resource Manager API.

אפשר להשתמש במשאב google_tags_tag_key כדי ליצור מפתח תג.

resource "google_tags_tag_key" "key" {
  parent = "<var>RESOURCE</var>"
  short_name = "<var>KEY_SHORT_NAME</var>"
  description = "<var>DESCRIPTION</var>"
}

כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.

API

כדי ליצור מפתח תג, יוצרים ייצוג JSON של המפתח. בדף העזר בנושא TagKey תוכלו לקרוא על הפורמטים של מפתחות התגים.

לאחר מכן משתמשים ב-method‏ tagKeys.create:

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

תוכן בקשת JSON:

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

כאשר:

  • ‫SHORT_NAME הוא השם המוצג של מפתח התג. לדוגמה: environment.

  • ‫RESOURCE_ID הוא המזהה של משאב הפרויקט או הארגון ההורה של מפתח התג הזה, לדוגמה: organizations/123456789012,‏ projects/test-project123 או projects/234567890123. במאמר יצירה וניהול של ארגונים מוסבר איך למצוא את מזהה הארגון. במאמר יצירה וניהול של פרויקטים מוסבר איך למצוא את מזהה הפרויקט.

  • ‫DESCRIPTION הוא תיאור של המפתח, באורך של עד 256 תווים.

אחרי שיוצרים את המפתח, אפשר למצוא את השם הייחודי שקריא לאנשים ונקרא namespacedName, שנמצא במרחב השמות של משאב ההורה שלו, ואת המזהה הקבוע הייחודי ברמה הגלובלית שנקרא name.

יצירת מפתחות של תגים עם ערכי מפתחות דינמיים

כדי ליצור מפתחות תגים שתומכים בערכים דינמיים, אפשר להשתמש באחת מהשיטות הבאות:

המסוף

כדי ליצור מפתח תג:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שבהם רוצים ליצור מפתח תג.

  3. לוחצים על Create.

  4. בתיבה Tag key, מזינים את השם המוצג של מפתח התג. הוא הופך לחלק מהשם של התג במרחב השמות.

  5. בתיבה Tag key description, מזינים תיאור של מפתח התג.

  6. בקטע Tag values, לוחצים על ערכים דינמיים ואז על Add value constraints.

  7. מגדירים ביטוי רגולרי לאימות כדי לבדוק את הפורמט של ערכי תגים שנוצרו באופן דינמי. מותר להשתמש רק בערכים שתואמים לתבנית שאתם מספקים. כברירת מחדל, הביטוי הרגולרי תואם לכל הערכים, לדוגמה .*.

  8. אחרי שמגדירים את הביטוי הרגולרי לאימות, לוחצים על Create tag key.

gcloud

gcloud resource-manager tags keys create SHORT_NAME \
    --parent=RESOURCE_ID \
    --allowed-values-regex=VALID_REGEX

מחליפים את מה שכתוב בשדות הבאים:

  • ‫SHORT_NAME: השם המוצג של מפתח התג, לדוגמה: environment.

  • ‫RESOURCE_ID: המזהה של הארגון או של משאב הפרויקט ברמה שמעל למפתח התג הזה, לדוגמה: organizations/123456789012,‏ projects/test-project123 או projects/234567890123. במאמר יצירה וניהול של ארגונים מוסבר איך למצוא את מזהה הארגון. במאמר יצירה וניהול של פרויקטים מוסבר איך למצוא את מזהה הפרויקט.

  • ‫VALID_REGEX: ביטוי רגולרי בתחביר RE2 שמגדיר את הפורמט המותר לערכי תגים שמשויכים למפתח התג החדש שנוצר (רק כדי לאמת ערכים דינמיים). כדי לאפשר ציון של כל ערך, צריך להשתמש בביטוי הרגולרי .*.

אמורים לקבל תגובה שדומה לזו:

allowedValuesRegex: '[abc]'
name: tagKeys/123456789012
shortName: environment
namespacedName: 123456789012/environment
parent: organizations/123456789012

Terraform

לפני שיוצרים מפתחות של תגים באמצעות Terraform, צריך להפעיל את Cloud Resource Manager API.

אתם יכולים להשתמש במשאב google_tags_tag_key כדי ליצור מפתחות תגים שתומכים בערכים דינמיים.

resource "google_tags_tag_key" "key" {
  parent = "organizations/123456789"
  short_name = "keyname"
  description = "For keyname resources."
  allowed_values_regex = "^[a-z]+$"
}

כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.

מחליפים את מה שכתוב בשדות הבאים:

API

כדי ליצור מפתח תג שתומך בערכי תגים דינמיים, צריך ליצור ייצוג JSON של המפתח. בדף העזר בנושא TagKey תוכלו לקרוא על הפורמטים של מפתחות התגים.

לאחר מכן משתמשים ב-method‏ tagKeys.create:

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

תוכן בקשת JSON:

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

מחליפים את מה שכתוב בשדות הבאים:

  • ‫RESOURCE_ID: המזהה של הארגון או של משאב הפרויקט ברמה שמעל למפתח התג הזה. לדוגמה: organizations/123456789012, projects/test-project123 או projects/234567890123. במאמר יצירה וניהול של ארגונים מוסבר איך למצוא את מזהה הארגון. במאמר יצירה וניהול של פרויקטים מוסבר איך למצוא את מזהה הפרויקט.

  • ‫SHORT_NAME: השם המוצג של מפתח התג, לדוגמה: environment.

  • ‫DESCRIPTION: תיאור של המפתח, באורך של עד 256 תווים.

  • ‫VALID_REGEX: ביטוי רגולרי שמגדיר את הפורמט המותר לערכי התגים שמשויכים למפתח התג החדש שנוצר.

אחרי שיוצרים את המפתח, אפשר למצוא את השם הייחודי שקריא לאנשים ונקרא namespacedName, שנמצא במרחב השמות של משאב ההורה שלו, ואת המזהה הקבוע הייחודי שנקרא name.

הצגת מפתח תג

כדי למצוא מידע על מפתח תג מסוים, אתם יכולים להשתמש במזהה הקבוע או בשם של מרחב השמות שמוצג כשיוצרים אותו.

המסוף

כדי לראות תג שנוצר, מבצעים את הפעולות הבאות:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שמכיל את התג.

  3. כל התגים בארגון או בפרויקט שנבחרו מופיעים ברשימה. לוחצים על התג שרוצים לראות את המפתח שלו.

gcloud

כדי להציג את המידע שקשור למפתח תג מסוים, משתמשים בפקודה gcloud resource-manager tags keys describe:

gcloud resource-manager tags keys describe TAGKEY_NAME

‫TAGKEY_NAME הוא המזהה הקבוע או השם ממרחב השמות של מפתח התג שאת הפרטים שלו רוצים להציג, לדוגמה: tagKeys/123456789012 או project-id/environment.

אמורים לקבל תגובה שדומה לזו:

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

בתגים עם ערכים דינמיים, התגובה מכילה גם את השדה allowedValuesRegex, שבו מוצג הביטוי הרגולרי RE2 שמשמש לאימות של ערכי תגים דינמיים שהוזנו כשהתג הוחל על משאב.

API

כדי להציג את המידע שקשור למפתח תג מסוים, משתמשים ב-method‏ tagKeys.get:

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

‫TAGKEY_NAME הוא המזהה הקבוע של מפתח התג שאת המידע שלו רוצים להציג, לדוגמה: tagKeys/123456789012.

כדי להציג את המידע שקשור למפתח תג מסוים באמצעות השם שלו ממרחב השמות, משתמשים ב-method‏ tagKeys.getNamespaced:

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

‫TAGKEY_NAMESPACED_NAME הוא השם של מפתח התג במרחב השמות, בפורמט parentNamespace/tagKeyShortName.

בתגים עם ערכים דינמיים, התגובה מכילה גם את השדה allowedValuesRegex, שבו מוצג הביטוי הרגולרי RE2 שמשמש לאימות של ערכי תגים דינמיים שהוזנו כשהתג הוחל על משאב.

הוספת ערכים לתגים

אחרי שיוצרים מפתח תג, אפשר להוסיף ערכים מקובלים למפתח.

הערך shortName של התג צריך לעמוד בדרישות הבאות:

  • האורך המקסימלי של shortName הוא 256 תווים.

  • השדה shortName חייב להתחיל בתו אלפאנומרי.

  • ‫shortName יכול להכיל תווי Unicode בקידוד UTF-8, חוץ ממירכאות בודדות ('), מירכאות כפולות ("), לוכסנים הפוכים (\) ולוכסנים (/).

  • אי אפשר לשנות את הערך של shortName אחרי שיוצרים אותו, והוא חייב להיות ייחודי באותו מרחב שמות.

המסוף

כדי להוסיף ערך תג, מבצעים את הפעולות הבאות:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שבהם רוצים ליצור ערך תג.

  3. ברשימת התגים, לוחצים על התג שרוצים להוסיף לו ערך חדש.

  4. בקטע Tag values, לוחצים על Predefined values כדי ליצור רשימה קבועה של ערכים מותרים.

  5. לוחצים על הוספת ערך לכל ערך שרוצים ליצור.

  6. בתיבה ערך התג, מזינים את השם המוצג של ערך התג. הוא הופך לחלק מהשם של התג במרחב השמות.

  7. בתיבה Tag value description, מזינים תיאור של ערך התג.

  8. לוחצים על Save.

gcloud

כדי ליצור ערך תג, משתמשים בפקודה gcloud resource-manager tags values create. צריך לציין את המפתח שמתחתיו הערך הזה נוצר:

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

כאשר:

  • ‫TAGVALUE_SHORTNAME הוא השם המקוצר של ערך התג החדש, לדוגמה: production.

  • ‫TAGKEY_NAME הוא המזהה הקבוע או השם ממרחב השמות של מפתח התג ההורה, לדוגמה: 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.

בדוגמה הבאה נוצרים ערכי תגים בשמות prod ו-sales:

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"
}

כך מחילים את ההגדרות של Terraform בפרויקט ב- Google Cloud :

הכנת Cloud Shell

  1. מפעילים את Cloud Shell.
  2. מגדירים את פרויקט ברירת המחדל ב- Google Cloud שבו רוצים להחיל את ההגדרות של Terraform.

    תצטרכו להריץ את הפקודה הזו רק פעם אחת לכל פרויקט, ותוכלו לעשות זאת בכל ספרייה.

    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

    אופציונלי: תוכלו לכלול את האפשרות -upgrade, כדי להשתמש בגרסה העדכנית ביותר של הספק של Google:

    terraform init -upgrade

החלה של השינויים

  1. בודקים את ההגדרות ומוודאים שהמשאבים שמערכת Terraform תיצור או תעדכן תואמים לציפיות שלכם:
    terraform plan

    מתקנים את ההגדרות לפי הצורך.

  2. מריצים את הפקודה הבאה ומזינים yes בהודעה שמופיעה, כדי להחיל את הגדרות Terraform:
    terraform apply

    ממתינים עד שב-Terraform תוצג ההודעה "Apply complete!‎".

  3. פותחים את הפרויקט ב- Google Cloud כדי להציג את התוצאות. במסוף Google Cloud , נכנסים למשאבים בממשק המשתמש כדי לוודא שהם נוצרו או עודכנו ב-Terraform.

API

כדי ליצור ערך תג, יוצרים ייצוג JSON של הערך. בדף העזר בנושא TagValue תוכלו לקרוא על הפורמטים של ערכי התגים.

לאחר מכן, משתמשים ב-method‏ tagValues.create:

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

תוכן בקשת JSON:

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

כאשר:

  • ‫TAGKEY_NAME הוא המזהה הקבוע של מפתח התג ההורה, לדוגמה:tagKeys/4567890123.

  • SHORT_NAME הוא השם המוצג של ערך התג. לדוגמה: environment.

  • ‫DESCRIPTION הוא תיאור של הערך, והוא לא יכול להיות ארוך מ-256 תווים.

אחרי שיוצרים את הערך, אפשר למצוא את השם הייחודי שקריא לאנשים ונקרא namespacedName, שנמצא במרחב השמות של משאב ההורה שלו, ואת המזהה הקבוע הייחודי ברמה הגלובלית שנקרא name.

הוספת ערכי תגים למפתחות של תגים דינמיים

במפתחות של תגים שתומכים בערכי תגים דינמיים, צריך לציין את ערך התג כשמצרפים את התג למשאב. המערכת בודקת את הערך הדינמי מול הביטוי הרגולרי לאימות שמוגדר למפתח התג הזה. אם הערך שאתם מספקים לא תואם לביטוי הרגולרי שהגדרתם לאימות, תופיע הודעת שגיאה.

משאבים יורשים קישורים דינמיים של ערכי תגים ממשאבי ההורה שלהם.

שימו לב שמפתחות תגים שתומכים בערכי תגים דינמיים לא יכולים לכלול גם ערכי תגים מוגדרים מראש.

יצירת ערכי תגים היררכיים לתגי משילות מידע (data governance)

במפתחות של תגים שנוצרו באמצעות --purpose=DATA_GOVERNANCE, אפשר להגדיר ערכים היררכיים של תגים (ערכים של תגי צאצא שההורה שלהם הוא ערך של תג קיים).

כדי ליצור ערך תג צאצא באמצעות ה-CLI של gcloud, מציינים את מזהה ערך תג ההורה או את הנתיב של מרחב השמות בדגל --parent:

gcloud resource-manager tags values create CHILD_TAGVALUE_SHORTNAME \
    --parent=PARENT_TAGVALUE_ID_OR_PATH

כאשר:

  • ‫CHILD_TAGVALUE_SHORTNAME הוא השם המקוצר של ערך התג הצאצא, לדוגמה: confidential.

  • ‫PARENT_TAGVALUE_ID_OR_PATH הוא המזהה או הנתיב במרחב השמות של ערך התג ההורה, לדוגמה: tagValues/281478880204285 או my-project/my_key/my_value.

כדי להציג רשימה של ערכי תגים צאצאים מתחת לערך של תג הורה, משתמשים בפקודה:

gcloud resource-manager tags values list \
    --parent=PARENT_TAGVALUE_ID_OR_PATH

אחזור ערכים של תגים

כדי למצוא מידע על ערך תג מסוים, אתם יכולים להשתמש במזהה הקבוע או בשם של מרחב השמות שמוצג כשיוצרים אותו. ההגדרה הזו חלה רק על ערכי תגים מוגדרים מראש, ולא על ערכי תגים דינמיים.

המסוף

כדי לראות תג שנוצר, מבצעים את הפעולות הבאות:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שמכיל את התג.

  3. כל התגים שיצרתם בארגון או בפרויקט הזה מופיעים ברשימה. לוחצים על התג שרוצים לראות את הערכים שלו.

gcloud

כדי להציג את המידע שקשור לערך תג מסוים, משתמשים בפקודה gcloud resource-manager tags values describe:

gcloud resource-manager tags values describe TAGVALUE_NAME

‫TAGVALUE_NAME הוא המזהה הקבוע או השם של ערך התג במרחב השמות, לדוגמה: tagValues/4567890123 או 123456789012/environment/production.

אמורים לקבל תגובה שדומה לזו:

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

API

כדי להציג את המידע שקשור לערך תג מסוים, משתמשים ב-method‏ tagValues.get:

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

‫TAGVALUE_NAME: המזהה הקבוע של ערך התג, לדוגמה: tagValues/4567890123.

כדי להציג את המידע שקשור לערך תג מסוים באמצעות השם שלו במרחב השמות, משתמשים ב-method‏ tagValues.getNamespaced:

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

‫TAGVALUE_NAMESPACED_NAME הוא השם של ערך התג במרחב השמות, בפורמט parentNamespace/tagKeyShortName/tagValueShortName.

כשמפנים לתגים באמצעות Google Cloud CLI, אפשר להשתמש בשם של מרחב השמות או במזהה הקבוע של מפתחות וערכים של תגים. בקריאות ל-API, חוץ מ-getNamespaced, צריך להשתמש רק במזהה הקבוע. למידע נוסף על סוגי המזהים שבהם משתמשים בתגים, קראו את המאמר הגדרות ומזהים של תגים.

עדכון תגים קיימים

כדי לשנות תג קיים, אפשר לעדכן את המפתח או את הערכים שמשויכים אליו. אפשר לעדכן את התיאור של התג, אבל לא את השם המקוצר. בתגים עם ערכים דינמיים, אפשר לעדכן גם את התיאור וגם את הביטוי הרגולרי לאימות שמגדיר את הפורמט המותר לערכי התגים שמשויכים למפתח התג. שינויים בשדה allowed_values_regex לא חלים באופן רטרואקטיבי ולא משפיעים על קישורי התגים הקיימים של מפתח התג.

המסוף

כדי לעדכן את התיאור של מפתח תג:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שמכילים את מפתח התג.

  3. לוחצים על Actions ליד מפתח התג שרוצים לעדכן, ואז על View details.

  4. לוחצים על Edit ליד Description בחלק העליון של המסך.

  5. בוחרים באחת מהאפשרויות הבאות, בהתאם למה שרוצים לעדכן:

    • תיאור: לוחצים על עריכה לצד תיאור.
    • ביטוי רגולרי לאימות: לוחצים על עריכה לצד ביטוי רגולרי לאימות.
  6. בחלונית העריכה שנפתחת, מעדכנים את התיאור או מזינים את התבנית החדשה בשדה Allowed value regex.

  7. לוחצים על Save.

gcloud

כדי לשנות את התיאור של מפתח תג, משתמשים בפקודה gcloud resource-manager tags keys update:

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

כאשר:

  • ‫TAGKEY_NAME: המזהה הקבוע או השם של המפתח שרוצים לעדכן, כולל מרחב השמות, לדוגמה: tagKeys/123456789012.

  • ‫NEW_DESCRIPTION: מחרוזת של עד 256 תווים שתשמש כתיאור החדש.

אמורים לקבל תגובה שדומה לזו:

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

API

כדי לשנות תיאור של מפתח תג, משתמשים ב-method‏ tagKeys.patch:

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

תוכן בקשת JSON:

{
    "description": DESCRIPTION,
}

כאשר:

  • ‫TAGKEY_NAME הוא המזהה הקבוע של מפתח התג, לדוגמה: tagKeys/123456789012.

  • ‫DESCRIPTION הוא תיאור של המפתח, באורך של עד 256 תווים.

אפשר גם לשנות את התיאור של ערכי התגים.

המסוף

כדי לעדכן את התיאור של ערך תג:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שמכילים את ערך התג.

  3. לוחצים על Actions ליד מפתח התג של הערך שרוצים לעדכן, ואז לוחצים על View details.

  4. לוחצים על Actions לצד ערך התג שרוצים לעדכן, ואז לוחצים על View details.

  5. לוחצים על Edit ליד Description ועורכים את התיאור של ערך התג.

  6. לוחצים על Save.

gcloud

כדי לשנות את התיאור של ערך תג, משתמשים בפקודה gcloud resource-manager tags values update:

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

כאשר:

  • ‫TAGVALUE_NAME הוא המזהה הקבוע או השם במרחב השמות של ערך התג שרוצים לעדכן, לדוגמה: 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 הוא שם המזהה הקבוע של ערך התג, לדוגמה: tagValues/4567890123.

  • ‫DESCRIPTION הוא תיאור של המפתח, באורך של עד 256 תווים.

הצגת רשימה של מפתחות תגים

אתם יכולים להציג את כל מפתחות התגים שמשויכים למשאב מסוים של ארגון או פרויקט באמצעות מסוף Google Cloud , ה-CLI של gcloud או קריאה ל-API.

המסוף

כדי לראות את כל התגים:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שמכיל את התגים.

  3. כל התגים שיצרתם בארגון או בפרויקט הזה מופיעים ברשימה.

gcloud

כדי לקבל רשימה של כל מפתחות התגים שנוצרו בארגון או במשאב פרויקט, משתמשים בפקודה gcloud resource-manager tags keys list:

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

‫RESOURCE_ID הוא המזהה של הארגון או של משאב הפרויקט שרוצים למצוא את מפתחות התגים שמצורפים אליו.

  • צריך לציין את מזהה הארגון או מזהה הפרויקט בפורמט organizations/ORGANIZATION_ID או projects/PROJECT_NAME, לדוגמה: organizations/123456789012 ו-projects/test-project123. במאמר יצירה וניהול של ארגונים מוסבר איך מוצאים את מזהה הארגון. במאמר יצירה וניהול של פרויקטים מוסבר איך למצוא את מזהה הפרויקט. אמורים לקבל תגובה שדומה לזו:
NAME                     SHORT_NAME      DESCRIPTION
tagKeys/123456789012     environment     description of tag key

API

כדי להחזיר רשימה של כל מפתחות התגים של משאב מסוים, משתמשים ב-method ‏tagKeys.list, כשמשאב ההורה מצוין בשאילתה:

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

{
    "parent": "RESOURCE_ID"
}

‫RESOURCE_ID הוא המזהה של הארגון או של משאב הפרויקט שרוצים למצוא את מפתחות התגים שמצורפים אליו, לדוגמה: organizations/123456789012 ו-projects/test-project123.

ערכי תגים של רשימות

אפשר להציג את כל ערכי התגים שמשויכים למפתח תג מסוים באמצעות מסוףGoogle Cloud , ה-CLI של gcloud או באמצעות קריאה ל-API.

במפתחות של תגים שתומכים בערכים דינמיים, במסוף מוצג הביטוי הרגולרי לאימות שהמשתמש הגדיר, במקום רשימת ערכי התגים שנוצרו במפתח התג.

הפקודה של ה-CLI של gcloud ו-API בארכיטקטורת REST מאחזרים רק את ערכי התגים שהוגדרו מראש, ולא את ערכי התגים הדינמיים.

המסוף

כדי לראות את כל ערכי התגים שמצורפים למפתח תג:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שמכילים את מפתח התג.

  3. לוחצים על Actions ליד מפתח התג שמכיל את ערכי התגים שרוצים למצוא, ואז לוחצים על View details.

  4. כל ערכי התגים שיצרתם במפתח התג הזה מופיעים ברשימה. במפתחות של תגים דינמיים, במקום רשימה של ערכים נפרדים, תראו את הביטוי הרגולרי לאימות שהוגדר למפתח התג הזה.

gcloud

כדי להחזיר רשימה של כל ערכי התגים שמצורפים למפתח, משתמשים בפקודה gcloud resource-manager tags values list:

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

‫TAGKEY_NAME הוא המזהה הקבוע או השם במרחב השמות של מפתח התג שרוצים למצוא את הערכים שמצורפים אליו, לדוגמה: tagKeys/123456789012 או 1234567/environment.

אמורים לקבל תגובה שדומה לזו:

NAME                     SHORT_NAME
tagValues/123456789012   production

API

כדי להחזיר רשימה של כל ערכי התגים שמצורפים למפתח, משתמשים ב-method‏ tagValues.list, ומציינים בשאילתה את מפתח התג ההורה:

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

{
    "parent": "TAGKEY_NAME"
}

‫TAGKEY_NAME הוא שם המזהה הקבוע של מפתח התג, לדוגמה: tagKeys/123456789012.

ניהול הגישה לתגים

אתם יכולים לתת למשתמשים גישה ספציפית לניהול תגים ולצירוף ערכי תגים למשאבים באמצעות מסוף Google Cloud . בקטע ההרשאות הנדרשות מפורטים התפקידים שקשורים לתגים וההרשאות שהם כוללים.

מפתחות של תגים

כדי לנהל את הגישה של משתמשים למפתח תג:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שמכילים את מפתח התג שרוצים לנהל את הגישה אליו.

  3. לוחצים על תיבת הסימון לצד התג שרוצים לנהל את הגישה אליו.

  4. לוחצים על ניהול הגישה.

  5. כדי להוסיף תפקיד לחשבון ראשי, לוחצים על Add principal.

    1. בתיבת הטקסט New principals, מזינים את כתובת האימייל של חשבון המשתמש שרוצים להקצות לו תפקיד חדש.

    2. בוחרים תפקיד בתפריט הנפתח Select a role. כדי להוסיף יותר מתפקיד אחד, לוחצים על Add another role.

    3. לוחצים על Save.

  6. כדי לערוך תפקיד של חשבון ראשי, לוחצים על Edit ליד החשבון הראשי שרוצים לערוך.

    1. כדי לשנות את התפקידים שמוקצים לחשבונות הראשיים בתג הזה, לוחצים על התפריט הנפתח Role ובוחרים תפקיד חדש.

    2. כדי להוסיף עוד תפקידים, לוחצים על Add another role.

    3. כדי למחוק תפקיד מהחשבון הראשי בתג הזה, לוחצים על Delete role ליד התפקיד שרוצים למחוק.

    4. לוחצים על Save.

  7. כדי למחוק תפקיד של חשבון ראשי, לוחצים על Delete role ליד התפקיד שרוצים למחוק.

    1. לוחצים על הסרה.

ערכים של תגים

כדי לנהל את הגישה של משתמשים לערך של תג:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שמכילים את מפתח התג שרוצים לנהל את הגישה אליו.

  3. לוחצים על Actions ליד מפתח התג של הערך שרוצים לנהל את הגישה אליו, ואז לוחצים על View details.

  4. לוחצים על ניהול הגישה.

  5. כדי להוסיף תפקיד לחשבון ראשי, לוחצים על Add principal.

    1. בתיבת הטקסט New principals, מזינים את כתובת האימייל של חשבון המשתמש שרוצים להקצות לו תפקיד חדש.

    2. בוחרים תפקיד בתפריט הנפתח Select a role. כדי להוסיף יותר מתפקיד אחד, לוחצים על Add another role.

    3. לוחצים על Save.

  6. כדי לערוך תפקיד של חשבון ראשי, לוחצים על Edit ליד החשבון הראשי שרוצים לערוך.

    1. כדי לשנות את התפקידים שמוקצים לחשבונות הראשיים בתג הזה, לוחצים על התפריט הנפתח Role ובוחרים תפקיד חדש.

    2. כדי להוסיף עוד תפקידים, לוחצים על Add another role.

    3. כדי למחוק תפקיד מהחשבון הראשי בתג הזה, לוחצים על Delete role ליד התפקיד שרוצים למחוק.

    4. לוחצים על Save.

  7. כדי למחוק תפקיד של חשבון ראשי, לוחצים על Delete role ליד התפקיד שרוצים למחוק.

    1. לוחצים על הסרה.

הוספת תגים למשאבים

אחרי שיוצרים תג ונותנים גישה מתאימה לתג ולמשאב, אפשר לצרף את התג למשאב Google Cloud כצמד מפתח/ערך. אפשר לצרף רק ערך אחד לכל משאב של מַפְתח נתון. לדוגמה, אם מצרפים את environment: development, אי אפשר לצרף את environment: production או את environment: test. לכל משאב אפשר לצרף עד 50 צמדי מפתח/ערך.

כדי לצרף תגים למשאבים, יוצרים משאב של קישור בין תגים שמקשר את הערך למשאב ב- Google Cloud . תהליך העבודה הבא מתאר איך לצרף תג למשאב של ארגון, תיקייה או פרויקט. במאמר שירותים שתומכים בתגים מוסבר איך לצרף תגים לסוגים אחרים של משאבים.

המסוף

כדי לצרף תג למשאב של ארגון, תיקייה או פרויקט:

  1. פותחים את הדף Manage resources במסוף Google Cloud .

    לדף Manage resources

  2. לוחצים על הארגון, התיקייה או הפרויקט שאליהם רוצים לצרף תג.

  3. לוחצים על תגים.

  4. בחלונית תגים, לוחצים על בחירת היקף.

  5. בוחרים את הארגון או הפרויקט שמכיל את התגים ולוחצים על Open.

  6. בחלונית תגים, לוחצים על הוספת תג.

  7. בשדה Key, בוחרים מהרשימה את המפתח של התג שרוצים לצרף. אפשר לסנן את הרשימה על ידי הקלדת מילות מפתח.

  8. בתגים עם ערכים מוגדרים מראש, בוחרים את הערך שרוצים לצרף מהתפריט הנפתח Value. אפשר לסנן את הרשימה על ידי הקלדת מילות מפתח.

  9. בתגים עם ערכים דינמיים, מזינים מחרוזת שתואמת לביטוי הרגולרי לאימות שהוגדר למפתח התג הזה.

  10. אם רוצים לצרף עוד תגים, לוחצים על Add Tag ובוחרים את המפתח והערך לכל אחד מהם.

  11. לוחצים על Save.

  12. בתיבת הדו-שיח Confirm, לוחצים על Confirm כדי לצרף את התג.

  13. תופיע התראה שמאשרת שהתגים עודכנו. התגים החדשים מופיעים בעמודה Tags בדף Manage resources.

gcloud

כדי לצרף תג למשאב, צריך ליצור משאב של קישור בין תגים באמצעות הפקודה gcloud resource-manager tags bindings create:

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

כאשר:

  • ‫TAGVALUE_NAME הוא המזהה הקבוע או השם ממרחב השמות של ערך התג שרוצים לצרף, לדוגמה: tagValues/4567890123 או 12345678/environment/production. לתגים עם ערכים דינמיים, צריך לציין רק את השם במרחב השמות כי לערכי תגים דינמיים אין מזהה.

  • ‫RESOURCE_ID הוא המזהה המלא של המשאב, כולל שם הדומיין של ה-API כדי לזהות את סוג המשאב. למשאבים גלובליים כמו פרויקטים, צריך להשתמש ב-//cloudresourcemanager.googleapis.com/projects/ PROJECT_NUMBER. למשאבים של תחום מוגדר, כמו מכונות וירטואליות של Compute Engine, משתמשים ב-//compute.googleapis.com/projects/ PROJECT_NUMBER/zones/ ZONE/instances/ INSTANCE_ID. מידע נוסף זמין במאמר שמות מלאים של משאבים.

  • ‫LOCATION הוא המיקום של המשאב. במשאבים גלובליים (כמו תיקיות או פרויקטים) צריך להשמיט את הדגל הזה. במשאבים אזוריים (כמו רשתות משנה), מציינים את האזור (לדוגמה: us-central1). במשאבים של תחום מוגדר (כמו מכונות וירטואליות של Compute Engine), מציינים את התחום (לדוגמה: us-central1-a).

API

כדי לצרף תג למשאב, קודם צריך ליצור ייצוג JSON של קישור תג שכולל את המזהה הקבוע או את השם של ערך התג במרחב השמות, ואת המזהה הקבוע של המשאב. מידע נוסף על הפורמט של קישור תג מופיע בחומר העזר בנושא TagBinding.

אם אתם מצרפים את התג למשאב גלובלי כמו ארגון, השתמשו ב-method‏ tagBindings.create עם שם המארח של נקודת הקצה הגלובלית:

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

אם אתם מצרפים את התג למשאב אזורי או למשאב של תחום מוגדר (כמו מכונה וירטואלית של Compute Engine), השתמשו ב-method‏ tagBindings.create עם נקודת הקצה האזורית או של התחום המוגדר שבה נמצא המשאב (לדוגמה: https://us-central1-a-cloudresourcemanager.googleapis.com/v3/tagBindings).

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

תוכן בקשת JSON:

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

או

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

כאשר:

  • ‫RESOURCE_ID הוא המזהה המלא של המשאב, כולל שם הדומיין של ה-API כדי לזהות את סוג המשאב. למשאבים גלובליים כמו פרויקטים, צריך להשתמש ב-//cloudresourcemanager.googleapis.com/projects/ PROJECT_NUMBER. למשאבים של תחום מוגדר, כמו מכונות וירטואליות של Compute Engine, משתמשים ב-//compute.googleapis.com/projects/ PROJECT_NUMBER/zones/ ZONE/instances/ INSTANCE_ID. מידע נוסף זמין במאמר שמות מלאים של משאבים.

  • ‫TAGVALUE_NAME הוא המזהה הקבוע של ערך התג שמצורף, לדוגמה: tagValues/4567890123.

  • ‫TAGVALUE_NAMESPACED_NAME הוא השם של ערך התג המצורף במרחב השמות, בפורמט: parentNamespace/tagKeyShortName/tagValueShortName. אפשר לצרף תגים עם ערכים דינמיים רק באמצעות שם ממרחב השמות, כי לערכי תגים דינמיים אין מזהה.

שינוי תגים במשאבים

אתם יכולים לבצע פעולות בכמות גדולה כדי לשנות תגים בדרכים הבאות:

  • ניקוי כל קישורי התגים: הסרת כל קישורי התגים הקיימים מהמשאב.
  • החלפת קישורי תגים: החלפת כל קישורי התגים הקיימים במשאב בקבוצה חדשה של צמדי מפתח/ערך.
  • הסרת קישורי תגים: הסרת קישורי תגים ספציפיים מהמשאב.

כדי לנקות, להחליף ולהסיר קישורי תגים, אתם יכולים להשתמש בפקודה gcloud alpha resource-manager tags bindings update ב-CLI של gcloud או ב-method‏ locations.tagBindingCollections.patch אם אתם משתמשים ב-API.

באמצעות ה-CLI של gcloud

ב-CLI של gcloud יש את האפשרויות הבאות לשינוי קישורי תגים:

הסרת כל התגים ממשאב

כדי להסיר את כל התגים ממשאב, משתמשים בדגל --clear-tags עם הפקודה gcloud alpha resource-manager tags bindings update.

gcloud

gcloud alpha resource-manager tags bindings update \
    --resource-name=RESOURCE_NAME \
    --clear-tags

מחליפים את RESOURCE_NAME בשם המלא של המשאב.

הסרת תגים ספציפיים ממשאב

כדי להסיר תגים ספציפיים ממשאב, משתמשים בדגל --remove-tags עם הפקודה 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

מחליפים את מה שכתוב בשדות הבאים:

  • ‫RESOURCE_NAME: שם המשאב המלא של קישור התג שרוצים להסיר.
  • ‫TAG_KEY_NAMESPACED_NAME: השם ממרחב השמות של מפתח התג (לדוגמה, 123456789012/environment או my-project-123/cost-center).

אפשר לציין כמה שמות ממרחב השמות של מפתחות התגים ברשימה מופרדת בפסיקים. לדוגמה: --remove-tags=123456789012/environment,my-project-123/cost-center.

החלפת תגים

כדי להחליף את כל קישורי התגים הקיימים במשאב בצמדי מפתח/ערך חדשים, משתמשים בדגל --replace-tags עם הפקודה 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

מחליפים את מה שכתוב בשדות הבאים:

  • ‫RESOURCE_NAME: שם המשאב המלא של המשאב.
  • ‫TAG_KEY_NAMESPACED_NAME: השם ממרחב השמות של מפתח התג (לדוגמה, 123456789012/environment או my-project-123/cost-center).
  • ‫TAG_VALUE_SHORT_NAME: השם המקוצר של ערך התג.

אפשר לציין כמה צמדי מפתח/ערך ברשימה מופרדת בפסיקים. לדוגמה: --replace-tags=123456789012/environment=dev,my-project-123/cost-center=frontend.

שימוש ב-API

גוף הבקשה של השיטה locations.tagBindingCollections.patch מקבל אובייקט JSON שמייצג את מפת התגים, שבה המפתחות והערכים הם מחרוזות. ה-API משתמש במפה הזו כדי לבצע את כל הפעולות של התגים, כולל ניקוי, החלפה והסרה, כפעולה אחת בכמות גדולה. ה-API תומך רק בסמנטיקה של PUT. כששולחים בקשה, ה-API מחליף את כל הקישורים הנוכחיים שמצורפים למשאב בקבוצה החדשה של הקישורים שסופקו במפת הבקשה.

כששולחים מפת תגים ל-API, ה-API מעבד אותה בהתאם לתגים הנוכחיים של המשאב, באופן הבא:

  • ניקוי: שליחת מפת תגים ריקה ({}) מסירה את כל קישורי התגים הקיימים מהמשאב.
  • הסרה: כל צמד מפתח/ערך קיים במשאב שלא נכלל במפת התגים שסיפקתם יוסר.
  • החלפה: מפת תגים לא ריקה מחליפה את כל התגים הקיימים במשאב בתגים החדשים שאתם מספקים.

הצגת רשימה של כל התגים שמצורפים למשאב

אתם יכולים לקבל רשימה של כל התגים שמצורפים למשאב, בין אם הם עברו בירושה ובין אם הם מצורפים ישירות.

המסוף

כדי לראות את כל התגים שמצורפים למשאב או עוברים אליו בירושה:

  1. פותחים את הדף Manage resources במסוף Google Cloud .

    לדף Manage resources

  2. ברשימת המשאבים, מוצאים את הארגון, התיקייה או הפרויקט.

  3. התגים שמצורפים למשאב מופיעים בעמודה Tags. תגים שעוברים בירושה יסומנו כ-Inherited.

gcloud

כדי לקבל רשימה של קישורי תגים שמצורפים ישירות למשאב, משתמשים בפקודה gcloud resource-manager tags bindings list. אם מוסיפים את הדגל --effective, תוחזר גם רשימה של תגים שהמשאב הזה ירש.

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

כאשר:

  • ‫RESOURCE_ID הוא המזהה המלא של המשאב, לדוגמה: //cloudresourcemanager.googleapis.com/projects/7890123456

  • ‫LOCATION הוא המיקום של המשאב. במשאבים גלובליים (כמו תיקיות או פרויקטים) צריך להשמיט את הדגל הזה. למשאבים אזוריים או של תחום מוגדר (כמו מכונה וירטואלית של Compute Engine), מציינים את המיקום, לדוגמה: us-central1-a.

אמורים לקבל תגובה שדומה לזו:

לתגים מוגדרים מראש:

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

בתגים עם ערכים דינמיים:

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

בתגים עם ערכים דינמיים, השדה tagValue לא מופיע בתגובה, ורק השדה tagValueNamespacedName מאוכלס.

אם מוסיפים את הדגל --effective לפקודה tags bindings list, מוחזרת גם רשימה של כל התגים שהמשאב הזה ירש. אמורים לקבל תגובה שדומה לזו:

לתגים מוגדרים מראש:

inherited: true
namespacedTagKey: 433637338589/environment
namespacedTagValue: 433637338589/environment/production
tagKey: tagKeys/162008917964
tagKeyParentName: organizations/433637338589
tagValue: tagValues/281482214193975

בתגים עם ערכים דינמיים:

inherited: true
namespacedTagKey: my-sample-org/dynamic-key
namespacedTagValue: my-sample-org/dynamic-key/staging
tagKey: tagKeys/281476834141096
tagKeyParentName: projects/357710452272

אם כל התגים שהוערכו במשאב מצורפים ישירות, השדה inherited הוא false ויושמט.

API

כדי לקבל רשימה של קישורי תגים שמצורפים ישירות למשאב גלובלי כמו ארגון, משתמשים ב-method‏ tagBindings.list ומציינים את משאב ההורה בשאילתה:

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

{
    "parent": "RESOURCE_ID"
}

כדי להציג רשימה של קישורי התגים שמצורפים למשאב אזורי או למשאב של תחום מוגדר, כמו מכונה וירטואלית של Compute Engine, צריך להשתמש ב-method‏ tagBindings.list עם נקודת הקצה האזורית או של התחום המוגדר שבה נמצא המשאב.

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

{
    "parent": "RESOURCE_ID"
}

כדי להציג רשימה של התגים בפועל (כולל תגים שעברו בירושה) שמצורפים למשאב, משתמשים ב-method‏ effectiveTags.list:

GET https://cloudresourcemanager.googleapis.com/v3/effectiveTags?parent=RESOURCE_ID

כאשר:

  • ‫RESOURCE_ID הוא המזהה המלא של המשאב, לדוגמה: //cloudresourcemanager.googleapis.com/projects/7890123456.

  • ‫LOCATION היא נקודת הקצה האזורית של המשאב, לדוגמה: us-central1.

אם הפעולה בוצעה ללא שגיאות, גוף התגובה אמור לכלול רשימה של אובייקטים מסוג TagBinding. לדוגמה:

name: tagBindings/cloudresourcemanager.googleapis.com/projects/7890123456/567890123456
tagValue: tagValues/567890123456
tagValueNamespacedName: example-org/cost-center/1000
resource: //cloudresourcemanager.googleapis.com/projects/7890123456

בתגים עם ערכים דינמיים, השדה tagValue לא מופיע בתגובה, ורק השדה tagValueNamespacedName מאוכלס.

ניתוק תג ממשאב

כדי לנתק תג ממשאב, צריך למחוק את המשאב של קישור התג.

המסוף

כדי לנתק תג ממשאב של ארגון, תיקייה או פרויקט:

  1. פותחים את הדף Manage resources במסוף Google Cloud .

    לדף Manage resources

  2. לוחצים על הארגון, התיקייה או הפרויקט שמהם רוצים לנתק את התג.

  3. לוחצים על תגים.

  4. בחלונית Tags, לצד התג שרוצים לנתק, לוחצים על Delete item.

  5. לוחצים על Save.

  6. בתיבת הדו-שיח Confirm, לוחצים על Confirm כדי לנתק את התג.

  7. תופיע התראה שמאשרת שהתגים עודכנו. רשימת התגים המעודכנת מופיעה בעמודה Tags בדף Manage resources.

gcloud

כדי למחוק קישור של תג, משתמשים בפקודה gcloud resource-manager tags bindings delete:

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

כאשר:

  • ‫TAGVALUE_NAME הוא המזהה הקבוע או השם ממרחב השמות של ערך התג שמצורף, לדוגמה: tagValues/567890123456. לתגים עם ערכים דינמיים, צריך לציין רק את השם במרחב השמות כי לערכי תגים דינמיים אין מזהה.

  • ‫RESOURCE_ID הוא המזהה המלא של המשאב. לדוגמה: //cloudresourcemanager.googleapis.com/projects/7890123456

  • ‫LOCATION הוא המיקום של המשאב. אם אתם מוחקים קישור של תג שמצורף למשאב גלובלי, כמו תיקייה או פרויקט, אתם צריכים להשמיט את הדגל הזה. אם אתם מוחקים קישור של תג שמצורף למשאב אזורי, כמו מכונה של Compute Engine, אתם צריכים לציין את המיקום. לדוגמה: us-central1.

API

כדי למחוק קישור תג שמצורף למשאב גלובלי כמו ארגון, משתמשים ב-method‏ tagBindings.delete:

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

כדי למחוק קישור של תג שמצורף למשאב אזורי, כמו מכונה של Compute Engine, צריך להשתמש ב-method‏ tagBindings.delete עם נקודת הקצה האזורית שבה נמצא המשאב.

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

כאשר:

  • ‫TAGBINDINGS_NAME הוא המזהה הקבוע של TagBinding. הפורמט של תגים מוגדרים מראש הוא tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F1234567890/tagValues/567890123456. בתגים עם ערכים דינמיים, הפורמט הוא tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F1234567890/tagKeys/12345678.

  • ‫LOCATION היא נקודת הקצה האזורית של המשאב, לדוגמה: us-central1.

אכיפת תגי חובה במשאבים

כדי לאכוף תגי חובה על משאבים, יוצרים מדיניות ארגון בהתאמה אישית ומגדירים את המדיניות במשאב של ארגון, תיקייה או פרויקט כדי לאכוף את האילוץ בהתאמה אישית.

למידע נוסף על אכיפת תגים, קראו את המאמר אכיפת תגי חובה באמצעות מדיניות הארגון.

הגדרת אילוץ בהתאמה אישית לאכיפת תגים

המסוף

  1. במסוף Google Cloud , נכנסים לדף מדיניות הארגון.

    כניסה לדף Organization policies

  2. לוחצים על הכלי לבחירת פרויקטים בחלק העליון של הדף.

  3. בכלי לבחירת פרויקטים, בוחרים את הארגון שבו רוצים לאכוף את האילוץ המותאם אישית.

  4. מגדירים אילוץ בהתאמה אישית עם הפרמטרים הבאים:

    • שיטת האכיפה: Govern tags
    • ‫Resource type: השם המלא של משאב ה-REST ב- Google Cloudשאתם רוצים לאכוף עליו תגי חובה, לדוגמה: file.googleapis.com/Instance
    • תנאי: תנאי של Common Expression Language‏ (CEL) שמציין את מפתחות התגים שרוצים לאכוף על המשאב, לדוגמה resource.hasDirectTagKey("1234567890/owner") כדי לאכוף קישור תג למפתח התג 1234567890/owner. הפונקציה resource.hasDirectTagKey ב-CEL מתאימה רק לתגים שהוחלו ישירות על משאב, ולא מתייחסת לתגים שעברו בירושה מאבות קדמונים בהיררכיית המשאבים.
    • פעולה: Allow או Deny.
      • ‫Allow: אם התנאי שצוין מתקיים, מותר ליצור או לעדכן את המשאב.
      • דחייה: אם התנאי שצוין מתקיים, הפעולה ליצירה או לעדכון של המשאב נחסמת.
  5. לוחצים על Create constraint.

gcloud

יוצרים קובץ YAML לאילוץ בהתאמה אישית:

name: organizations/ORGANIZATION_ID/customConstraints/CONSTRAINT_NAME
resourceTypes:
- RESOURCE_NAME
methodTypes:
- GOVERN_TAGS
condition: "CONDITION"
actionType: ACTION
displayName: DISPLAY_NAME
description: DESCRIPTION

מחליפים את מה שכתוב בשדות הבאים:

  • ‫ORGANIZATION_ID: מזהה הארגון, למשל 1234567890.

  • ‫CONSTRAINT_NAME: השם שרוצים לתת לאילוץ המותאם אישית החדש. אילוץ בהתאמה אישית חייב להתחיל ב-custom., ויכול לכלול רק אותיות רישיות, אותיות קטנות או מספרים, לדוגמה, custom.enforceMandatoryTags.

  • ‫RESOURCE_NAME: השם המלא של משאב ה-REST שרוצים לאכוף עליו תגי חובה, לדוגמה file.googleapis.com/Instance.Google Cloud

  • ‫CONDITION: תנאי של Common Expression Language ‏ (CEL) שמציין את מפתחות התגים שרוצים לאכוף על המשאב, לדוגמה resource.hasDirectTagKey("1234567890/owner") כדי לאכוף קישור תג למפתח התג 1234567890/owner.

  • ‫ACTION: הפעולה שצריך לבצע אם מתקיים התנאי condition. הערך יכול להיות ALLOW או DENY.

    פעולת הדחייה פירושה שאם התנאי שצוין מתקיים, הפעולה ליצירה או לעדכון של המשאב נחסמת.

    פעולת ההרשאה מאפשרת ליצור או לעדכן את המשאב אם התנאי שצוין מתקיים. זה גם אומר שכל מקרה אחר, מלבד המקרה שמופיע במפורש בתנאי, נחסם.

  • ‫DISPLAY_NAME: שם קריא לאנשים של האילוץ. האורך המקסימלי של השדה הזה הוא 200 תווים.

  • ‫DESCRIPTION: תיאור קריא של האילוץ, שיוצג כהודעת שגיאה במקרה של הפרת המדיניות. האורך המקסימלי של השדה הזה הוא 2,000 תווים.

מגדירים את האילוץ המותאם אישית כדי שיהיה זמין למדיניות הארגון.

אחרי שמגדירים את האילוץ המותאם אישית, אפשר לבדוק ולנתח את השינויים במדיניות הארגון ולאכוף את האילוץ.

הגנה על ערכי תגים באמצעות החזקות של תגים

החזקת תג היא משאב שאפשר ליצור כדי להגן על ערך תג מפני מחיקה. אם לערך של תג יש החזקה, המשתמשים לא יכולים למחוק אותו אלא אם הם מוחקים קודם את ההחזקה.

אי אפשר להחיל החזקות של תגים על ערכי תגים דינמיים.

יצירת תוויות להחזקה לצורך משפטי

אתם יכולים ליצור באופן ידני החזקת תג באמצעות ה-CLI של gcloud או ה-API.

gcloud

כדי ליצור החזקה של תג, משתמשים בפקודה gcloud resource-manager tags holds create ב-CLI של gcloud:

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

כאשר:

  • ‫TAGVALUE_NAME הוא המזהה הקבוע או השם במרחב השמות של ערך התג שצריך ליצור בשבילו את החזקת התג, לדוגמה: tagValues/567890123456.

  • ‫HOLDER_NAME הוא שם המשאב שאליו מצורף ערך התג. מספר התווים צריך להיות קטן מ-200.

  • ‫LOCATION הוא המיקום של המשאב. אם אתם יוצרים נעילת תג למשאב גלובלי, כמו פרויקט ב-Google Cloud , אתם צריכים להשמיט את הדגל הזה. אם אתם יוצרים החזקת תג למשאב אזורי או למשאב של תחום מוגדר, אתם צריכים לציין את המיקום, לדוגמה: us-central1.

API

כדי ליצור החזקה של ערך תג, קודם צריך ליצור ייצוג JSON של החזקת התג. הפניית ה-JSON הזו חייבת לכלול הפניה למשאב שאליו מצורף ערך התג. מידע נוסף על הפורמט של החזקת תג מופיע בחומר העזר בנושא TagHolds.

אם אתם יוצרים החזקת תג לערך תג שמצורף למשאב גלובלי כמו ארגון, השתמשו ב-method‏ tagHolds.create עם שם המארח של נקודת הקצה הגלובלית:

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

אם אתם יוצרים השהיית תג לערך תג שמצורף למשאב אזורי, כמו מכונה של Compute Engine, השתמשו ב-method‏ tagHolds.create עם נקודת הקצה האזורית שבה נמצא המשאב.

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

תוכן בקשת JSON:

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

כאשר:

  • ‫TAGVALUE_NAME הוא המזהה הקבוע של ערך התג שמצורף, לדוגמה: tagValues/4567890123.

  • ‫HOLDER_NAME הוא שם המשאב שאליו מצורף ערך התג. מספר התווים צריך להיות קטן מ-200.

  • ‫ORIGIN_NAME היא מחרוזת אופציונלית שמייצגת את מקור הבקשה. השדה הזה צריך לכלול מידע שניתן להבין כדי להבחין בין המקורות השונים. השם צריך להכיל פחות מ-200 תווים.

הצגת רשימה של החזקות תגים

אתם יכולים להציג את כל השהיות התגים בערך תג מסוים באמצעות ה-CLI של gcloud או ה-API.

gcloud

כדי להציג רשימה של החזקות תגים שנמצאות מתחת לערך תג, משתמשים בפקודה gcloud resource-manager tags holds list ב-CLI של gcloud:

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

כאשר:

  • ‫TAGVALUE_NAME הוא המזהה הקבוע או השם ממרחב השמות של ערך התג, לדוגמה: tagValues/567890123456.

  • ‫LOCATION הוא המיקום של המשאב. אם אתם מחפשים החזקות של תגים שנוצרו באופן גלובלי, אתם צריכים להשמיט את הדגל הזה. אם אתם מחפשים השהיות של תגים במשאב אזורי או במשאב של תחום מוגדר, אתם צריכים לציין את המיקום, לדוגמה: us-central1.

API

כדי לקבל רשימה של השהיות תגים בערך תג, משתמשים ב-method‏ tagHolds GET ומציינים את ערך תג ההורה בכתובת ה-URL:

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

כאשר:

  • ‫TAGVALUE_NAME הוא המזהה הקבוע או השם ממרחב השמות של ערך התג, לדוגמה: tagValues/567890123456.

הסרת השהיות של תגים

אפשר להסיר השהיות של תגים שנוצרו בערך תג מסוים באמצעות ה-CLI של gcloud או ה-API.

חלק מהמשאבים מוסיפים החזקות של תגים לערך של תג שמצורף לאותו משאב. אם תצרפו תג למשאב כזה, המשאב ייצור החזקת תג שתמנע מהמשתמשים למחוק את ערך התג המצורף.

אפשר למחוק החזקת תג באמצעות ה-CLI של gcloud או ה-API.

gcloud

כדי למחוק החזקת תג, משתמשים בפקודה gcloud resource-manager tags holds delete ב-CLI של gcloud:

  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

כדי למחוק ערך של תג, משתמשים ב-method‏ tagHolds.delete:

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

כאשר:

  • ‫TAGVALUE_NAME הוא המזהה הקבוע של ערך התג שאליו מצורפת ההחזקה של התג שרוצים למחוק, לדוגמה: tagValues/567890123456.

  • ‫TAGHOLD_NAME הוא השם של מרחב השמות של התג שרוצים למחוק, שאפשר למצוא באמצעות הפקודה list. לדוגמה: tagValues/1012910994523/tagHolds/d1c8f5e2-2954-43d6-8f46-5f812ab48c37.

מחיקת תגים

כדי למחוק תג, צריך למחוק כל אחד מהרכיבים שמגדירים אותו. קודם כל, צריך למחוק את כל הקישורים שמחברים את התג למשאבים בהיררכיה. הוראות למחיקת קישורי תגים מופיעות במאמר ניתוק תג ממשאב.

אם התג משמש משאב אחר, או שמשתמש יצר באופן ידני החזקה של תג, יכול להיות שתצטרכו להסיר את ההחזקות של התג וגם למחוק את הקישורים של התג לפני שתוכלו למחוק את ערכי התג. מידע נוסף על הסרת החזקות של תגים זמין במאמר הסרת החזקות של תגים.

אחרי שאין יותר קישורי תגים לערכי התגים שרוצים למחוק, אפשר למחוק את הערכים.

המסוף

כדי למחוק ערך של תג:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שמכילים את ערך התג.

  3. לוחצים על Actions ליד מפתח התג שמכיל את ערך התג שרוצים למחוק, ואז על View details.

  4. ברשימת ערכי התגים שמשויכים למפתח התג הזה, לוחצים על ערך התג שרוצים למחוק.

  5. מסמנים את התיבה לצד ערך התג שרוצים למחוק ולוחצים על Delete values.

  6. לוחצים על אישור.

gcloud

כדי למחוק ערך של תג, משתמשים בפקודה gcloud resource-manager tag values delete:

gcloud resource-manager tags values delete TAGVALUE_NAME

‫TAGVALUE_NAME הוא המזהה הקבוע או השם במרחב השמות של ערך התג שרוצים למחוק, לדוגמה: tagValues/567890123456.

API

כדי למחוק ערך של תג, משתמשים ב-method‏ tagValues.delete:

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

‫TAGVALUE_NAME הוא המזהה הקבוע של ערך התג שרוצים למחוק, לדוגמה: tagValues/567890123456.

אחרי שמוחקים את כל ערכי התגים שמשויכים למפתח, אפשר למחוק את המפתח. בתגים עם ערכים דינמיים, צריך למחוק את כל הקישורים המשויכים לפני שאפשר למחוק את מפתח התג.

המסוף

כדי למחוק מפתח תג:

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. בבורר ההיקף שבחלק העליון של הדף, בוחרים את הארגון או הפרויקט שמכילים את מפתח התג.

  3. לוחצים על תיבת הסימון לצד מפתח התג שרוצים למחוק.

  4. לוחצים על מחיקת תגים.

  5. לוחצים על אישור.

gcloud

כדי למחוק מפתח תג, משתמשים בפקודה gcloud resource-manager tags keys delete:

gcloud resource-manager tags keys delete TAGKEYS_NAME

‫TAGKEYS_NAME הוא המזהה הקבוע או השם ממרחב השמות של מפתח התג שרוצים למחוק, לדוגמה: tagKeys/123456789012.

API

כדי למחוק מפתח תג, משתמשים ב-method‏ tagKeys.delete:

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

‫TAGKEYS_NAME הוא המזהה הקבוע של מפתח התג שרוצים למחוק, לדוגמה: tagKeys/123456789012.

כללי מדיניות ותגים

אתם יכולים להשתמש בתגים עם כללי מדיניות שתומכים בהם כדי לאכוף את כללי המדיניות האלה באופן מותנה. אתם יכולים להגדיר את הנוכחות או ההיעדרות של ערך תג כתנאי למדיניות הזו.

לדוגמה, אתם יכולים להתנות את מתן התפקידים בניהול הזהויות והרשאות הגישה (IAM) בהתאם לתגים.

תנאים ותגים של ניהול זהויות והרשאות גישה (IAM)

אתם יכולים להשתמש בתגים ובתנאים של ניהול הזהויות והרשאות הגישה כדי להקצות תפקידים למשתמשים בהיררכיה באופן מותנה. בתהליך הזה, המשאבים לא נגישים למשתמשים עד שמצרפים תג שמשויך למדיניות מותנית. לדוגמה, יכול להיות שתרצו לדרוש מהמפתחים להקצות מרכז עלויות למשאב לפני שהם יוכלו להשתמש בו.

  1. יוצרים תג שאפשר להשתמש בו כדי לשייך משאבים למשהו שיזהה אם הוחלה על המשאבים משילות מתאימה. לדוגמה, אתם יכולים ליצור תג עם המפתח costCenter והערכים 0001,‏ 0002 וכו', כדי לשייך את המשאבים למרכזי העלות השונים בחברה.

  2. יוצרים תפקיד בהתאמה אישית ברמת הארגון, שמאפשר למשתמשים להוסיף תגים למשאבים שבהם נדרשים תגים. כך נותנים את ההרשאות האלה לחשבונות המשתמשים שצוינו בכל מקום בארגון.

    לדוגמה, תפקיד בהתאמה אישית שמאפשר למשתמשים להוסיף תגים לפרויקטים יכלול את ההרשאות הבאות:

    • resourcemanager.projects.get
    • resourcemanager.hierarchyNodes.create
    • resourcemanager.hierarchyNodes.delete
    • resourcemanager.hierarchyNodes.list
  3. כשיוצרים פרויקטים למפתחים, מקצים להם את התפקיד הזה בהתאמה אישית בפרויקט.

  4. מקצים למפתחים תפקידים אחרים שכוללים את ההרשאות לביצוע הפעולות הרצויות בפרויקט. כשמקצים למשתמשים תפקידים בפרויקט, תמיד צריך להקצות את התפקידים באופן מותנה כדי לדרוש את צירוף התג costCenter.

    resource.hasTagKey('123456789012/costCenter')
    

כדי להקצות תפקידי IAM באופן מותנה באמצעות תגים במסוףGoogle Cloud :

  1. פותחים את הדף IAM במסוף Google Cloud .

    פתיחת הדף IAM

  2. לוחצים על Grant Access (או על Edit principal לצד חשבון משתמש קיים).

  3. בשדה New principals, מזינים את כתובת האימייל של החשבון הראשי.

  4. בתפריט הנפתח Select a role, בוחרים את התפקיד שרוצים להקצות.

  5. לוחצים על Add IAM condition.

  6. בשדה Title, נותנים שם לתנאי.

  7. בכלי להגדרת תנאים, בקטע Condition type בוחרים באפשרות Resource > Tag.

  8. מזינים את מפתח התג ואת ערך התג במרחב השמות (או בוחרים מהרשימה).

  9. לוחצים על Save כדי להחיל את התנאי, ואז לוחצים על Save כדי לשמור את קישור התפקיד.

לדוגמה, בארגון עם כמה צוותי הנדסה (team-a ו-team-b), כל צוות מנהל משאבים בסביבות development ו-production. אפשר לצרף את environment: development לתיקיות ולפרויקטים של פיתוח, ואת environment: production לתיקיות ולפרויקטים של ייצור. לאחר מכן, מקצים לחברים ב-team-a את התפקיד "מפתח" באופן מותנה במשאבים שמתויגים בתג environment: development (באמצעות resource.matchTag('123456789012/environment', 'development')). כך מבטיחים שלמפתחים תהיה גישת כתיבה בסביבת הפיתוח, אבל הגישה לסביבת הייצור תוגבל למהנדסי תפעול ייעודיים.

עכשיו, בכל פעם שנוצר פרויקט, המפתחים צריכים לצרף אליו את התג costCenter כדי שיוכלו לבצע בו את הפעולות שניתנו על ידי מדיניות ההרשאה.

מדיניות הארגון ותגים

אתם יכולים להשתמש בתגים ובאכיפה מותנית של מדיניות הארגון כדי לשלוט באופן ריכוזי במשאבים בהיררכיה. מידע נוסף זמין במאמר הגדרת מדיניות ארגונית באמצעות תגים.

תגי מערכת

תגי מערכת הם תגים שמנוהלים על ידי Google, ושירותי Google Cloud יכולים לקשר למשאבים. אפשר לראות את תגי המערכת האלה ולהשתמש בהם כמו בכל קישור תג אחר במשאב, אבל אי אפשר לערוך או להסיר אותם מהמשאב. למפתחות של תגי מערכת יש את הקידומת system: בשם המקוצר שלהם, והם מנוהלים במרחב שמות של תגים שמתחיל בקידומת google.

מפתח התג (שם במרחב השמות) ערכים של תגים תיאור
google/system:sdp-data-sensitivity HIGH, MODERATE, LOW, UNKNOWN אפשר להגדיר את שירות Sensitive Data Protection כך שיצרף באופן אוטומטי תגים למשאבים שהוא יוצר להם פרופיל, כדי לציין את רמת הרגישות של הנתונים שהתגלו במשאב. מידע נוסף זמין במאמר הפעלת התיוג האוטומטי בהגדרות הגילוי.
google:AppHub/environment PRODUCTION, STAGING, TEST, DEVELOPMENT תגים סמנטיים של המערכת ([גרסת טרום-השקה (Preview)](https://cloud.google.com/products#product-launch-stages)) שמשוכפלים אוטומטית מ-App Hub למאפיין הסביבה.
google:AppHub/criticality MISSION_CRITICAL, HIGH, MEDIUM, LOW תגים סמנטיים של המערכת ([גרסת טרום-השקה (Preview)](https://cloud.google.com/products#product-launch-stages)) שמשוכפלים אוטומטית מ-App Hub למאפיין הקריטיות.

הצגה וניהול של תגים סמנטיים

אתם יכולים להציג ולפרט סמנטיקה ספציפית שמסונכרנת מ-App Hub.

הצגת התגים הסמנטיים המסונכרנים

כדי לוודא שהמאפיינים של App Hub הופצו כתגי סמנטיקה של המערכת לקריאה בלבד למשאבים הבסיסיים, אתם יכולים להשתמש בשיטה הבאה.

gcloud

כדי לראות את הקישורים במשאב הבסיסי (לדוגמה, MIG או משימה ב-Cloud Run), משתמשים בפקודה gcloud resource-manager tags bindings list:

gcloud resource-manager tags bindings list \
    --parent=//API_DOMAIN/projects/PROJECT_NUMBER/... \
    --location=LOCATION

פלט לדוגמה שבו מוצגים תגי המערכת של 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
---

אחזור הסמנטיקה של המשאב

כדי לאחזר מיפויים סמנטיים מוסמכים שמשויכים למשאב, משתמשים בשיטה הבאה. כדי לאחזר את הסמנטיקה של המשאב, ה-API משתמש בהרשאת ה-IAM הקיימת <var>RESOURCE</var>.listEffectiveTags שספציפית למשאב.

gcloud

כדי לראות את המיפויים הסמנטיים שבתוקף (לדוגמה, כדי לאשר את ENVIRONMENT:STAGING או את CRITICALITY:LOW), משתמשים בפקודה gcloud alpha resource-manager tags semantics list:

gcloud alpha resource-manager tags semantics list \
    --parent=//API_DOMAIN/projects/PROJECT_NUMBER/... \
    --location=LOCATION

פלט לדוגמה:

---
semanticKey: CRITICALITY
semanticValue: LOW
---

הצגת הקטלוג הסמנטי

אתם יכולים לעיין בקטלוג הסמנטי במסוף Google Cloud כדי לראות את הסמנטיקה הזמינה ואת המיפוי שלה למאפייני OpenTelemetry ‏ (OTel).

המסוף

כדי לגשת לקטלוג הסמנטי באמצעות מסוף Google Cloud :

  1. פותחים את הדף Tags במסוף Google Cloud .

    פתיחת הדף "תגים"

  2. לוחצים על הכרטיסייה Semantic Catalog באזור הראשי של לוח הבקרה כדי להציג את הטבלה שממפה מפתחות סמנטיים פנימיים לתקנים של OpenTelemetry.

שירותים נתמכים

ברשימה הזו מפורטים השירותים שתומכים בתגים.