הגדרת מדיניות בנושא קובצי אימג' מהימנים

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

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

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

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

  • במאמר שימוש באילוצים מוסבר איך לנהל מדיניות ברמת הארגון.
  • מידע נוסף על האופן שבו מדיניות הארגון מועברת מופיע בדף הסבר על הערכה היררכית.
  • אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות. אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Cloud de Confiance by S3NS . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:

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

    המסוף

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

    gcloud

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

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

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

      התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.

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

מגבלות

  • כללי המדיניות בנושא קובצי אימג' מהימנים לא מגבילים את הגישה לתמונות הבאות:

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

הגדרת מגבלות גישה לתמונות

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

אפשר להגדיר אילוצים על כל התמונות הציבוריות שזמינות ב-Compute Engine. רשימה של שמות פרויקטים של תמונות זמינה במאמר פרטים על מערכות הפעלה. אפשר גם להגביל את תמונות ה-Machine Learning (ML) שזמינות ב-Compute Engine באמצעות הפרויקט ml-images. אם אתם משתמשים בServerless VPC Access, צריך לתת לפרויקט הרשאה להשתמש בתמונות של מכונות וירטואליות של Compute Engine מהפרויקט serverless-vpc-access-images.

משתמשים במסוף Google Cloud או ב-Google Cloud CLI כדי להגדיר אילוצים על הגישה לתמונות. Cloud de Confiance

המסוף

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

  1. עוברים לדף מדיניות הארגון.

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

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

  3. בדף פרטי המדיניות, לוחצים על ניהול המדיניות. יופיע הדף עריכת מדיניות.

  4. בדף עריכת מדיניות, בוחרים באפשרות התאמה אישית.

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

  6. לוחצים על הוספת כלל.

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

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

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

      1. ברשימה Policy type (סוג המדיניות), בוחרים באפשרות Allow (אישור) או Deny (דחייה).
      2. בשדה ערכים מותאמים אישית, מזינים את שם פרויקט התמונות בפורמט projects/IMAGE_PROJECT.

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

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

  8. כדי לשמור את הכלל, לוחצים על סיום.

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

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

gcloud

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

  1. כדי לקבל את הגדרות המדיניות הקיימות של הפרויקט, משתמשים בפקודה resource-manager org-policies describe.

    gcloud resource-manager org-policies describe \
       compute.trustedImageProjects --project=PROJECT_ID \
       --effective > policy.yaml
    

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

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

    constraint: constraints/compute.trustedImageProjects
    listPolicy:
     allowedValues:
        - projects/debian-cloud
        - projects/cos-cloud
     deniedValues:
        - projects/IMAGE_PROJECT
    

    מחליפים את IMAGE_PROJECT בשם של פרויקט האימג' שרוצים להגביל בפרויקט.

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

    constraint: constraints/compute.trustedImageProjects
    listPolicy:
     allValues: DENY
    

  3. מחילים את קובץ policy.yaml על הפרויקט. אם בארגון או בתיקייה שלכם יש אילוצים קיימים, יכול להיות שהאילוצים האלה יתנגשו עם אילוצים ברמת הפרויקט שהגדרתם. כדי להחיל את האילוץ, משתמשים בפקודה resource-manager org-policies set-policy.

    gcloud resource-manager org-policies set-policy \
       policy.yaml --project=PROJECT_ID
    

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

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

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