ניהול הגישה לתמונות בהתאמה אישית

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

מידע כללי על מתן גישה למשאבי Compute Engine זמין במאמר בנושא ניהול הגישה למשאבי Compute Engine. למידע על IAM, קראו את מסמכי העזרה של IAM.

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

  • קראו את מאמרי העזרה בנושא IAM.
  • מידע על תפקידי IAM ב-Compute Engine, ובפרט על התפקיד Compute Image User‏ (roles/compute.imageUser).
  • אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות. אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Google Cloud . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:

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

    המסוף

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

    gcloud

    1. התקינו את ה-CLI של Google Cloud. אחר כך, מאתחלים את ה-CLI של Google Cloud באמצעות הפקודה הבאה:

      gcloud init

      אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  • הגדרת אזור ותחום כברירת מחדל
  • REST

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

      התקינו את ה-CLI של Google Cloud.

      אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

    מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Google Cloud .

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

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

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

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

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

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

  • כדי לתת למשתמשים או לחשבונות שירות את ההרשאות שנדרשות ליצירה ולשיתוף של תמונות בהתאמה אישית:
    • ‫resourcemanager.projects.getIamPolicy בפרויקט
    • ‫resourcemanager.projects.setIamPolicy בפרויקט
  • כדי לתת למשתמשים או לחשבונות שירות את ההרשאות שנדרשות למחיקת תמונות בהתאמה אישית:
    • ‫resourcemanager.projects.getIamPolicy בפרויקט
    • ‫resourcemanager.projects.setIamPolicy בפרויקט
    • compute.images.getIamPolicyבתמונה
    • compute.images.setIamPolicy בתמונה
  • כדי לבטל את הגישה של משתמש או חשבון שירות לתמונות בהתאמה אישית:
    • ‫resourcemanager.projects.getIamPolicy בפרויקט
    • ‫resourcemanager.projects.setIamPolicy בפרויקט
  • כדי ליצור מכונה באמצעות קובץ אימג' משותף:
    • ‫compute.instances.create בפרויקט
    • כדי להשתמש באימג' בהתאמה אישית ליצירת המכונה הווירטואלית (VM): compute.images.useReadOnly בקובץ אימג'
    • כדי להשתמש ב-snapshot ליצירת המכונה הווירטואלית: compute.snapshots.useReadOnly בקובץ ה-snapshot
    • כדי להשתמש בתבנית של הגדרות מכונה ליצירת המכונה הווירטואלית: compute.instanceTemplates.useReadOnly בתבנית של הגדרות המכונה
    • כדי להקצות רשת מדור קודם למכונה הווירטואלית: compute.networks.use בפרויקט
    • כדי לציין כתובת IP סטטית למכונה הווירטואלית: compute.addresses.use בפרויקט
    • כדי להקצות כתובת IP חיצונית למכונה הווירטואלית כשמשתמשים ברשת מדור קודם: compute.networks.useExternalIp בפרויקט
    • כדי לציין רשת משנה למכונה הווירטואלית: compute.subnetworks.use בפרויקט או ברשת המשנה שנבחרה
    • כדי להקצות כתובת IP חיצונית למכונה הווירטואלית כשמשתמשים ברשת VPC: compute.subnetworks.useExternalIp בפרויקט או ברשת המשנה שנבחרה
    • כדי להגדיר מטא-נתונים של המכונה הווירטואלית: ‫compute.instances.setMetadata בפרויקט
    • כדי להגדיר תגים למכונה הווירטואלית: compute.instances.setTags במכונה הווירטואלית
    • כדי להגדיר תוויות למכונה הווירטואלית: compute.instances.setLabels במכונה הווירטואלית
    • כדי להגדיר חשבון שירות לשימוש של המכונה הווירטואלית: compute.instances.setServiceAccount במכונה הווירטואלית
    • כדי ליצור דיסק חדש למכונה הווירטואלית: compute.disks.create בפרויקט
    • כדי לצרף דיסק קיים במצב קריאה-בלבד או במצב קריאה וכתיבה: compute.disks.use בדיסק
    • כדי לצרף דיסק קיים במצב קריאה-בלבד: compute.disks.useReadOnly בדיסק

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

מגבלות

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

צריך לתת הרשאה ליצור תמונות בהתאמה אישית

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

ב-Compute Engine יש תפקיד מוגדר מראש של אדמין אחסון ב-Compute‏ (roles/compute.storageAdmin) שאפשר להקצות למשתמשים כדי שיוכלו ליצור, למחוק ולנהל משאבים שקשורים לאחסון, כולל תמונות, דיסקים ותמונות מצב. אם אתם צריכים תפקיד שמאפשר רק יצירת תמונות, אתם צריכים ליצור תפקיד בהתאמה אישית. בתפקיד המותאם אישית, צריך לכלול את ההרשאות הבאות:

  • compute.images.create כדי ליצור תמונות חדשות
  • ‫compute.images.list כדי להציג רשימה של התמונות בפרויקט
  • ‫compute.disks.use אם התמונה נוצרה מדיסק
  • ‫compute.disks.list אם המשתמשים צריכים להציג את כל הדיסקים בפרויקט

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

המסוף

  1. נכנסים לדף IAM במסוף Google Cloud של הפרויקט או הארגון.

    כניסה לדף IAM

  2. כדי להוסיף חבר חדש, לוחצים על Grant access.

  3. בשדה New principals, מזינים את כתובת האימייל של הזהות שרוצים להעניק לה גישה.

    לדוגמה:

    • כתובת האימייל בחשבון Google: test-user@gmail.com
    • קבוצת Google: admins@googlegroups.com
    • זהות מספק זהויות חיצוני: principal://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/subject/raha@altostrat.com
    • חשבון שירות: server@example.gserviceaccount.com
    • דומיין Google Workspace: example.com
  4. ברשימה Select a role בוחרים באפשרות Compute Engine > Compute Storage Admin, או בוחרים תפקיד בהתאמה אישית אם יצרתם כזה.

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

  6. שומרים את השינויים.

gcloud

כדי להעניק את התפקיד roles/compute.storageAdmin ברמת הארגון, משתמשים בפקודה gcloud organizations add-iam-policy-binding:

gcloud organizations add-iam-policy-binding ORGANIZATION_ID \
    --member='MEMBER' \
    --role='roles/compute.storageAdmin'

כדי להקצות את התפקיד roles/compute.storageAdmin ברמת הפרויקט, משתמשים בפקודה gcloud projects add-iam-policy-binding:

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member='MEMBER' \
    --role='roles/compute.storageAdmin'

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

  • ‫ORGANIZATION_ID או PROJECT_ID: מזהה הארגון או מזהה הפרויקט – לדוגמה, my-organization-1 או my-project-1
  • ‫MEMBER: זהות תקפה שרוצים להקצות לה את התפקיד

    לדוגמה:

    • כתובת האימייל בחשבון Google: user:user@gmail.com
    • קבוצת Google: group:admins@googlegroups.com
    • זהות מספק זהויות חיצוני: principal://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/subject/raha@altostrat.com
    • חשבון שירות: serviceAccount:server@example.gserviceaccount.com
    • דומיין Google Workspace: domain:example.com

REST

  1. קוראים את המדיניות הקיימת באמצעות ה-method ‏getIamPolicy של המשאב. לפרויקטים, צריך להשתמש ב-projects.getIamPolicy method.

    POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:getIamPolicy
    

    מחליפים את PROJECT_ID במזהה הפרויקט, לדוגמה, my-project-1.

    בארגונים, צריך להשתמש בשיטה organizations.getIamPolicy.

    POST https://cloudresourcemanager.googleapis.com/v1/organizations/ORGANIZATION_ID:getIamPolicy
    

    מחליפים את ORGANIZATION_ID במזהה הארגון, לדוגמה, 123456578920.

    ‫Compute Engine מחזיר את המדיניות הנוכחית בתגובה.

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

    • user:test-user@gmail.com
    • group:admins@example.com
    • serviceAccount:test123@example.domain.com
    • domain:example.domain.com

    לדוגמה, כדי להקצות את התפקיד roles/compute.storageAdmin ל-group:admins@example.com, מוסיפים את הקישור הבא למדיניות:

    {
     "members": [
       "group:admins@example.com"
     ],
     "role":"roles/compute.storageAdmin"
    }
    
  3. כותבים את המדיניות המעודכנת באמצעות השיטה setIamPolicy.

    לדוגמה, כדי להגדיר מדיניות ברמת הפרויקט, משתמשים בשיטה project.setIamPolicy. בגוף הבקשה, מציינים את מדיניות ה-IAM המעודכנת מהשלב הקודם.

    POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:setIamPolicy
    

    מחליפים את PROJECT_ID במזהה הפרויקט.

מתן הרשאות למחיקת תמונות מותאמות אישית

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

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

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

ב-Compute Engine יש תפקיד מוגדר מראש של אדמין אחסון ב-Compute (roles/compute.storageAdmin) שאפשר להקצות למשתמשים כדי שהם יוכלו ליצור, למחוק ולנהל משאבים שקשורים לאחסון, כולל תמונות, דיסקים ותמונות מצב. אם אתם צריכים תפקיד שמאפשר רק מחיקה של תמונות, אתם צריכים ליצור תפקיד בהתאמה אישית. בתפקיד המותאם אישית, כוללים את ההרשאות הבאות:

  • ‫compute.images.delete כדי למחוק תמונות
  • ‫compute.images.list אם המשתמשים צריכים להציג רשימה של תמונות בפרויקט או בארגון
  • compute.images.get כדי לקבל את התמונות

המסוף

כדי לתת הרשאה למחיקת תמונות ספציפיות:

  1. נכנסים לדף Images במסוף Google Cloud .

    כניסה לדף Images

  2. בוחרים את התמונות שרוצים לתת להן הרשאות.

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

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

  5. בשדה New principals, מזינים את כתובת האימייל של הזהות שאיתה רוצים לשתף את התמונה.

    לדוגמה:

    • כתובת האימייל בחשבון Google: test-user@gmail.com
    • קבוצת Google: admins@googlegroups.com
    • זהות מספק זהויות חיצוני: principal://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/subject/raha@altostrat.com
    • חשבון שירות: server@example.gserviceaccount.com
    • דומיין Google Workspace: example.com
  6. ברשימה Role, מעבירים את מצביע העכבר מעל Compute Engine ובוחרים באפשרות Storage Admin, או בוחרים תפקיד בהתאמה אישית מהרשימה Custom.

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

  8. שומרים את השינויים.

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

  1. עוברים לדף IAM של הפרויקט או הארגון.

    כניסה לדף IAM

  2. לוחצים על Grant access.

  3. בשדה New principals, מזינים את כתובת האימייל של הזהות שרוצים להעניק לה גישה. לדוגמה:

    • כתובת האימייל בחשבון Google: test-user@gmail.com
    • קבוצת Google: admins@googlegroups.com
    • זהות מספק זהויות חיצוני: principal://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/subject/raha@altostrat.com
    • חשבון שירות: server@example.gserviceaccount.com
    • דומיין Google Workspace: example.com
  4. ברשימה Role, מעבירים את מצביע העכבר מעל Compute Engine ובוחרים באפשרות Storage Admin, או בוחרים תפקיד בהתאמה אישית מהרשימה Custom.

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

  6. שומרים את השינויים.

gcloud

כדי לתת הרשאות למחיקת תמונות ברמת הארגון, משתמשים בפקודה gcloud organizations add-iam-policy-binding:

gcloud organizations add-iam-policy-binding ORGANIZATION_ID \
    --member='MEMBER' \
    --role='ROLE'

כדי לתת הרשאות למחיקת תמונות ברמת הפרויקט, משתמשים בפקודה gcloud projects add-iam-policy-binding:

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member='MEMBER' \
    --role='ROLE'

כדי לתת הרשאות למחיקת תמונה ספציפית, משתמשים בפקודה gcloud compute images add-iam-policy-binding:

gcloud compute images add-iam-policy-binding IMAGE_NAME \
    --member='MEMBER' \
    --role='ROLE'

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

  • ‫ORGANIZATION_ID או PROJECT_ID או IMAGE_NAME: מזהה הארגון בן 12 הספרות, מזהה הפרויקט או שם התמונה – לדוגמה, 123456578920,‏ my-project-1 או my-custom-image
  • ‫MEMBER: זהות תקפה שרוצים להקצות לה את התפקיד

    לדוגמה:

    • כתובת האימייל בחשבון Google: user:user@gmail.com
    • קבוצת Google: group:admins@googlegroups.com
    • זהות מספק זהויות חיצוני: principal://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/subject/raha@altostrat.com
    • חשבון שירות: serviceAccount:server@example.gserviceaccount.com
    • דומיין Google Workspace: domain:example.com
  • ‫ROLE: התפקיד שרוצים להקצות לזהות הזו. לדוגמה, התפקיד roles/compute.storageAdmin או תפקיד בהתאמה אישית כמו roles/customImageDeletionRole

REST

  1. קוראים את המדיניות הקיימת באמצעות ה-method ‏getIamPolicy המתאים של המשאב. בפרויקטים, משתמשים ב-projects.getIamPolicy method:

    POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:getIamPolicy
    

    מחליפים את PROJECT_ID במזהה הפרויקט.

    ארגונים: משתמשים בשיטה organizations.getIamPolicy:

    POST https://cloudresourcemanager.googleapis.com/v1/organizations/ORGANIZATION_ID:getIamPolicy
    

    מחליפים את ORGANIZATION_ID במזהה הארגון המספרי בן 12 הספרות.

    כדי לשפר תמונה ספציפית, משתמשים בשיטה images.getIamPolicy:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images/IMAGE_NAME:getIamPolicy
    

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

    • ‫PROJECT_ID: מזהה הפרויקט
    • ‫IMAGE_NAME: השם של התמונה

    ‫Compute Engine מחזיר את המדיניות הנוכחית בתגובה.

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

    • user:test-user@gmail.com
    • group:admins@example.com
    • serviceAccount:test123@example.domain.com
    • domain:example.domain.com

    לדוגמה, כדי להקצות את התפקיד roles/compute.storageAdmin ל-user:test-email@example.com, מוסיפים את הקישור הבא למדיניות:

    {
     "members": [
       "user:test-email@example.com"
     ],
     "role":"roles/compute.storageAdmin"
    }
    
  3. כותבים את המדיניות המעודכנת באמצעות השיטה setIamPolicy.

    לדוגמה, כדי להגדיר מדיניות ברמת הפרויקט, משתמשים ב-method ‏project.setIamPolicy. בגוף הבקשה, מציינים את מדיניות ה-IAM המעודכנת מהשלב הקודם.

    POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:setIamPolicy
    

    מחליפים את PROJECT_ID במזהה הפרויקט.

איך נותנים הרשאות לשיתוף תמונות מותאמות אישית בארגון

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

ב-Compute Engine יש את תפקידי ה-IAM המוגדרים מראש הבאים שבהם אפשר להשתמש לניהול תמונות:

  • משתמש בתמונת Compute ‏ (roles/compute.imageUser): הרשאה להצגה ברשימה, לקריאה ולשימוש בתמונות בבקשות, בלי הרשאות אחרות לגבי התמונה
  • אדמין אחסון ב-Compute ‏ (roles/compute.storageAdmin): הרשאות ליצור, לשנות ולמחוק דיסקים, תמונות וגיבויים.

אפשרות אחרת היא ליצור תפקיד IAM בהתאמה אישית.

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

בדוגמה הבאה מוצג איך להוסיף קבוצה כדי שלמשתמשים בקבוצה תהיה גישה לתמונה.

המסוף

  1. נכנסים לדף Images במסוף Google Cloud .

    כניסה לדף Images

  2. בוחרים את התמונה שרוצים לשתף עם משתמשים אחרים.

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

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

  5. בשדה New principals, מזינים את כתובת האימייל של הזהות שאיתה רוצים לשתף את התמונה.

    לדוגמה:

    • כתובת האימייל בחשבון Google: test-user@gmail.com
    • קבוצת Google: admins@googlegroups.com
    • זהות מספק זהויות חיצוני: principal://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/subject/raha@altostrat.com
    • חשבון שירות: server@example.gserviceaccount.com
    • דומיין Google Workspace: example.com
  6. ברשימה Role, מעבירים את מצביע העכבר מעל Compute Engine ובוחרים באפשרות Image User או Storage Admin, או בוחרים תפקיד בהתאמה אישית.

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

  8. שומרים את השינויים.

כדי לאפשר למשתמשים להפעיל תמונות בהתאמה אישית ששותפו מהמסוף Google Cloud , צריך להקצות למשתמשים את התפקיד Viewer ב-IAM ‏ (roles/viewer) בפרויקט התמונות. הענקת התפקיד הזה עוזרת לוודא שהתמונות המשותפות יופיעו ברשימת התמונות לבחירה.

  1. נכנסים לדף IAM במסוף Google Cloud .

    כניסה לדף IAM

  2. לוחצים על Grant access.

  3. בשדה New principals, מזינים את כתובת האימייל של הזהות שאיתה רוצים לשתף את התמונה. לדוגמה:

    • כתובת האימייל בחשבון Google: test-user@gmail.com
    • קבוצת Google: admins@googlegroups.com
    • זהות מספק זהויות חיצוני: principal://iam.googleapis.com/locations/global/workforcePools/altostrat-contractors/subject/raha@altostrat.com
    • חשבון שירות: server@example.gserviceaccount.com
    • דומיין Google Workspace: example.com
  4. ברשימה Role, מעבירים את הסמן מעל Project ובוחרים באפשרות Viewer.

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

  6. שומרים את השינויים.

gcloud

כדי לעדכן את מדיניות ה-IAM של תמונה ספציפית, משתמשים בפקודה gcloud compute images add-iam-policy-binding:

gcloud compute images add-iam-policy-binding IMAGE_NAME \
    --member='MEMBER' \
    --role='ROLE'

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

  • ‫IMAGE_NAME: שם התמונה, לדוגמה custom-centos-8
  • ‫MEMBER: זהות תקפה שרוצים להעניק לה את התפקיד

    לדוגמה:

    • user:test-user@gmail.com
    • group:admins@example.com
    • serviceAccount:test123@example.domain.com
    • domain:example.domain.com
  • ‫ROLE: התפקיד שאליו רוצים להקצות את הזהות, כמו roles/compute.imageUser,‏ roles/compute.storageAdmin או תפקיד בהתאמה אישית

אופציונלי: כדי לאפשר למשתמשים לראות את התמונות המשותפות האלה בimages.listבקשות שלהם, צריך להקצות למשתמשים את תפקיד הצפייה ב-IAM ‏ (roles/viewer) בפרויקט התמונות באמצעות הפקודה gcloud projects add-iam-policy-binding. אם אתם לא רוצים שהמשתמשים יוכלו לראות את רשימת התמונות ששותפו, אתם יכולים לדלג על השלב הזה.

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member='MEMBER' \
    --role='roles/viewer'

REST

  1. קוראים את המדיניות הקיימת באמצעות ה-method ‏getIamPolicy של המשאב. לדוגמה, כדי לקבל את המדיניות לגבי תמונה ספציפית, משתמשים ב-method ‏images.getIamPolicy:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images/IMAGE_NAME:getIamPolicy
    

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

    • ‫PROJECT_ID: מזהה הפרויקט שאליו שייך התמונה
    • ‫IMAGE_NAME: השם של התמונה

    ‫Compute Engine מחזיר את המדיניות הנוכחית בתגובה.

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

    • user:test-user@gmail.com
    • group:admins@example.com
    • serviceAccount:test123@example.domain.com
    • domain:example.domain.com

    לדוגמה, כדי להעניק את ההרשאה roles/compute.imageUser ל-test-email@example.com, מוסיפים את הקישור הבא למדיניות:

    {
     "members": [
       "user:test-email@example.com"
     ],
     "role":"roles/compute.imageUser"
    }
    
  3. כותבים את המדיניות המעודכנת באמצעות השיטה setIamPolicy. לדוגמה, כדי להגדיר מדיניות לגבי תמונה ספציפית, משתמשים ב-method ‏project.setIamPolicy. בגוף הבקשה, מציינים את מדיניות ה-IAM המעודכנת מהשלב הקודם.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images/IMAGE_NAME:setIamPolicy
    

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

    • ‫PROJECT_ID: מזהה הפרויקט שאליו שייך התמונה
    • ‫IMAGE_NAME: השם של התמונה

אפשר גם להעניק למשתמשים את תפקיד הצופה ב-IAM ‏ (roles/viewer) בפרויקט התמונות באמצעות השיטה projects.setIamPolicy, כדי שהם יוכלו לראות את התמונות המשותפות האלה בimages.listבקשות שלהם. אם אתם לא רוצים שהמשתמשים יוכלו לראות את רשימת התמונות ששותפו, אתם יכולים לדלג על השלב הזה.

POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:setIamPolicy

איך נותנים הרשאות לשיתוף תמונות מותאמות אישית בין ארגונים

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

המסוף

  1. נכנסים לדף Images במסוף Google Cloud .

    כניסה לדף Images

  2. בוחרים את התמונה שרוצים לשתף עם משתמשים אחרים.

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

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

  5. בשדה New principals, מזינים את כתובת האימייל של הקבוצה שאיתה רוצים לשתף את התמונה. לדוגמה, admins@example.com.

  6. ברשימה Role, מעבירים את הסמן מעל Compute Engine ובוחרים באפשרות Compute Image User.

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

  8. שומרים את השינויים.

כדי לאפשר למשתמשים להפעיל תמונות בהתאמה אישית ששותפו מהמסוף Google Cloud , צריך להקצות למשתמשים את התפקיד Viewer ב-IAM ‏ (roles/viewer) בפרויקט התמונות. הענקת התפקיד הזה עוזרת לוודא שהתמונות המשותפות יופיעו ברשימת בחירת התמונות.

  1. נכנסים לדף IAM במסוף Google Cloud .

    כניסה לדף IAM

  2. לוחצים על Grant access.

  3. בשדה New principals, מזינים את כתובת האימייל של הזהות שאיתה רוצים לשתף את התמונה. לדוגמה, admins@example.com.

  4. ברשימה Role, מעבירים את הסמן מעל Project ובוחרים באפשרות Viewer.

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

  6. שומרים את השינויים.

gcloud

כדי להקצות את התפקיד roles/compute.imageUser למשתמשים, משתמשים בפקודה gcloud compute images add-iam-policy-binding:

gcloud compute images add-iam-policy-binding IMAGE_NAME \
    --member='MEMBER' \
    --role='roles/compute.imageUser'

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

  • ‫IMAGE_NAME: שם התמונה, לדוגמה custom-centos-8
  • ‫MEMBER: זהות תקפה שרוצים להעניק לה את התפקיד – לדוגמה, group:admins@example.com

אופציונלי: כדי לאפשר למשתמשים לראות את התמונות המשותפות האלה בimages.listבקשות שלהם, צריך להקצות למשתמשים את תפקיד הצפייה ב-IAM ‏ (roles/viewer) בפרויקט התמונות באמצעות הפקודה gcloud projects add-iam-policy-binding. אם אתם לא רוצים שהמשתמשים יוכלו לראות את רשימת התמונות ששותפו, אתם יכולים לדלג על השלב הזה.

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member='MEMBER' \
    --role='roles/viewer'

REST

  1. קוראים את המדיניות הקיימת באמצעות ה-method ‏getIamPolicy של המשאב. לדוגמה, כדי לקבל את המדיניות לגבי תמונה ספציפית, משתמשים ב-method ‏images.getIamPolicy:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images/IMAGE_NAME:getIamPolicy
    

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

    • ‫PROJECT_ID: מזהה הפרויקט שאליו שייך התמונה
    • ‫IMAGE_NAME: השם של התמונה

    ‫Compute Engine מחזיר את המדיניות הנוכחית בתגובה.

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

    • user:test-user@gmail.com
    • group:admins@example.com
    • serviceAccount:test123@example.domain.com
    • domain:example.domain.com

    לדוגמה, כדי להעניק את ההרשאה roles/compute.imageUser ל-test-user@example.com, מוסיפים את הקישור הבא למדיניות:

    {
      "members": [
        "user:test-user@example.com"
      ],
      "role":"roles/compute.imageUser"
    }
    
  3. כותבים את המדיניות המעודכנת באמצעות השיטה setIamPolicy. לדוגמה, כדי להגדיר מדיניות לגבי תמונה ספציפית, משתמשים ב-method ‏images.setIamPolicy. בגוף הבקשה, מציינים את מדיניות ה-IAM המעודכנת מהשלב הקודם.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images/IMAGE_NAME:setIamPolicy
    

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

    • ‫PROJECT_ID: מזהה הפרויקט שאליו שייך התמונה
    • ‫IMAGE_NAME: השם של התמונה

    אפשר גם לתת למשתמשים את תפקיד הצפייה ב-IAM (roles/viewer) בפרויקט התמונות באמצעות השיטה projects.setIamPolicy, כדי שהם יוכלו לראות את התמונות המשותפות בimages.listבקשות שלהם. אם אתם לא רוצים שהמשתמשים יוכלו לראות את רשימת התמונות ששותפו, אתם יכולים לדלג על השלב הזה.

    POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:setIamPolicy
    

מתן הרשאות לשיתוף תמונות מותאמות אישית באופן ציבורי

אתם יכולים לשתף את התמונות המותאמות אישית עם כל המשתמשים המאומתים ב-Compute Engine, בלי קשר לשאלה אם הם חלק מהארגון או מהפרויקט שלכם.

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

בדוגמה הבאה מוצג איך לתת לכל המשתמשים המאומתים ב-Compute Engine את התפקיד Compute Image User‏ (roles/compute.imageUser) לתמונה בהתאמה אישית.

gcloud

כדי להגדיר תמונות כציבוריות, משתמשים בפקודה gcloud compute images add-iam-policy-binding:

gcloud compute images add-iam-policy-binding IMAGE_NAME \
    --member='allAuthenticatedUsers' \
    --role='roles/compute.imageUser'

מחליפים את IMAGE_NAME בשם המשאב – לדוגמה, my_image.

REST

  1. קוראים את המדיניות הקיימת באמצעות ה-method‏ getIamPolicy. לדוגמה, כדי לקבל את המדיניות לגבי תמונה ספציפית, משתמשים ב-method ‏images.getIamPolicy:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images/IMAGE_NAME:getIamPolicy
    

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

    • ‫PROJECT_ID: מזהה הפרויקט שאליו שייך התמונה
    • ‫IMAGE_NAME: השם של התמונה

    ‫Compute Engine מחזיר את המדיניות הנוכחית בתגובה.

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

    {
     "members": [
       "allAuthenticatedUsers"
     ],
     "role":"roles/compute.imageUser"
    }
    
  3. כותבים את המדיניות המעודכנת באמצעות השיטה setIamPolicy. לדוגמה, כדי להגדיר מדיניות לגבי תמונה ספציפית, משתמשים ב-method ‏images.setIamPolicy. בגוף הבקשה, מציינים את מדיניות ה-IAM המעודכנת מהשלב הקודם.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images/IMAGE_NAME:setIamPolicy
    

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

    • ‫PROJECT_ID: מזהה הפרויקט שאליו שייך התמונה
    • ‫IMAGE_NAME: השם של התמונה

מתן גישה של קבוצת מופעי מכונה מנוהלים לתמונות

ב-Compute Engine אפשר ליצור קבוצות של מכונות, כקבוצות מנוהלות או כקבוצות לא מנוהלות של מכונות. אם יוצרים קבוצת מופעי מכונה מנוהלים (MIG),‏ Compute Engine משתמש בסוכן השירות של Google APIs כדי לקרוא ל-Compute Engine API ולבצע פעולות שקשורות לקבוצה, כמו יצירה מחדש של מכונות לא תקינות ועדכון מכונות.

אם רוצים ליצור קבוצת מופעים מנוהלת (MIG) באמצעות תמונה מפרויקט אחר, צריך להעניק את התפקיד Compute Image User (משתמש בתמונת Compute) ‏(roles/compute.imageUser) לחשבון השירות של ממשקי ה-API ששייך לפרויקט שיוצר את ה-MIG. לדוגמה:

  1. פרויקט א' רוצה ליצור קבוצת מופעים מנוהלת (MIG) באמצעות תמונות שנמצאות בבעלות פרויקט ב'.
  2. בפרויקט ב', לחשבון השירות של פרויקט א' מוקצה התפקיד Compute Image User.
  3. עכשיו אפשר להשתמש בתמונות מפרויקט ב' כדי ליצור קבוצות של מכונות מנוהלות (MIG) בפרויקט א'.

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

איך מוצאים את כתובת האימייל של חשבון השירות

  1. נכנסים לדף IAM במסוף Google Cloud של הפרויקט שרוצים לתת גישה לחשבון השירות שלו.

    כניסה לדף IAM

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

  3. מחפשים את Google APIs Service Agent, עם כתובת האימייל בפורמט הבא:

    PROJECT_NUMBER@cloudservices.gserviceaccount.com
    

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

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

עכשיו, כשכתובת האימייל של חשבון השירות ידועה, אפשר להוסיף את הכתובת לפרויקט אחר ולהעניק לה את התפקיד 'משתמש בתמונת Compute' (roles/compute.imageUser).

המסוף

  1. נכנסים לדף IAM במסוף Google Cloud של פרויקט התמונות.

    כניסה לדף IAM

  2. כדי להוסיף חבר חדש, לוחצים על Grant access.

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

  4. ברשימה Role, מעבירים את הסמן מעל Compute ובוחרים באפשרות Compute Image User.

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

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

  7. חוזרים לפרויקט של חשבון השירות.

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

gcloud

מוסיפים חשבון שירות מפרויקט התמונה באמצעות הפקודה gcloud projects add-iam-policy-binding:

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member='serviceAccount:SERVICE_ACCOUNT_EMAIL' --role='roles/compute.imageUser'

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

  • ‫PROJECT_ID: מזהה הפרויקט שמכיל את התמונות שרוצים לשתף
  • SERVICE_ACCOUNT_EMAIL: כתובת האימייל של חשבון השירות

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

REST

  1. מקבלים את מדיניות ה-IAM של פרויקט התמונות באמצעות השיטה projects.getIamPolicy:

     POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:getIamPolicy
     

    מחליפים את PROJECT_ID במזהה הפרויקט של תמונת הדיסק.

  2. כדי להעניק את התפקיד roles/compute.imageUser לחשבון השירות, עורכים את המדיניות באמצעות עורך טקסט:

    {
      "bindings": [
         {
          "role": "roles/compute.imageUser",
          "members": [
            "serviceAccount:SERVICE_ACCOUNT_EMAIL"
          ]
        }
      ]
    }
    

    מחליפים את SERVICE_ACCOUNT_EMAIL בכתובת האימייל בחשבון השירות.

  3. כותבים את המדיניות המעודכנת באמצעות projects.setIamPolicy. בגוף הבקשה, מציינים את מדיניות ה-IAM המעודכנת מהשלב הקודם.

    POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:setIamPolicy
    

    מחליפים את PROJECT_ID במזהה המוצר של פרויקט התמונות.

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

הענקת גישה לקבוצת מופעים מנוהלת לתמונות ספציפיות בפרויקט

עכשיו שיש לכם את כתובת האימייל של חשבון השירות, אתם יכולים להוסיף את הכתובת לפרויקט אחר ולהעניק את התפקיד Compute Image User ‏ (roles/compute.imageUser) לתמונות מסוימות.

המסוף

  1. נכנסים לדף Images במסוף Google Cloud של פרויקט התמונות.

    כניסה לדף Images

  2. מסמנים את התיבות לצד התמונות שרוצים לשתף.

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

  4. בחלונית Permissions, לוחצים על Add principal.

  5. בשדה New principals, מזינים את כתובת האימייל בחשבון השירות שאיתו רוצים לשתף את התמונה. לדוגמה, test123@example.domain.com.

  6. ברשימה Role בוחרים באפשרות Compute ואז באפשרות Compute Image User.

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

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

  9. חוזרים לפרויקט של חשבון השירות.

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

gcloud

כדי לתת לחשבון שירות גישה לתמונה ספציפית, משתמשים בפקודה gcloud compute images add-iam-policy-binding:

gcloud compute images add-iam-policy-binding IMAGE_NAME \
    --member='serviceAccount:SERVICE_ACCOUNT_EMAIL' \
    --role='roles/compute.imageUser'

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

  • ‫IMAGE_NAME: שם התמונה שרוצים לשתף
  • SERVICE_ACCOUNT_EMAIL: כתובת האימייל של חשבון השירות

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

REST

  1. כדי לקבל את מדיניות ה-IAM של תמונה באמצעות השיטה images.getIamPolicy:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images/IMAGE_NAME:getIamPolicy
    

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

    • ‫PROJECT_ID: מזהה הפרויקט של פרויקט התמונות
    • ‫IMAGE_NAME: השם של התמונה שרוצים לשתף
  2. כדי להעניק לחשבון השירות את התפקיד roles/compute.imageUser, עורכים את המדיניות באמצעות עורך טקסט:

    {
      "bindings": [
         {
          "role": "roles/compute.imageUser",
          "members": [
            "serviceAccount:SERVICE_ACCOUNT_EMAIL"
          ]
        }
      ]
    }
    

    מחליפים את SERVICE_ACCOUNT_EMAIL בכתובת האימייל בחשבון השירות.

  3. כותבים את המדיניות העדכנית באמצעות השיטה images.setIamPolicy. בגוף הבקשה, מציינים את מדיניות ה-IAM המעודכנת מהשלב הקודם.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images/IMAGE_NAME:setIamPolicy
    

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

    • ‫PROJECT_ID: מזהה הפרויקט של פרויקט התמונות
    • ‫IMAGE_NAME: השם של התמונה שרוצים לשתף

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

שליטה בשימוש בתמונות ובצילומי המסך ששיתפתם

אחרי שמשתפים את התמונות עם משתמשים אחרים, אפשר לקבוע איפה בארגון הם יכולים להשתמש במשאבים האלה. מגדירים את האילוץ constraints/compute.storageResourceUseRestrictions כדי להגדיר את הפרויקטים שבהם המשתמשים יכולים להשתמש במשאבי האחסון שלכם.

כדי להגדיר את האילוצים האלה, צריך הרשאה לשנות את כללי המדיניות של הארגון. לדוגמה, resourcemanager.organizationAdmin יש הרשאה להגדיר את האילוצים האלה.

  1. כדי למצוא את מזהה הארגון שלכם, משתמשים בפקודה gcloud organization list:

    gcloud organizations list
    
  2. כדי לקבל את הגדרות המדיניות הקיימות בארגון, משתמשים בפקודה gcloud resource-manager org-policies describe:

    gcloud resource-manager org-policies describe \
        compute.storageResourceUseRestrictions \
        --organization ORGANIZATION_ID > org-policy.yaml
    

    מחליפים את ORGANIZATION_ID במזהה הארגון המספרי בן 12 הספרות.

  3. פותחים את הקובץ org-policy.yaml בכלי לעריכת טקסט ומשנים את האילוץ compute.storageResourceUseRestrictions. מוסיפים את ההגבלות שרוצים או מסירים הגבלות שכבר לא נחוצות. כשמסיימים לערוך את הקובץ, שומרים את השינויים. לדוגמה, אפשר להגדיר את הגבלת הכניסה הבאה בקובץ המדיניות:

    ‫
    constraint: compute.storageResourceUseRestrictions
    listPolicy:
      allowedValues:
        - under:organization/organization-id
    
  4. מחילים את הקובץ org-policy.yaml על הארגון באמצעות הפקודה gcloud resource-manager org-policies set-policy:

    gcloud resource-manager org-policies set-policy \
       --organization=ORGANIZATION_ID org-policy.yaml
    

    מחליפים את ORGANIZATION_ID במזהה הארגון המספרי בן 12 הספרות.

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

שימוש בתמונות מפרויקט אחר

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

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

אפשר גם ליצור נפחים של דיסק אתחול מתמונות בפרויקט אחר. מידע על יצירת דיסק אתחול מקובץ אימג' זמין במאמר יצירת דיסק אתחול עצמאי של אחסון מתמיד.

ביטול הגישה לתמונות משותפות

אם משתמש כבר לא צריך גישה למשאבי Compute Engine, אפשר לבטל את הגישה שלו באמצעות מסוף Google Cloud , Google Cloud CLI או REST.

המסוף

  1. נכנסים לדף Images במסוף Google Cloud של פרויקט התמונות.

    כניסה לדף Images

  2. מסמנים את תיבות הסימון לצד התמונות שרוצים לעדכן.

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

  4. מרחיבים את התפקיד שרוצים להסיר ממנו משתמשים.

  5. כדי להסיר משתמש מהתפקיד, לוחצים על מחיקה.

gcloud

כדי להסיר משתמש מתפקיד בתמונה, משתמשים בפקודה gcloud compute images remove-iam-policy-binding עם הדגלים --member ו---role:

gcloud compute images remove-iam-policy-binding IMAGE_NAME \
    --member='MEMBER' \
    --role='ROLE'

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

  • ‫IMAGE_NAME: שם התמונה, לדוגמה my_image
  • ‫MEMBER: הזהות שרוצים להסיר

    הפורמט צריך להיות user|group|serviceAccount:email או domain:domain. לדוגמה:

    • user:test-user@gmail.com
    • group:admins@example.com
    • serviceAccount:test123@example.domain.com
    • domain:example.domain.com
  • ‫ROLE: התפקיד שממנו רוצים להסיר את הזהות

אם מבטלים את הגישה למשאב שנמצא בגרסת בטא, צריך להשתמש בפקודה gcloud beta compute.

REST

  1. קוראים את המדיניות הקיימת באמצעות השיטה images.getIamPolicy:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images/IMAGE_NAME:getIamPolicy
    

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

    • ‫PROJECT_ID: מזהה הפרויקט שאליו שייך הדימוי
    • ‫IMAGE_NAME: השם של התמונה

    ‫Compute Engine מחזיר את המדיניות הנוכחית בתגובה.

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

  3. כותבים את המדיניות העדכנית באמצעות השיטה images.setIamPolicy. בגוף הבקשה, מציינים את מדיניות ה-IAM המעודכנת מהשלב הקודם.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/global/images/IMAGE_NAME:setIamPolicy
    

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

    • ‫PROJECT_ID: מזהה הפרויקט שאליו שייך הדימוי
    • ‫IMAGE_NAME: השם של התמונה

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