צבירה ואחסון של היומנים של הארגון

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

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

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

חשוב לוודא את הדברים הבאים:

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

    • כדי ליצור את הכיור המצטבר: כותב הגדרות של יומנים (roles/logging.configWriter) בארגון
    • כדי להעניק לחשבון שירות תפקידי IAM וליצור מאגר יומנים: בעלים (roles/owner) בפרויקט

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

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

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

    הפעלת Cloud Shell

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

יצירת קטגוריה של יומנים

מאגרי יומנים מאחסנים את רשומות היומן שמנותבות מGoogle Cloud פרויקטים, תיקיות או ארגונים אחרים. מידע נוסף מופיע במאמר הגדרת קטגוריות ביומן.

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

  1. פותחים מעטפת.

    לדוגמה, כדי להשתמש ב-Cloud Shell:

    1. נכנסים למסוף Google Cloud :

      כניסה למסוף Google Cloud

    2. בסרגל הכלים, לוחצים על  הפעלת Cloud Shell.
  2. במעטפת, מריצים את הפקודה gcloud logging buckets create.

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

    • ‫BUCKET_NAME: השם של מאגר היומנים.
    • ‫LOCATION: המיקום של קטגוריית היומנים. אחרי שיוצרים את קטגוריית היומנים, אי אפשר לשנות את המיקום שלה.
    • ‫PROJECT_ID: המזהה של הפרויקט שבו רוצים ליצור את קטגוריית היומנים.

    מריצים את הפקודה gcloud logging buckets create:

    gcloud logging buckets create BUCKET_NAME \
      --location=LOCATION --project=PROJECT_ID
    
  3. מוודאים שקטגוריית היומן נוצרה:

    gcloud logging buckets list --project=PROJECT_ID
    

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

  4. אפשר להגדיר תקופות שמירה לקטגוריות של יומנים. כדי להגדיר את תקופת השמירה של הרשומות ב-log bucket, משתמשים בפקודה gcloud logging buckets update. לדוגמה, הפקודה הבאה מאריכה את משך השמירה של רשומות היומן שמאוחסנות בקטגוריית היומנים ל-365 ימים:

    gcloud logging buckets update BUCKET_NAME \
       --location=LOCATION --project=PROJECT_ID \
       --retention-days=365
    

    מידע נוסף על דגלים זמין במאמר gcloud logging buckets update.

יצירת sink ביומן ברמת הפרויקט

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

כדי ליצור כיור שמנתב רשומות יומן למאגר היומנים שיצרתם, מריצים את הפקודה gcloud logging sinks create.

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

  • ‫PROJECT_LEVEL_SINK_NAME: השם של sink היומן ברמת הפרויקט.
  • ‫SINK_DESTINATION: קטגוריית היומנים שאליה מנותבות רשומות היומן. יעדי ה-sink חייבים להשתמש בנקודת הקצה הגלובלית (logging.googleapis.com). אין תמיכה בנקודות קצה אזוריות (REP). הפורמט של נתיב היעד של קטגוריית יומנים הוא:

    logging.googleapis.com/projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME
    
  • ‫PROJECT_ID: המזהה של הפרויקט שבו רוצים ליצור את sink ביומן. מגדירים את הדגל הזה לאותו פרויקט שבו יצרתם את קטגוריית היומנים.

  • כוללים את הדגלים הבאים:

    • ‫--log-filter: משתמשים בדגל הזה כדי להגדיר מסנן שתואם לרשומות ביומן שרוצים לכלול במאגר. במדריך הזה, המסנן מוגדר לבחור את כל הרשומות ביומן הביקורת. אם לא מגדירים מסנן, כל רשומות היומן מהפרויקט ב- Google Cloud מנותבות ליעד.
    • ‫--description: משתמשים בדגל הזה כדי לתאר את המטרה או את תרחיש השימוש של הכיור.

מריצים את הפקודה gcloud logging sinks create:

gcloud logging sinks create PROJECT_LEVEL_SINK_NAME SINK_DESTINATION \
  --project=PROJECT_ID \
  --log-filter='logName:cloudaudit.googleapis.com' \
  --description="Audit logs from my organization"

יצירת יעד מצטבר

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

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

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

הגדרת הכיור ברמת הארגון

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

  1. מריצים את הפקודה gcloud logging sinks create.

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

    • ‫SINK_NAME: השם של ה-sink ביומן. אי אפשר לשנות את השם של מאגר אחרי שיוצרים אותו.
    • ‫PROJECT_ID: מזהה הפרויקט שבו מאוחסן מאגר היומנים.
    • ‫ORGANIZATION_ID: המזהה של הארגון.

    מריצים את הפקודה gcloud logging sinks create:

    gcloud logging sinks create SINK_NAME \
      logging.googleapis.com/projects/PROJECT_ID  \
      --log-filter='logName:cloudaudit.googleapis.com' \
      --description="Audit logs from my organization" \
      --organization=ORGANIZATION_ID \
      --include-children
    

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

  2. מוודאים שהכיור נוצר:

    gcloud logging sinks list --organization=ORGANIZATION_ID
    
  3. משיגים את השם של חשבון השירות:

    gcloud logging sinks describe SINK_NAME --organization=ORGANIZATION_ID
    

    הפלט אמור להיראות כך:

    writerIdentity: serviceAccount:o1234567890-ORGANIZATION_ID@gcp-sa-logging.iam.gserviceaccount.com
    
  4. מעתיקים את הערך של השדה serviceAccount ללוח.

מתן גישה לכיור

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

אם פרויקט היעד Google Cloud מוגן על ידי service perimeter של VPC Service Controls, צריך גם להוסיף כלל תעבורת נתונים נכנסת (ingress) ל-perimeter של היעד, שיאפשר גישה מחשבון השירות של מאגר היעד. לא צריך להגדיר כלל כניסה לכיורים לא נצברים. מידע נוסף זמין במאמר איסוף וניתוב של יומנים ברמת הארגון והתיקייה ליעדים נתמכים: מגבלות.

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

  1. נכנסים לדף IAM במסוף Google Cloud :

    נכנסים לדף IAM.

    אם אתם משתמשים בשורת החיפוש כדי למצוא את הדף הזה, בחרו בתוצאה שכותרת המשנה שלה היא IAM & Admin.

  2. בוחרים את הפרויקט Google Cloud שמכיל את קטגוריית היומנים.

  3. לוחצים על Grant access ומוסיפים את חשבון השירות כחשבון משתמש חדש. אל תכללו את הקידומת serviceAccount:.

  4. בתפריט Select a role, בוחרים באפשרות Logs Writer.

  5. לוחצים על Save.

יצירת רשומות ביומן כדי לעזור באימות הכיור

כדי לוודא שהיעד המצטבר מוגדר בצורה נכונה, אפשר לנסות את הפעולות הבאות:

  1. יוצרים רשומות ביומן הביקורת שצריך לנתב לקטגוריית היומנים.

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

    • אחרת, עוברים לפרויקט אחר, יוצרים מכונת VM ב-Compute Engine ואז מוחקים את המכונה שיצרתם. יומני ביקורת נכתבים כשמכונת VM נוצרת, מופעלת ונמחקת.

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

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

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

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

  • מקצים להם את התפקיד Logs Views Accessor‏ (roles/logging.viewAccessor) יחד עם תנאי IAM שמגביל את ההרשאה לתצוגת היומן.

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

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

בשלבים הבאים, מקצים לחשבון המשתמש את התפקיד "גישה לתצוגות של יומנים" (roles/logging.viewAccessor) יחד עם תנאי IAM שמגביל את ההקצאה לתצוגה בשם _AllLogs:

  1. נכנסים לדף IAM במסוף Google Cloud :

    כניסה לדף IAM

    אם אתם משתמשים בשורת החיפוש כדי למצוא את הדף הזה, בחרו בתוצאה שכותרת המשנה שלה היא IAM & Admin.

  2. בוחרים את הפרויקט Google Cloud שמכיל את מאגר היומנים.

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

  4. בשדה New principal, מוסיפים חשבון ראשי.

  5. בתפריט Select a role, בוחרים באפשרות Logs Views Accessor.

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

  6. מוסיפים תנאי IAM לקישור:

    1. לוחצים על הוספת תנאי ואז מזינים שם ותיאור.
    2. בתפריט Condition type, עוברים אל Resource ובוחרים באפשרות Name.
    3. בתפריט אופרטור, בוחרים באפשרות מסתיים ב-.
    4. בשדה Value, מזינים את השם המלא של תצוגת היומן:

      locations/LOCATION/buckets/BUCKET_NAME/views/_AllLogs
      
    5. לוחצים על שמירה כדי לשמור את התנאי.

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

צפייה ברשומות ביומן בדף Logs Explorer

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

  1. נכנסים לדף Logs Explorer ב- במסוף Google Cloud :

    כניסה אל Logs Explorer

    אם משתמשים בשורת החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Logging.

  2. לוחצים על צמצום ההיקף.

  3. בחלונית Refine scope, בוחרים באפשרות Log view.

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

  5. לוחצים על אישור.

    הדף Logs Explorer מתרענן ומוצגות בו רשומות היומן מהקטגוריה של היומנים. למידע נוסף על השימוש ב-Logs Explorer, קראו את המאמר שימוש ב-Logs Explorer.