הכנה של הרשאות IAM

במאמר הזה מפורטים התפקידים וההרשאות בממשק לניהול הזהויות והרשאות הגישה (IAM) שנדרשים כדי לבקש גישה למשאבים מהאדמין של ה-IAM בפרויקט. צריכות להיות לכם ההרשאות והתפקידים הנדרשים ב-IAM כדי לבצע משימות במכונות וירטואליות (VM) במכשיר עם פער אוויר של Google Distributed Cloud (GDC).

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

מידע כללי על IAM

‫GDC עם air gap appliance כולל ניהול זהויות והרשאות גישה (IAM) לגישה פרטנית למשאבים ספציפיים ב-GDC עם air gap appliance, ומונע גישה לא רצויה למשאבים אחרים. מערכת IAM פועלת לפי עקרון האבטחה של הרשאות מינימליות, ומספקת שליטה על מי שיש לו הרשאה למשאבים מסוימים באמצעות תפקידים והרשאות ב-IAM.

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

כדי להשתמש בפקודות של gdcloud CLI, צריך לבצע את השלבים הנדרשים מהקטעים ממשק שורת הפקודות (CLI) של gdcloud. כל הפקודות של מכשיר Google Distributed Cloud במודל Air-gapped משתמשות ב-CLI‏ gdcloud או kubectl, ונדרשת סביבת מערכת הפעלה (OS).

קבלת נתיבי קובץ kubeconfig

  1. מריצים gdcloud auth login בשרת Management API.

    1. רושמים את הנתיב לקובץ שנוצר. דוגמה לנתיב לרשומה:
      /tmp/admin-kubeconfig-with-user-identity.yaml.

    2. משתמשים בנתיב כדי להחליף את MANAGEMENT_API_SERVER בהוראות האלה.

שליחת בקשה לתפקידי IAM

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

  • ‫Project VirtualMachine Admin (project-vm-admin): יצירה, שינוי, הצגה ברשימה ומחיקה של מכונות וירטואליות במרחב השמות של הפרויקט.

  • ‫Project VirtualMachine Image Admin (project-vm-image-admin): יצירה, רשימה ומחיקה של אימג'ים של מכונות וירטואליות במרחב השמות של הפרויקט.

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

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

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

אימות גישת המשתמשים למשאבי מכונות וירטואליות

כדי לוודא שיש לכם גישה למשאבי VM ולעומסי עבודה, צריך לפעול לפי השלבים לכניסה למסוף GDC או ל-CLI של gdcloud:

המסוף

  1. נכנסים למסוף GDC בתור המשתמש שמבקש או מאמת הרשאות.
  2. כדי לוודא שאתם בפרויקט הנכון, בודקים את שם הארגון ואת שם הפרויקט במסך הבית של מסוף GDC.
  3. בתפריט הניווט, לוחצים על מכונות וירטואליות > מופעים.
  4. כדי לבדוק אם יש לכם גישה ליצירת מכונות וירטואליות בפרויקט, לוחצים על Create Instance (יצירת מכונה).
    • אם אתם יכולים להמשיך בתהליך יצירת מכונה וירטואלית, יש לכם הרשאות ליצור מכונות וירטואליות.
    • אם הלחצן יצירת מכונה לא זמין או אם מופיעה הודעת שגיאה שמציינת שאין לכם הרשאות, פנו לאדמין ה-IAM של הפרויקט ובקשו ממנו להקצות לכם את התפקיד 'אדמין מכונות וירטואליות בפרויקט' (project-vm-admin) במרחב השמות של הפרויקט שבו נמצאת המכונה הווירטואלית.
  5. כדי לבדוק אם יש לכם הרשאה לצפות בתמונות וליצור אותן, לוחצים על Virtual Machines (מכונות וירטואליות) > Import (ייבוא) > Create Image (יצירת תמונה).
    • אם אתם יכולים להמשיך בייבוא התמונה, יש לכם הרשאות ליצור משאבי VirtualMachineImageImport.
    • אם האפשרויות ייבוא או יצירת תמונה לא זמינות או שמופיעה שגיאת הרשאות, צריך לפנות לאדמין של IAM בפרויקט ולבקש את התפקיד 'אדמין תמונות של מכונות וירטואליות בפרויקט' (project-vm-image-admin) במרחב השמות של הפרויקט שבו נמצאת המכונה הווירטואלית.

CLI

  1. נכנסים לחשבון בתור המשתמש שמבקש או מאמת הרשאות.

  2. בודקים אם אתם או המשתמש יכולים ליצור מכונות וירטואליות:

    kubectl --kubeconfig MANAGEMENT_API_SERVER auth can-i create virtualmachines.virtualmachine.gdc.goog -n PROJECT
    

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

    משתנה החלפה
    MANAGEMENT_API_SERVER נתיב השרת של Management API‏ kubeconfig
    PROJECT שם הפרויקט שבו יוצרים תמונות של מכונות וירטואליות
    • אם הפלט הוא yes, יש לכם הרשאות ליצור מכונה וירטואלית בפרויקט PROJECT.
    • אם הפלט הוא no, אין לכם הרשאות. פונים לאדמין של IAM בפרויקט ומבקשים את התפקיד Project VirtualMachine Admin ‏ (project-vm-admin) במרחב השמות של הפרויקט שבו נמצאת המכונה הווירטואלית.
  3. בודקים אם יש לכם גישה לתמונות של מכונות וירטואליות ברמת הפרויקט. מריצים את הפקודות של kubectl כדי לוודא שאפשר ליצור משאבים של VirtualMachineImage ולהשתמש בהם ברמת הפרויקט:

    kubectl --kubeconfig MANAGEMENT_API_SERVER auth can-i get virtualmachineimages.virtualmachine.gdc.goog -n PROJECT \
    kubectl --kubeconfig MANAGEMENT_API_SERVER auth can-i create virtualmachineimageimports.virtualmachine.gdc.goog -n PROJECT
    

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

    משתנה החלפה
    MANAGEMENT_API_SERVER נתיב השרת של Management API‏ kubeconfig
    PROJECT שם הפרויקט שבו יוצרים תמונות של מכונות וירטואליות
    • אם הפלט הוא yes, למשתמש יש הרשאות גישה לתמונות של מכונות וירטואליות בהתאמה אישית בפרויקט PROJECT.
    • אם הפלט הוא no, אין לכם הרשאות. פונים לאדמין של IAM בפרויקט ומבקשים את התפקיד Project VirtualMachine Image Admin ‏(project-vm-image-admin) במרחב השמות של הפרויקט שבו נמצא המכונה הווירטואלית.

מה השלב הבא?