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

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

מידע על התגים

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

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

ההרשאות הנדרשות

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

  • Tag Viewer (roles/resourcemanager.tagViewer) on the resources the tags are attached to
  • כדי להציג ולנהל תגים ברמת הארגון: צפייה בארגון (roles/resourcemanager.organizationViewer) באופן כללי בארגון
  • יצירה, עדכון ומחיקה של הגדרות תגים: Tag Administrator (roles/resourcemanager.tagAdmin) on the resource you're creating, updating, or deleting tags for
  • צירוף והסרה של תגים ממשאבים: Tag User (roles/resourcemanager.tagUser) על ערך התג ועל המשאבים שאתם מצרפים או מסירים מהם את ערך התג

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

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

כדי לצרף תגים לנושאים, למינויים או לתמונות מצב ב-Pub/Sub, צריך את התפקיד עריכה ב-Pub/Sub (roles/pubsub.editor).

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

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

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

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

המסוף

  1. נכנסים לדף Pub/Sub במסוף Google Cloud .
  2. מעבר אל Pub/Sub

  3. בוחרים באפשרות ליצור נושא, מינוי או תמונת מצב חדשים.
  4. לוחצים על ניהול תגים.
  5. אם הארגון שלכם לא מופיע בחלונית Manage tags, לוחצים על Select scope for tags. בוחרים להוסיף תגים שהוגדרו ברמת הארגון או ברמת הפרויקט, ומזינים את המזהה שלהם.
  6. לוחצים על הוספת תג.
  7. בוחרים מהרשימה את המקש של התג שרוצים לצרף. אפשר לסנן את הרשימה באמצעות הקלדה של מילות מפתח.
  8. בוחרים מהרשימה את הערך של התג שרוצים לצרף. אפשר לסנן את הרשימה על ידי הקלדת מילות מפתח.
  9. לוחצים על Save. הקטע Tags (תגים) מתעדכן בפרטי התגים.
  10. יוצרים את הנושא, המינוי או תמונת המצב. הנושא, המינוי או ה-snapshot החדשים נוצרים עם התגים שצוינו.

gcloud

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

       gcloud pubsub topics create TOPIC_ID --tags=TAG_KEY=TAG_VALUE
     

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

  • TOPIC_ID: מזהה הנושא
  • TAG_KEY: המזהה הקבוע או השם ממרחב השמות של מפתח התג שמצורף – לדוגמה, tagKeys/567890123456
  • TAG_VALUE: המזהה הקבוע או השם עם מרחב השמות של ערך התג שמצורף – לדוגמה, tagValues/567890123456

כדי לציין כמה תגים, מפרידים ביניהם באמצעות פסיק, לדוגמה, TAGKEY1=TAGVALUE1,TAGKEY2=TAGVALUE2

API

שולחים בקשת POST לכתובת ה-URL הבאה:

      https://pubsub.googleapis.com/v1/projects/PROJECT_ID/topics/TOPIC_ID

בגוף הבקשה, מציינים את ה-JSON הבא:

      
{
  "name": "projects/PROJECT_ID/topics/TOPIC_ID"
  "tags": {
    "TAGKEY_NAME": "TAGVALUE_NAME"
  }
}

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

  • PROJECT_ID: מזהה הפרויקט
  • TOPIC_ID: מזהה הנושא
  • TAGKEY_NAME: המזהה הקבוע או השם ממרחב השמות של מפתח התג שמצורף – לדוגמה, tagKeys/567890123456
  • TAGVALUE_NAME: המזהה הקבוע או השם עם מרחב השמות של ערך התג שמצורף – לדוגמה, tagValues/567890123456

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

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

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

המסוף

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

    מעבר למדיניות הארגון

  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.
      • הרשאה: אם התנאי שצוין מתקיים, הפעולה ליצירה או לעדכון של המשאב מורשית.
      • דחייה: אם התנאי שצוין מתקיים, הפעולה ליצירה או לעדכון של המשאב נחסמת.
  5. לוחצים על יצירת אילוץ.

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‏Google Cloud שרוצים לאכוף עליו תגים נדרשים, לדוגמה, file.googleapis.com/Instance.

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

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

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

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

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

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

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

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

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

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

המסוף

  1. נכנסים לדף Pub/Sub במסוף Google Cloud .
  2. מעבר אל Pub/Sub

  3. בוחרים את הדף של המשאב שאליו רוצים לצרף תג. לדוגמה, כדי לצרף תג לנושא, עוברים לדף נושאים.
  4. לוחצים על תגים.
  5. אם הארגון שלכם לא מופיע בחלונית תגים, לוחצים על בחירת היקף. בוחרים את הארגון ולוחצים על פתיחה.
  6. לוחצים על הוספת תג.
  7. בוחרים מהרשימה את המקש של התג שרוצים לצרף. אפשר לסנן את הרשימה באמצעות הקלדה של מילות מפתח.
  8. בוחרים מהרשימה את הערך של התג שרוצים לצרף. אפשר לסנן את הרשימה על ידי הקלדת מילות מפתח.
  9. לוחצים על Save.
  10. בתיבת הדו-שיח אישור, לוחצים על אישור כדי לצרף את התג.
  11. תקבלו התראה שמאשרת שהתגים עודכנו.

gcloud

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

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

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

  • TAGVALUE_NAME: המזהה הקבוע או השם ממרחב השמות של ערך התג שמצורף – לדוגמה, tagValues/567890123456.
  • RESOURCE_ID הוא המזהה המלא של המשאב, כולל שם הדומיין של ה-API לזיהוי סוג המשאב (//pubsub.googleapis.com/). לדוגמה, כדי לצרף תג ל-/projects/PROJECT_ID/topics/TOPIC_ID, המזהה המלא הוא //pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID.

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

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

המסוף

  1. נכנסים לדף Pub/Sub במסוף Google Cloud .
  2. מעבר אל Pub/Sub

  3. בוחרים את הדף של המשאב שרוצים לראות את התגים שלו. לדוגמה, כדי לראות את התגים של נושא, עוברים לדף Topics.

    התגים מוצגים בקטע Tags בדף הנושא במסוף.

gcloud

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

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

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

  • RESOURCE_ID הוא המזהה המלא של המשאב, כולל שם הדומיין של ה-API לזיהוי סוג המשאב (//pubsub.googleapis.com/). לדוגמה, כדי לצרף תג ל-/projects/PROJECT_ID/topics/TOPIC_ID, המזהה המלא הוא //pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID.

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

name: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456
          tagValue: tagValues/567890123456
          resource: //pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
      

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

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

המסוף

  1. נכנסים לדף Pub/Sub במסוף Google Cloud .
  2. מעבר אל Pub/Sub

  3. בוחרים את הדף של המשאב שממנו רוצים להסיר תג. לדוגמה, כדי להסיר תג מנושא, עוברים לדף נושאים.
  4. לוחצים על תגים.
  5. בחלונית תגים, לצד התג שרוצים לנתק, לוחצים על מחיקת הפריט.
  6. לוחצים על Save.
  7. בתיבת הדו-שיח אישור, לוחצים על אישור כדי לבטל את הקישור של התג.

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

gcloud

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

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

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

  • TAGVALUE_NAME: המזהה הקבוע או השם ממרחב השמות של ערך התג שמצורף – לדוגמה, tagValues/567890123456.
  • RESOURCE_ID הוא המזהה המלא של המשאב, כולל שם הדומיין של ה-API לזיהוי סוג המשאב (//pubsub.googleapis.com/). לדוגמה, כדי לצרף תג ל-/projects/PROJECT_ID/topics/TOPIC_ID, המזהה המלא הוא //pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID.

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

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

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

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

המאמרים הבאים