אבטחה של סביבת ההפעלה
בדף הזה תמצאו מידע משלים על מדיניות עדכוני האבטחה בפונקציות שנוצרו באמצעות פקודות gcloud functions או באמצעות Cloud Functions v2 API.
תיאור מפורט של אופן ההגדרה של עדכונים אוטומטיים לתמונות הבסיסיות, כולל סביבות זמן הריצה של השפה, חבילת מערכת ההפעלה ומערכת ההפעלה, מופיע במסמך Cloud Run הגדרת עדכונים אוטומטיים של תמונות בסיסיות.
תמונות נטענות לאפקט
לכל זמן ריצה משויכת תמונת זמן ריצה (שנקראת גם תמונת הפעלה) במאגר ציבורי ב-Artifact Registry. רשימת מזהי זמן הריצה ותמונות זמן הריצה שלהם מופיעה במאמר בנושא זמני ריצה.
זיהוי תמונת זמן הריצה
כדי לזהות את תמונת זמן הריצה ששימשה ליצירת הפונקציה, בודקים את יומני הבנייה של הפונקציה.
ביומני הבנייה, מחפשים את google.run-image. כך תוכלו לראות את רשומת היומן משלב ה-build שמתארת את הגרסה של תמונת זמן הריצה ששימשה ליצירת ה-build של הפונקציה. לדוגמה, רשומה ביומן של פונקציית Node.js יכולה להיראות כך:
{
...
"textPayload": "Step #2 - \"build\": Adding image label google.run-image:
us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/runtimes/nodejs22:nodejs20_20230924_20_6_1_RC00",
...
}
מדיניות עדכוני אבטחה
אפשר לבחור באחת ממדיניות עדכוני האבטחה הבאות:
עדכונים אוטומטיים (ברירת מחדל): עדכונים ותיקוני אבטחה לסביבת זמן הריצה מתפרסמים בגרסאות חדשות של תמונת זמן הריצה. אחרי תקופת בדיקות של היציבות והאמינות, זמן הריצה המעודכן מופץ לכל הפונקציות, וכתוצאה מכך מתבצע עדכון ללא השבתה. עדכוני אבטחה אוטומטיים זמינים בפונקציות Cloud Run (דור ראשון) ובפונקציות Cloud Run. כדי להחיל תיקוני אבטחה ברמת השפה, יכול להיות שתצטרכו לבנות מחדש פונקציות שמשתמשות בשפות שעברו קומפילציה כמו Go או Java.
במהלך פריסת עדכונים: עדכונים ותיקוני אבטחה מוחלים על סביבות זמן ריצה רק כשפורסים או פורסים מחדש פונקציות, אלא אם צוין אחרת. עדכונים לגבי פריסה זמינים גם בפונקציות Cloud Run (דור ראשון) וגם בפונקציות Cloud Run.
אפשר לשנות את מדיניות העדכון של זמן הריצה באמצעות --runtime-update-policy
הדגל בפקודה gcloud functions deploy.
כברירת מחדל, עדכוני אבטחה אוטומטיים מופעלים לפונקציות שנפרסו באמצעות:
gcloud functions- Cloud Functions v2 API
-
gcloud runעם הדגל--functionsוהדגל--base-image
הגדרת מדיניות העדכון של הפונקציה
כדי לשנות את מדיניות העדכון של הפונקציה, משתמשים בפקודה הבאה:
gcloud functions deploy FUNCTION_NAME \
--runtime-update-policy=POLICY ...
מחליפים את:
- FUNCTION_NAME בשם הפונקציה
- POLICY עם
automaticאוon-deploy
בדיקת מדיניות העדכון של הפונקציה
אפשר לבדוק את מדיניות העדכון של הפונקציה באמצעות הפקודה הבאה:
gcloud functions describe FUNCTION_NAME \
כאשר FUNCTION_NAME הוא שם הפונקציה
- פונקציות שמופעלים בהן עדכוני אבטחה אוטומטיים יכללו את המקש
automaticUpdatePolicy - פונקציות שמתעדכנות בזמן הפריסה יכללו את המפתח
onDeployUpdatePolicy
סריקות אבטחה בפונקציות Cloud Run
פונקציות Cloud Run שמופעל בהן עדכון אוטומטי מבוססות על תמונת scratch. כתוצאה מכך, לקונטיינר שמייצג את הפונקציה שלכם ב-Artifact Registry לא יהיה קובץ אימג' בסיסי, והוא יהיה קטן משמעותית מפונקציות שמשתמשות בעדכונים בזמן הפריסה. קובץ הבסיס משולב עם קובץ הפונקציה בזמן הריצה כדי ליצור פונקציה מלאה. מידע נוסף זמין במאמר בנושא פיתוח על גבי scratch.