הגדרת מדיניות באמצעות מסוף Google Cloud

בדף הזה מוסבר איך להגדיר מדיניות של Binary Authorization באמצעות Google Cloud המסוף. אפשר גם לבצע את המשימות האלה באמצעות Google Cloud CLI או API בארכיטקטורת REST. השלב הזה הוא חלק מהגדרת Binary Authorization.

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

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

  1. מפעילים את Binary Authorization.

  2. מפעילים Binary Authorization לפלטפורמה:

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

  4. בוחרים את מזהה הפרויקט שבו הפעלתם את Binary Authorization.

הגדרת כלל ברירת המחדל

החלק הזה רלוונטי ל-GKE,‏ GKE Multi-Cloud,‏ Distributed Cloud,‏ Cloud Run ו-Cloud Service Mesh.

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

כדי להגדיר את כלל ברירת המחדל:

  1. במסוףGoogle Cloud , עוברים לדף Binary Authorization.

    כניסה לדף Binary Authorization

  2. לוחצים על הכרטיסייה מדיניות.

  3. לוחצים על עריכת המדיניות.

  4. מגדירים את מצב ההערכה לכלל ברירת המחדל.

    מצב ההערכה מציין את סוג האילוץ ש-Binary Authorization אוכף בזמן הפריסה. כדי להגדיר את מצב ההערכה, בוחרים באחת מהאפשרויות הבאות:

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

    אם בחרתם באפשרות Allow only images that have been approved by the following attestors (הגישה מותרת רק לתמונות שאושרו על ידי המאשרים הבאים):

    1. אחזור השם או מזהה המשאב של המאשר.

      בדף Attestors במסוףGoogle Cloud , אפשר לראות את ה-attestors הקיימים או ליצור חדש.

      כניסה לדף Binary Authorization Attestors

    2. לוחצים על הוספת מאשרים.

    3. בוחרים באחת מהאפשרויות הבאות:

      • הוספה לפי שם הפרויקט והמאשר

        הפרויקט מתייחס למזהה הפרויקט שבו מאוחסנים המאמתים. דוגמה לשם מאמת: build-qa.

      • הוספה לפי מזהה משאב של גורם מאמת (attestor)

        מזהה משאב הוא בפורמט:

        projects/PROJECT_ID/attestors/ATTESTOR_NAME
        
    4. בקטע מאשרים, מזינים את הערכים המתאימים לאפשרות שבחרתם.

    5. אם רוצים להוסיף עוד מאמתים, לוחצים על הוספת מאמת נוסף.

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

כדי להפעיל את מצב הפרימטר לבדיקות, צריך לבצע את הפעולות הבאות:

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

  2. לוחצים על שמירת המדיניות.

הגדרת כללים ספציפיים לאשכול (אופציונלי)

הסעיף הזה חל על GKE,‏ Distributed Cloud ו-Cloud Service Mesh.

בנוסף, מדיניות יכולה לכלול כללים ספציפיים לאשכול אחד או יותר. הכלל הזה חל על תמונות קונטיינרים שייפרסו רק באשכולות ספציפיים של Google Kubernetes Engine‏ (GKE). כללים ספציפיים לאשכול הם חלק אופציונלי במדיניות.

הוספת כלל ספציפי לאשכול (GKE)

הסעיף הזה רלוונטי ל-GKE ול-Distributed Cloud.

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

  1. במסוףGoogle Cloud , עוברים לדף Binary Authorization.

    כניסה לדף Binary Authorization

  2. לוחצים על הכרטיסייה מדיניות.

  3. לוחצים על עריכת המדיניות.

  4. מרחיבים את הקטע הגדרות נוספות לפריסות GKE.

  5. אם לא מוגדר סוג כלל ספציפי, לוחצים על יצירת כללים ספציפיים.

    1. כדי לבחור את סוג הכלל, לוחצים על סוג כלל ספציפי.

    2. כדי לשנות את סוג הכלל, לוחצים על שינוי.

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

  7. בשדה Cluster resource ID (מזהה משאב של אשכול), מזינים את מזהה המשאב של האשכול.

    מזהה המשאב של האשכול הוא בפורמט LOCATION.NAME, לדוגמה, us-central1-a.test-cluster.

  8. מגדירים את מצב ההערכה לכלל ברירת המחדל.

    מצב ההערכה מציין את סוג האילוץ ש-Binary Authorization אוכף בזמן הפריסה. כדי להגדיר את מצב ההערכה, בוחרים באחת מהאפשרויות הבאות:

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

    אם בחרתם באפשרות Allow only images that have been approved by the following attestors (הגישה מותרת רק לתמונות שאושרו על ידי המאשרים הבאים):

    1. אחזור השם או מזהה המשאב של המאשר.

      בדף Attestors במסוףGoogle Cloud , אפשר לראות את ה-attestors הקיימים או ליצור חדש.

      כניסה לדף Binary Authorization Attestors

    2. לוחצים על הוספת מאשרים.

    3. בוחרים באחת מהאפשרויות הבאות:

      • הוספה לפי שם הפרויקט והמאשר

        הפרויקט מתייחס למזהה הפרויקט שבו מאוחסנים המאמתים. דוגמה לשם מאמת: build-qa.

      • הוספה לפי מזהה משאב של גורם מאמת (attestor)

        מזהה משאב הוא בפורמט:

        projects/PROJECT_ID/attestors/ATTESTOR_NAME
        
    4. בקטע מאשרים, מזינים את הערכים המתאימים לאפשרות שבחרתם.

    5. אם רוצים להוסיף עוד מאמתים, לוחצים על הוספת מאמת נוסף.

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

  9. לוחצים על הוספה כדי להוסיף את הכלל הספציפי לאשכול.

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

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

  11. לוחצים על שמירת המדיניות.

הוספת כלל ספציפי לאשכול (GKE Multi-Cloud,‏ Distributed Cloud)

הקטע הזה רלוונטי ל-Distributed Cloud.

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

  1. במסוףGoogle Cloud , עוברים לדף Binary Authorization.

    כניסה לדף Binary Authorization

  2. לוחצים על הכרטיסייה מדיניות.

  3. לוחצים על עריכת המדיניות.

  4. מרחיבים את הקטע הגדרות נוספות לפריסות GKE.

  5. אם לא מוגדר סוג כלל ספציפי, לוחצים על יצירת כללים ספציפיים.

    1. כדי לבחור את סוג הכלל, לוחצים על סוג כלל ספציפי.

    2. כדי לעדכן את סוג הכלל, לוחצים על שינוי.

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

  7. בשדה Cluster resource ID (מזהה משאב של אשכול), מזינים את מזהה המשאב של האשכול.

    • באשכולות GKE מצורפים וב-GKE ב-AWS, הפורמט הוא CLUSTER_LOCATION.CLUSTER_NAME, לדוגמה, us-central1-a.test-cluster.
    • ב-Google Distributed Cloud וב-Google Distributed Cloud, הפורמט הוא FLEET_MEMBERSHIP_LOCATION.FLEET_MEMBERSHIP_ID – לדוגמה, global.test-membership.
  8. מגדירים את מצב ההערכה לכלל ברירת המחדל.

    מצב ההערכה מציין את סוג האילוץ ש-Binary Authorization אוכף בזמן הפריסה. כדי להגדיר את מצב ההערכה, בוחרים באחת מהאפשרויות הבאות:

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

    אם בחרתם באפשרות Allow only images that have been approved by the following attestors (הגישה מותרת רק לתמונות שאושרו על ידי המאשרים הבאים):

    1. אחזור השם או מזהה המשאב של המאשר.

      בדף Attestors במסוףGoogle Cloud , אפשר לראות את ה-attestors הקיימים או ליצור חדש.

      כניסה לדף Binary Authorization Attestors

    2. לוחצים על הוספת מאשרים.

    3. בוחרים באחת מהאפשרויות הבאות:

      • הוספה לפי שם הפרויקט והמאשר

        הפרויקט מתייחס למזהה הפרויקט שבו מאוחסנים המאמתים. דוגמה לשם מאמת: build-qa.

      • הוספה לפי מזהה משאב של גורם מאמת (attestor)

        מזהה משאב הוא בפורמט:

        projects/PROJECT_ID/attestors/ATTESTOR_NAME
        
    4. בקטע מאשרים, מזינים את הערכים המתאימים לאפשרות שבחרתם.

    5. אם רוצים להוסיף עוד מאמתים, לוחצים על הוספת מאמת נוסף.

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

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

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

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

  11. לוחצים על שמירת המדיניות.

הוספת כללים ספציפיים

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

  1. במסוףGoogle Cloud , עוברים לדף Binary Authorization.

    כניסה לדף Binary Authorization

  2. לוחצים על הכרטיסייה מדיניות.

  3. לוחצים על עריכת המדיניות.

  4. מרחיבים את הקטע הגדרות נוספות לפריסות של GKE ו-Anthos.

  5. אם לא מוגדר סוג כלל ספציפי, לוחצים על יצירת כללים ספציפיים.

    1. לוחצים על סוג כלל ספציפי כדי לבחור את סוג הכלל.

    2. לוחצים על שינוי כדי לעדכן את סוג הכלל.

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

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

    • זהות שירות ASM: מזינים את זהות שירות ASM בפורמט הבא: PROJECT_ID.svc.id.goog/ns/NAMESPACE/sa/SERVICE_ACCOUNT
    • חשבון שירות של Kubernetes: מזינים את חשבון השירות של Kubernetes, שמופיע בפורמט הבא: NAMESPACE:SERVICE_ACCOUNT.
    • מרחב שמות Kubernetes: מזינים את מרחב השמות של Kubernetes, שמופיע בפורמט הבא: NAMESPACE

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

    • PROJECT_ID: מזהה הפרויקט שבו מוגדרים משאבי Kubernetes.
    • NAMESPACE: מרחב השמות של Kubernetes.
    • SERVICE_ACCOUNT: חשבון השירות.
  8. מגדירים את מצב ההערכה לכלל ברירת המחדל.

    מצב ההערכה מציין את סוג האילוץ ש-Binary Authorization אוכף בזמן הפריסה. כדי להגדיר את מצב ההערכה, בוחרים באחת מהאפשרויות הבאות:

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

    אם בחרתם באפשרות Allow only images that have been approved by the following attestors (הגישה מותרת רק לתמונות שאושרו על ידי המאשרים הבאים):

    1. אחזור השם או מזהה המשאב של המאשר.

      בדף Attestors במסוףGoogle Cloud , אפשר לראות את ה-attestors הקיימים או ליצור חדש.

      כניסה לדף Binary Authorization Attestors

    2. לוחצים על הוספת מאשרים.

    3. בוחרים באחת מהאפשרויות הבאות:

      • הוספה לפי שם הפרויקט והמאשר

        הפרויקט מתייחס למזהה הפרויקט שבו מאוחסנים המאמתים. דוגמה לשם מאמת: build-qa.

      • הוספה לפי מזהה משאב של גורם מאמת (attestor)

        מזהה משאב הוא בפורמט:

        projects/PROJECT_ID/attestors/ATTESTOR_NAME
        
    4. בקטע מאשרים, מזינים את הערכים המתאימים לאפשרות שבחרתם.

    5. אם רוצים להוסיף עוד מאמתים, לוחצים על הוספת מאמת נוסף.

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

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

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

  11. לוחצים על שמירת המדיניות.

ניהול תמונות מוחרגות

החלק הזה רלוונטי ל-GKE,‏ Distributed Cloud,‏ Cloud Run ו-Cloud Service Mesh.

תמונה שמוחרגת היא תמונה שמוגדרת באמצעות נתיב, ומוחרגת מכללי המדיניות. ‫Binary Authorization תמיד מאפשרת פריסה של תמונות שמוחרגות.

הנתיב הזה יכול לציין מיקום ב-Container Registry או במאגר אחר של קובצי אימג' של קונטיינרים.

Cloud Run

הקטע הזה רלוונטי ל-Cloud Run.

אי אפשר לציין ישירות שמות של תמונות שמכילים תג. לדוגמה, אי אפשר לציין את הערך IMAGE_PATH:latest.

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

  • * לכל הגרסאות של תמונה אחת. לדוגמה, us-docker.pkg.dev/myproject/container/hello@*
  • ** לכל התמונות בפרויקט, למשל us-docker.pkg.dev/myproject/**

אפשר להשתמש בשמות נתיבים כדי לציין תקציר בפורמט IMAGE_PATH@DIGEST.

הפעלת מדיניות המערכת

הסעיף הזה רלוונטי ל-GKE ול-Distributed Cloud.

Trust all Google-provided system images (הוספת אמון לכל קובצי האימג' של המערכת שסופקו על ידי Google) היא הגדרת מדיניות שמפעילה את מדיניות המערכת של Binary Authorization. כשההגדרה הזו מופעלת בזמן הפריסה, Binary Authorization פוטר מרשימה של תמונות מערכת שמתוחזקות על ידי Google ונדרשות על ידי GKE, מהערכה נוספת של מדיניות. המדיניות של המערכת מוערכת לפני כל הגדרות המדיניות האחרות.

כדי להפעיל את מדיניות המערכת:

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

    מעבר אל Binary Authorization

  2. לוחצים על עריכת המדיניות.

  3. מרחיבים את הקטע הגדרות נוספות לפריסות של GKE ו-Anthos.

  4. בקטע Google system image exemption (פטור מתמונות מערכת של Google), בוחרים באפשרות Trust all Google provided system images (הוספת כל תמונות המערכת שסופקו על ידי Google לרשימת האמון).

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

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

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

  6. לוחצים על שמירת המדיניות.

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