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

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

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

  • מיקום אחסון שמוגדר כברירת מחדל.
  • לכל מיקום, מפתח ברירת מחדל של Cloud Key Management Service.

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

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

המסמך הזה לא רלוונטי למאגרי יומנים שבהם מאוחסנים נתוני יומנים. במאמר הגדרת הגדרות ברירת מחדל של משאבים ל-Cloud Logging מוסבר איך להגדיר מיקום ברירת מחדל או לדרוש מפתחות CMEK לקטגוריות של יומנים.

מדיניות ארגונית רלוונטית

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

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

איך מדיניות הארגון משפיעה על הגדרת מיקום ברירת מחדל

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

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

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

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

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

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

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

כן לא

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

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

לא כן

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

כן כן

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

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

בטבלה הבאה מפורטים הכללים שבהם המערכת משתמשת כדי לקבוע אם קטגוריית נתונים חדשה של יכולת התבוננות משתמשת ב-CMEK, ואם כן, מהו הערך של מפתח Cloud KMS. כדי להצפין קטגוריה של נתוני Observability, צריך שמפתח Cloud KMS יהיה במיקום של הקטגוריה ושהוא יהיה מורשה על ידי מדיניות הארגון. אם לא מציינים מדיניות ארגונית עם האילוץ gcp.restrictCmekCryptoKeyProjects, כל המפתחות מותרים:

שימוש במדיניות הארגון
כדי לדרוש שימוש ב-CMEK
לפרויקט (או לרכיב קודם) יש
מפתח Cloud KMS שמוגדר כברירת מחדל
איך המערכת קובעת באיזה מפתח Cloud KMS להשתמש.
לא לא

בקטגוריית ה-Observability לא נעשה שימוש במפתחות CMEK.

כן לא

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

לא כן

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

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

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

  • לא נמצא מפתח: המאגר החדש של נתוני הניטור לא משתמש ב-CMEK.
  • נמצא מפתח והוא מותר: המערכת יוצרת את מאגר התצפיות.
  • נמצא מפתח אבל הוא לא מותר: המערכת לא יוצרת את מאגר התצפית החדש.
כן כן

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

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

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

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

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

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

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

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

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

מגדירים את הפרויקט ואת תפקידי ה-IAM, ובוחרים את הממשק שבו רוצים להשתמש.

הגדרת הפרויקט והתפקידים

  1. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. כדי לקבל את ההרשאה שנדרשת להצגת הגדרות ברירת המחדל של קטגוריות של נתונים שניתן לצפות בהם בארגון, בתיקייה או בפרויקט, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ Observability Viewer (roles/observability.viewer) בארגון, בתיקייה או בפרויקט. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

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

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

בחירת הממשק שבו רוצים להשתמש

gcloud

במסוף Google Cloud , מפעילים את Cloud Shell.

הפעלת Cloud Shell

בחלק התחתון של Google Cloud המסוף יתחיל סשן של Cloud Shell ותופיע הודעה של שורת הפקודה. Cloud Shell היא סביבת מעטפת שבה ה-CLI של Google Cloud מותקן ומוגדרים ערכים לפרויקט הקיים. הסשן יופעל תוך כמה שניות.

Terraform

כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Terraform שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.

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

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

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

    gcloud auth application-default login

    אם אתם משתמשים ב-Cloud Shell, אין צורך לבצע את הפעולה הזו.

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

למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .

REST

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

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

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

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

אחזור מיקום האחסון שמוגדר כברירת מחדל למשאב

כדי לקבל את מיקום האחסון שמוגדר כברירת מחדל למשאב, שולחים פקודה לנקודת קצה ספציפית למשאב ומגדירים את המיקום של הפקודה ל-global. נתוני התגובה כוללים את מיקום האחסון שמוגדר כברירת מחדל ואת השם של חשבון שירות. אם נדרש CMEK למשאב, חשבון השירות הזה משמש לאחזור מפתחות Cloud KMS.

gcloud

לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:

כדי להעביר לפקודה את המזהה של הפרויקט, התיקייה או הארגון שרוצים לשלוח לגביהם שאילתה, משתמשים באחת מהאפשרויות הבאות:
  • --project=PROJECT_ID, כאשר PROJECT_ID מכיל את מזהה הפרויקט.
  • --folder=FOLDER_ID, כאשר FOLDER_ID מכיל את מזהה התיקייה.
  • --organization=ORGANIZATION_ID, כאשר ORGANIZATION_ID מכיל את המזהה של הארגון.
מגדירים את `default_storage_location` ל[מיקום נתמך](/stackdriver/docs/observability/observability-bucket-locations)

מריצים את הפקודה gcloud beta observability settings describe:

‫Linux,‏ macOS או Cloud Shell

gcloud beta observability settings describe \
 --location=global --project=PROJECT_ID

‏Windows (PowerShell)

gcloud beta observability settings describe `
 --location=global --project=PROJECT_ID

Windows‏ (cmd.exe)

gcloud beta observability settings describe ^
 --location=global --project=PROJECT_ID

בדוגמה הבאה מוצגת התגובה של הפקודה:

Parsed [location] resource: projects/my-project/locations/global
defaultStorageLocation: eu
name: projects/my-project/locations/global/settings
serviceAccountId: service-12345@gcp-sa-observability.iam.gserviceaccount.com

Terraform

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

REST

  1. כדי להציג את הגדרות ברירת המחדל של משאב מסוים, בוחרים את נקודת הקצה המתאימה וב-APIs Explorer, מציינים את פרמטר הנתיב:

    ארגון:

    תיקייה:

    פרויקט:

    המשמעות של המשתנים בביטויים הקודמים היא:

  2. לוחצים על Execute.

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

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

    • מיקום האחסון שמוגדר כברירת מחדל הוא "us":

      default_storage_location: "us"
      service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
      
    • לא הוגדר מיקום אחסון שמוגדר כברירת מחדל:

      service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
      

אחזור של מפתח ברירת המחדל של Cloud KMS למשאב ולמיקום

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

בקטע הזה מוסבר איך מקבלים את מפתח ברירת המחדל של Cloud KMS עבור משאב ומיקום.

gcloud

לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:

  • LOCATION: המיקום של מפתח Cloud KMS של המשאב. המשאב הוא פרויקט, תיקייה או ארגון. אם מגדירים את המיקום ל-global, הפקודה מחזירה את מיקום האחסון שמוגדר כברירת מחדל למשאב.
  • כדי להעביר לפקודה את המזהה של הפרויקט, התיקייה או הארגון שרוצים לשלוח להם שאילתה, משתמשים באחת מהאפשרויות הבאות:
    • --project=PROJECT_ID, כאשר PROJECT_ID מכיל את מזהה הפרויקט.
    • --folder=FOLDER_ID, כאשר FOLDER_ID מכיל את מזהה התיקייה.
    • --organization=ORGANIZATION_ID, כאשר ORGANIZATION_ID מכיל את המזהה של הארגון.

מריצים את הפקודה gcloud beta observability settings describe:

‫Linux,‏ macOS או Cloud Shell

gcloud beta observability settings describe \
 --location=LOCATION --project=PROJECT_ID

‏Windows (PowerShell)

gcloud beta observability settings describe `
 --location=LOCATION --project=PROJECT_ID

Windows‏ (cmd.exe)

gcloud beta observability settings describe ^
 --location=LOCATION --project=PROJECT_ID

בדוגמה הבאה מוצגת התגובה של הפקודה:

Parsed [location] resource: projects/my-project/locations/us
kmsKeyName: projects/my-project/locations/us/keyRings/test/cryptoKeys/test-key
name: projects/my-project/locations/us/settings
serviceAccountId: service-12345@gcp-sa-observability.iam.gserviceaccount.com

Terraform

אתם יכולים להשתמש ב-Terraform כדי להגדיר מפתח ברירת מחדל של Cloud Key Management Service למיקום ולמשאב, שהוא פרויקט, תיקייה או ארגון. אי אפשר להשתמש ב-Terraform כדי לדווח על מיקום האחסון שמוגדר כברירת מחדל למשאב.

REST

  1. כדי להציג את הגדרות ברירת המחדל של משאב מסוים, בוחרים את נקודת הקצה המתאימה וב-APIs Explorer, מציינים את פרמטר הנתיב:

    ארגון:

    תיקייה:

    פרויקט:

    המשמעות של המשתנים בביטויים הקודמים היא:

    • ORGANIZATION_ID: המזהה המספרי הייחודי של הארגון. במאמר איך מוצאים את מספר הארגון מוסבר איך לקבל את המזהה הזה.
    • FOLDER_ID: המזהה המספרי הייחודי של התיקייה. מידע על השימוש בתיקיות זמין במאמר יצירה וניהול של תיקיות.
    • PROJECT_ID: מזהה הפרויקט.
    • LOCATION_ID: המיקום שרוצים לראות את הגדרות ה-CMEK שלו.
  2. לוחצים על Execute.

    אם הפעולה בוצעה ללא שגיאות, התגובה היא אובייקט Settings.

    לדוגמה, אם מריצים את הפקודה getSettings ומגדירים את פרמטר הנתיב ל-organizations/ORGANIZATION_ID/locations/LOCATION_ID/settings, התגובה תהיה דומה לאחת מהתגובות הבאות:

    • אם לא מוגדר מפתח Cloud KMS לארגון ולמיקום, בתגובה מופיע רק חשבון שירות:

      service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
      
    • כשמגדירים את מפתח Cloud KMS לארגון ולמיקום, התגובה כוללת חשבון שירות ואת שם מפתח Cloud KMS:

      name: "organizations/ORGANIZATION_ID/locations/LOCATION_ID/settings"
      service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
      kms_key_name: "projects/my-kms-project/locations/LOCATION_ID/keyRings/my-key-ring/cryptoKeys/my-key"
      

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

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

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

ההוראות האלה מיועדות ל-APIs Explorer, שמאפשר להנפיק פקודות API מדף תיעוד. אבל אפשר גם להשתמש בפקודה curl.

הגדרות לדוגמה

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

דרישה שקטגוריות חדשות יהיו במיקום ספציפי

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

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

דרישה שקטגוריות חדשות יהיו במיקום ספציפי וישתמשו ב-CMEK

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

  1. מגדירים את הגדרות ברירת המחדל של קטגוריות לניראות (observability) בארגון ואת המיקום us כדי לציין מפתח Cloud KMS.

  2. הגדרת מיקום האחסון שמוגדר כברירת מחדל בארגון ל-us.

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

אם אתם מתכננים להגדיר רק את מיקום האחסון שמוגדר כברירת מחדל, אתם לא צריכים תפקידים ב-Cloud KMS.

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

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

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

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

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

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

    • observability.settings.get
    • observability.settings.update
    • cloudkms.cryptoKeys.getIamPolicy
    • cloudkms.cryptoKeys.setIamPolicy

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

  3. אם אתם מתכננים לדרוש שימוש ב-CMEK, אתם צריכים לוודא שיש לכם מפתח Cloud KMS במיקום הנדרש. אם צריך, יוצרים אוסף מפתחות של Cloud KMS ומפתח של Cloud KMS.

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

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

הענקת גישה למפתח לחשבון השירות של המשאב

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

  1. מזהים את מפתח Cloud KMS שבו רוצים להשתמש להצפנה ולפענוח.

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

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

    לדוגמה, אם רוצים שכל קטגוריות הנתונים החדשות של מערכת ה-Observability בארגון יהיו במיקום us וישתמשו ב-CMEK, צריך להוציא קריאה getSettings למיקום global ולהגדיר את פרמטר הנתיב לארגון. נתוני התגובה מציגים את חשבון השירות של הארגון:

    service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
    
  3. נותנים לחשבון השירות שזיהיתם בשלב הקודם את התפקיד Cloud KMS CryptoKey Encrypter/Decrypter (roles.cloudkms.cryptoKeyEncrypterDecrypter) בשביל מפתח Cloud KMS שבו רוצים להשתמש להצפנה ולפענוח של נתונים.

    קישור התפקיד הזה הוא למפתח Cloud KMS ספציפי.

    gcloud

    מריצים את הפקודה gcloud kms keys add-iam-policy-binding:

    gcloud kms keys add-iam-policy-binding KMS_KEY_NAME \
    --project=KMS_PROJECT_ID \
    --member=serviceAccount:SERVICE_ACCT_NAME@gcp-sa-observability.iam.gserviceaccount.com \
    --role=roles/cloudkms.cryptoKeyEncrypterDecrypter \
    --location=LOCATION_ID \
    --keyring=KMS_KEY_RING
    

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

    • KMS_KEY_NAME: שם המפתח.
    • KMS_PROJECT_ID: המזהה האלפאנומרי הייחודי, שמורכב מ Google Cloud שם הפרויקט וממספר שהוקצה באופן אקראי, של הפרויקט Google Cloud שמריץ את Cloud KMS. במאמר זיהוי פרויקטים מוסבר איך מקבלים את המזהה הזה.
    • SERVICE_ACCT_NAME: השם של חשבון השירות של המשאב, שזיהיתם בשלב הקודם.
    • LOCATION_ID: המיקום של מפתח Cloud KMS.
    • KMS_KEY_RING: השם של אוסף המפתחות ב-Cloud KMS.

    המסוף

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

      מעבר אל 'ניהול מפתחות'

    2. בוחרים את השם של אוסף המפתחות שמכיל את המפתח.
    3. מסמנים את התיבה של המפתח.

      הכרטיסייה Permissions (הרשאות) מופיעה.

    4. בתיבת הדו-שיח Add members, מציינים את כתובת האימייל של חשבון השירות של Google Cloud Observability שרוצים להעניק לו גישה.

    5. בתפריט Select a role, בוחרים באפשרות Cloud KMS CryptoKey Encrypter/Decrypter.

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

הגדרת מפתח Cloud KMS שמשמש כברירת מחדל למשאב ולמיקום

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

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

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

gcloud

לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:

  • KMS_KEY_NAME: השם של מפתח Cloud KMS.
  • LOCATION: המיקום של מפתח Cloud KMS של המשאב. המשאב הוא פרויקט, תיקייה או ארגון. אם מגדירים את המיקום ל-global, הפקודה מחזירה את מיקום האחסון שמוגדר כברירת מחדל למשאב.
  • כדי להעביר לפקודה את המזהה של הפרויקט, התיקייה או הארגון שרוצים לשלוח להם שאילתה, משתמשים באחת מהאפשרויות הבאות:
    • --project=PROJECT_ID, כאשר PROJECT_ID מכיל את מזהה הפרויקט.
    • --folder=FOLDER_ID, כאשר FOLDER_ID מכיל את מזהה התיקייה.
    • --organization=ORGANIZATION_ID, כאשר ORGANIZATION_ID מכיל את המזהה של הארגון.

מריצים את הפקודה gcloud beta observability settings update:

‫Linux,‏ macOS או Cloud Shell

gcloud beta observability settings update \
 --kms-key-name=KMS_KEY_NAME \
 --update-mask=kms-key-name \
 --location=LOCATION --project=PROJECT_ID

‏Windows (PowerShell)

gcloud beta observability settings update `
 --kms-key-name=KMS_KEY_NAME `
 --update-mask=kms-key-name `
 --location=LOCATION --project=PROJECT_ID

Windows‏ (cmd.exe)

gcloud beta observability settings update ^
 --kms-key-name=KMS_KEY_NAME ^
 --update-mask=kms-key-name ^
 --location=LOCATION --project=PROJECT_ID

פקודת העדכון מפעילה פעולה ממושכת. בדוגמה הבאה מוצגת התגובה של הפקודה:

Parsed [location] resource: projects/my-project/locations/us
Request issued for: [us]
Waiting for operation [projects/my-project/locations/us/operations/operation-1775247021184-64e93e8161585-1a55612f-73382a5a] to complete...done.
Updated location [us].
'@type': type.googleapis.com/google.cloud.observability.v1.Settings
kmsKeyName: projects/my-project/locations/us/keyRings/test/cryptoKeys/test-key
name: projects/my-project/locations/us/settings
serviceAccountId: service-12345@gcp-sa-observability.iam.gserviceaccount.com

Terraform

כדי להגדיר מפתח ברירת מחדל של Cloud Key Management Service למיקום ולמשאב, צריך לבצע את הפעולות הבאות:

  1. בוחרים את משאב Terraform המתאים על סמך המשאב שרוצים להגדיר: Google Cloud

    ארגון:

    תיקייה:

    פרויקט:

  2. מגדירים את השדות הבאים:

    1. מגדירים את השדה location למיקום של מפתח Cloud KMS שמוגדר כברירת מחדל.
    2. מגדירים את השדה kms_key_name למפתח Cloud KMS.
  3. אחרי שמעדכנים את הקובץ main.tf, משדרגים את ההתקנה של Terraform:

    terraform -init upgrade
    

    השדרוג נחוץ כי משאבי Terraform הנדרשים הם בגרסת בטא.

REST

  1. בוחרים את נקודת הקצה המתאימה למשאב שרוצים להגדיר לו הגדרות ברירת מחדל, ואז מציינים את פרמטר הנתיב ב-APIs Explorer:

    ארגון:

    תיקייה:

    פרויקט:

    המשמעות של המשתנים בביטויים הקודמים היא:

    • ORGANIZATION_ID: המזהה המספרי הייחודי של הארגון. במאמר איך מוצאים את מספר הארגון מוסבר איך לקבל את המזהה הזה.
    • FOLDER_ID: המזהה המספרי הייחודי של התיקייה. מידע על השימוש בתיקיות זמין במאמר יצירה וניהול של תיקיות.
    • PROJECT_ID: מזהה הפרויקט.
    • LOCATION_ID: המיקום של מפתח Cloud KMS.
  2. מגדירים את השדה updateMask באופן הבא:

    updateMask=kmsKeyName
    
  3. מגדירים את Request body באופן הבא:

    {
      "kmsKeyName"="projects/KMS_PROJECT_ID/locations/LOCATION_ID/keyRings/KMS_KEY_RING/cryptoKeys/KMS_KEY_NAME"
    }
    

    לפני שמזינים את הערכים, מחליפים את הערכים הבאים:

    • KMS_PROJECT_ID: המזהה האלפאנומרי הייחודי, שמורכב מ Google Cloud שם הפרויקט וממספר שהוקצה באופן אקראי, של הפרויקט Google Cloud שמריץ את Cloud KMS. במאמר זיהוי פרויקטים מוסבר איך מקבלים את המזהה הזה.
    • LOCATION_ID: המיקום של מפתח Cloud KMS.
    • KMS_KEY_RING: השם של אוסף המפתחות ב-Cloud KMS.
    • KMS_KEY_NAME: שם המפתח.

    הערך של "kmsKeyName" הוא השם המלא של המפתח.

  4. לוחצים על Execute.

    אם הפעולה בוצעה ללא שגיאות, התגובה היא אובייקט Settings.

    לדוגמה, נניח שאתם מריצים את הפקודה updateSettings כדי להגדיר מפתח Cloud KMS, ומגדירים את פרמטר הנתיב ל-organizations/ORGANIZATION_ID/locations/LOCATION_ID/settings. התשובה תהיה דומה לתשובה הבאה:

    name: "organizations/ORGANIZATION_ID/locations/LOCATION_ID/settings"
    service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
    kms_key_name: "projects/KMS_PROJECT_ID/locations/LOCATION_ID/keyRings/KMS_KEY_RING/cryptoKeys/KMS_KEY_NAME"
    

הגדרת מיקום האחסון שמוגדר כברירת מחדל למשאב

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

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

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

  1. מקצים לחשבון השירות של המשאב את התפקיד ב-IAM שמאפשר לחשבון השירות להצפין ולפענח נתונים. ההרשאה הזו היא למפתח Cloud KMS ספציפי, והמפתח הזה נמצא במיקום ספציפי.
  2. מגדירים את הגדרות ברירת המחדל של קטגוריות של נתונים שניתנים לצפייה עבור המשאב ומיקום המפתח עם פרטי מפתח Cloud KMS.

gcloud

לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:

  • DEFAULT_STORAGE_LOCATION: מיקום האחסון שמוגדר כברירת מחדל לפרויקט, לתיקייה או לארגון. המיקום הזה חל על קטגוריות חדשות של נתונים שניתן לצפות בהם. צריך להזין מיקום נתמך של קטגוריית נתונים של יכולת התבוננות.
  • כדי להעביר לפקודה את המזהה של הפרויקט, התיקייה או הארגון שרוצים לשלוח להם שאילתה, משתמשים באחת מהאפשרויות הבאות:
    • --project=PROJECT_ID, כאשר PROJECT_ID מכיל את מזהה הפרויקט.
    • --folder=FOLDER_ID, כאשר FOLDER_ID מכיל את מזהה התיקייה.
    • --organization=ORGANIZATION_ID, כאשר ORGANIZATION_ID מכיל את המזהה של הארגון.

מריצים את הפקודה gcloud beta observability settings update:

‫Linux,‏ macOS או Cloud Shell

gcloud beta observability settings update \
 --default-storage-location=DEFAULT_STORAGE_LOCATION \
 --update-mask=default-storage-location \
 --location=global --project=PROJECT_ID

‏Windows (PowerShell)

gcloud beta observability settings update `
 --default-storage-location=DEFAULT_STORAGE_LOCATION `
 --update-mask=default-storage-location `
 --location=global --project=PROJECT_ID

Windows‏ (cmd.exe)

gcloud beta observability settings update ^
 --default-storage-location=DEFAULT_STORAGE_LOCATION ^
 --update-mask=default-storage-location ^
 --location=global --project=PROJECT_ID

פקודת העדכון מפעילה פעולה ממושכת. בדוגמה הבאה מוצגת התגובה של הפקודה:

Parsed [location] resource: projects/my-project/locations/global
Request issued for: [global]
Waiting for operation [projects/my-project/locations/global/operations/operation-1775247065869-64e93eabfee29-f7d39a96-5e23c6c7] to complete...done.
Updated location [global].
'@type': type.googleapis.com/google.cloud.observability.v1.Settings
defaultStorageLocation: us
name: projects/my-project/locations/global/settings
serviceAccountId: service-12345@gcp-sa-observability.iam.gserviceaccount.com

Terraform

כדי להגדיר מיקום ברירת מחדל:

  1. בוחרים את משאב Terraform המתאים על סמך המשאב שרוצים להגדיר: Google Cloud

    ארגון:

    תיקייה:

    פרויקט:

  2. מגדירים את השדות הבאים:

    1. מגדירים את השדה location לערך global.
    2. מגדירים את השדה default_storage_location למיקום נתמך.
  3. אחרי שמעדכנים את הקובץ main.tf, משדרגים את ההתקנה של Terraform:

    terraform -init upgrade
    

    השדרוג נדרש כי משאבי Terraform הנדרשים הם בטא.

REST

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

  1. בוחרים את נקודת הקצה המתאימה למשאב שרוצים להגדיר לו הגדרות ברירת מחדל, ואז מציינים את פרמטר הנתיב ב-APIs Explorer:

    ארגון:

    תיקייה:

    פרויקט:

    המשמעות של המשתנים בביטויים הקודמים היא:

  2. מגדירים את השדה updateMask באופן הבא:

    updateMask=defaultStorageLocation
    
  3. מגדירים את Request body באופן הבא:

    {
      "defaultStorageLocation"="DEFAULT_STORAGE_LOCATION"
    }
    

    מחליפים את DEFAULT_STORAGE_LOCATION במיקום נתמך של קטגוריית נתונים לצורך ניטור.

    לדוגמה, נניח שאתם רוצים שכל קטגוריות הנתונים החדשות של מערכת ה-Observability בארגון שלכם יהיו במיקום us וישתמשו ב-CMEK. בשלבים הקודמים הענקתם לחשבון השירות של הארגון תפקיד IAM שמאפשר לו להצפין ולפענח נתונים באמצעות מפתח Cloud KMS שנמצא במיקום us. כדי להשלים את ההגדרה, צריך להגדיר את DEFAULT_STORAGE_LOCATION לערך us.

  4. לוחצים על Execute.

    אם הפעולה בוצעה ללא שגיאות, התגובה היא אובייקט Settings.

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

    default_storage_location: "us"
    service_account_id: service-org-ORGANIZATION_ID@gcp-sa-observability.iam.gserviceaccount.com
    

עדכון מיקום האחסון שמוגדר כברירת מחדל למשאב

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

ניהול מפתחות Cloud KMS

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

עדכון מפתח ברירת המחדל של Cloud KMS למשאב ולמיקום

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

ביטול ההגדרה של מפתח Cloud KMS שמשמש כברירת מחדל למשאב ולמיקום

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

{
  "kmsKeyName"=""
}

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

  1. המערכת מחפשת בהגדרות ברירת המחדל של המשאב מפתח Cloud KMS למיקום שצוין. אם למשאב אין מפתח Cloud KMS שמוגדר כברירת מחדל, המערכת מחפשת מפתח Cloud KMS שמוגדר כברירת מחדל במשאבי האב של המשאב:

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

    • אם נמצא מפתח Cloud KMS, המפתח הזה משמש להצפנת הנתונים שמאוחסנים בקטגוריית הניראות החדשה.

    • אם לא נמצא מפתח Cloud KMS, אחת מהאפשרויות הבאות מתרחשת:

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

      • אם מדיניות הארגון לא קיימת, מאגר התצפיות החדש לא משתמש ב-CMEK.

ביטול גישה למשאב ולמיקום

כשמגדירים את הגדרות ברירת המחדל של קטגוריות של נתונים שניתנים לצפייה עבור משאב ומיקום עם מפתח Cloud KMS, צריך להעניק לחשבון השירות של המשאב את התפקיד Cloud KMS CryptoKey Encrypter/Decrypter ‏ (roles.cloudkms.cryptoKeyEncrypterDecrypter) עבור המפתח.

אם אתם לא רוצים שלמשאב תהיה גישה למפתח, אתם צריכים להסיר את הקישור של IAM למפתח הזה. כדי להסיר את הקישור הזה, מריצים את הפקודה gcloud kms keys remove-iam-policy-binding.

יכול להיות שיעברו כמה שעות עד שהשינוי בתפקיד יתעדכן באופן מלא.

התנהגות של רוטציית מפתחות

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

מידע נוסף זמין במאמר בנושא רוטציית מפתחות.

מגבלות

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

ירידה ברמת השירות בגלל חוסר זמינות של מפתח

‫Google Cloud Observability משתמש ב-Cloud KMS API כדי לגשת למפתחות Cloud KMS ולמפתחות Cloud EKM. יכול להיות ששני סוגי המפתחות לא יהיו זמינים.

אם מפתח הופך ללא זמין, קורים הדברים הבאים:

  • אי אפשר להריץ שאילתות על נתונים מאוחסנים.
  • ב-Google Cloud Observability יש מאגר זמני של הנתונים משלוש השעות האחרונות. יכול להיות שהמערכת תמחק נתונים ישנים יותר מחלון הזמן הזה של שלוש שעות.
  • כדי לאחסן נתונים באופן קבוע, מפתח Cloud KMS צריך להיות זמין ונגיש למשך 24 שעות רצופות לפחות בפרק הזמן של 48 שעות אחרי כתיבת הנתונים. אם מפתח Cloud KMS לא זמין ולא נגיש בתקופה הזו, יכול להיות שהנתונים לא יישמרו באופן מלא באחסון ויימחקו.

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