במסמך הזה מוסבר איך Cloud Logging משתמש בתפקידים ובהרשאות של ניהול הזהויות והרשאות הגישה (IAM) כדי לשלוט בגישה למשאבי Logging. תפקידי ה-IAM שלכם קובעים אם אתם יכולים לבצע פעולות כמו יצירת אובייקטים מסוג sink ביומן או קטגוריות ביומן, לקרוא נתונים של יומנים שמאוחסנים בקטגוריה ביומן או לגשת לדפים כמו Logs Explorer. אם מריצים פקודה של Logging API או של Google Cloud CLI, תפקידי ה-IAM קובעים אם יש לכם הרשאה להריץ את הפקודה.
סקירה כללית
התפקידים שלכם ב-IAM קובעים אילו פעולות אתם יכולים לבצע ב-Logging. תפקיד הוא אוסף של הרשאות. כשנותנים לחשבון משתמש תפקיד, הוא מקבל את כל ההרשאות שהתפקיד כולל. אתם יכולים להקצות לאותה ישות מורשית תפקידים מרובים.
תפקידי IAM מוענקים במשאב, כמו Cloud de Confiance פרויקט, תיקייה, מאגר או ארגון. לדוגמה, אפשר לתת לישות מורשית את התפקיד מציג היומנים (roles/logging.viewer) בפרויקט Cloud de Confiance מסוים.
בקטעים תפקידים מוגדרים מראש ותפקידים ב-Logging בדף הזה מופיע מידע מקיף על תפקידים והרשאות ב-Logging. בקטעים אחרים בדף הזה מופיע מידע על תפקידים או הרשאות לתרחישי שימוש ספציפיים.
בהמשך הקטע הזה מוסבר איך אפשר להעניק לישות מורשית גישה לקטגוריות ביומן, או גישה רק לחלק מהרשומות ביומן בקטגוריה ביומן.
הענקת גישה למאגרי יומנים
התפקיד 'צפייה ביומנים' (roles/logging.viewer) מאפשר לישות ראשית לגשת לכל נתוני היומנים שמאוחסנים בקטגוריות היומנים _Required ו-_Default, למעט יומני גישה לנתונים. אם לחשבון משתמש מסוים נדרשת גישה ליומני גישה לנתונים, צריך להעניק לו את התפקיד 'צפייה ביומנים פרטיים' (roles/logging.privateLogViewer).
בקטגוריות מותאמות אישית של יומנים, אפשר להעניק גישה לתצוגה _AllLogs או לתצוגת יומן מותאמת אישית. הרישום ביומן יוצר באופן אוטומטי את התצוגה _AllLogs, שכוללת את כל הרשומות ביומן בקטגוריה ביומן. כדי להעניק גישה לתצוגת יומן, מוסיפים קישור IAM למדיניות IAM שמצורפת לתצוגת היומן או לפרויקט. למידע נוסף, אפשר לעיין במאמר בנושא שליטה בגישה לתצוגת יומן.
הרישום ביומן תומך גם בתגים בדלי יומנים, שיכולים לעזור לכם להבין את העלויות. אפשר גם להשתמש בתגים כדי למנוע ממשתמש למחוק קטגוריה ביומן. מידע נוסף זמין במאמר שימוש בתגים לניהול הגישה לקטגוריות של יומנים.
הענקת גישה לחלק מהרשומות ביומן בקטגוריית יומנים
כדי להעניק לישות מורשית גישה רק לחלק מהרשומות ביומן שמאוחסנות בקטגוריה ביומן, צריך ליצור תצוגת יומן ואז להעניק לישות המורשית גישה לתצוגת היומן. לדוגמה, אפשר ליצור תצוגת יומן ב_Default קטגוריה ביומן שכוללת רק רשומות ביומן שסוג המשאב שלהן הוא מכונה של Compute Engine.
מידע נוסף על יצירת תצוגות של יומנים ועל האסטרטגיות השונות שבהן אפשר להשתמש כדי להעניק גישה לתצוגה זמין במאמר הגדרת תצוגות של יומנים בקטגוריה ביומן.
תפקידים מוגדרים מראש
ב-IAM יש תפקידים מוגדרים מראש שמאפשרים לתת גישה פרטנית למשאבים ספציפיים ב- Cloud de Confiance ולמנוע גישה לא רצויה למשאבים אחרים. Cloud de Confiance by S3NS יוצרת את התפקידים האלה ומעדכנת אוטומטית את ההרשאות שלהם לפי הצורך, למשל כשנוספות ל-Logging תכונות חדשות.
בטבלה הבאה מפורטים התפקידים המוגדרים מראש ב-Logging. בטבלה מופיעים השם והתיאור של כל תפקיד, ההרשאות שכלולות בו וסוג המשאב ברמה הנמוכה ביותר שבה אפשר להעניק את התפקיד. אפשר לתת את התפקידים המוגדרים מראש Cloud de Confiance ברמת הפרויקט או, ברוב המקרים, בכל סוג גבוה יותר בהיררכיית המשאבים. כדי להגביל את הגישה של תפקיד Logs View Accessor לתצוגת יומן בקטגוריה, משתמשים במאפייני משאבים לתנאי IAM.
במאמר הצגת המטא-נתונים של התפקיד תוכלו לראות את רשימת ההרשאות שכל תפקיד מכיל.
| Role | Permissions |
|---|---|
Logging Admin( Provides all permissions necessary to use all features of Cloud Logging. Lowest-level resources where you can grant this role:
|
|
Logs Bucket Writer( Ability to write logs to a log bucket. Lowest-level resources where you can grant this role:
|
|
Logs Configuration Writer( Provides permissions to read and write the configurations of logs-based metrics and sinks for exporting logs. Lowest-level resources where you can grant this role:
|
|
Log Field Accessor( Ability to read restricted fields in a log bucket. Lowest-level resources where you can grant this role:
|
|
Log Link Accessor( Ability to see links for a bucket. |
|
Logs Writer( Provides the permissions to write log entries. Lowest-level resources where you can grant this role:
|
|
Private Logs Viewer( Provides permissions of the Logs Viewer role and in addition, provides read-only access to log entries in private logs. Lowest-level resources where you can grant this role:
|
|
Cloud Logging Service Agent( Grants a Cloud Logging Service Account the ability to create and link datasets. |
|
SQL Alert Writer Beta( Ability to write SQL Alerts. |
|
Logs View Accessor( Ability to read logs in a view. Lowest-level resources where you can grant this role:
|
|
Logs Viewer( Provides access to view logs. Lowest-level resources where you can grant this role:
|
|
בקטעים הבאים מופיע מידע נוסף שיעזור לכם להחליט אילו תפקידים מתאימים לתרחישי השימוש של הגורמים המורשים שלכם.
רישום תפקידים ביומן
כדי לאפשר למשתמש לבצע את כל הפעולות ב-Logging, צריך להעניק לו את התפקיד Logging Admin (אדמין של Logging) (
roles/logging.admin).כדי לאפשר למשתמש ליצור ולשנות הגדרות של רישום ביומן, צריך להעניק לו את התפקיד 'בעל הרשאת כתיבה של רישום ביומן' (
roles/logging.configWriter). התפקיד הזה מאפשר ליצור או לשנות את כל אחד מהפריטים הבאים:כדי לאפשר למשתמש לקרוא יומנים בדלי
_Requiredו-_Defaultאו להשתמש בדף Logs Explorer, צריך להעניק לו אחד מהתפקידים הבאים:- כדי לקבל גישה לכל היומנים בקטגוריה
_Requiredוגישה לתצוגה_Defaultבקטגוריה_Default, צריך להקצות את התפקיד 'צפייה ביומנים' (roles/logging.viewer). - כדי לקבל גישה לכל היומנים בקטגוריות
_Requiredו-_Default, כולל יומני גישה לנתונים, צריך להעניק את התפקיד 'צפייה ביומנים פרטיים' (roles/logging.privateLogViewer).
- כדי לקבל גישה לכל היומנים בקטגוריה
כדי לאפשר למשתמש לקרוא יומנים בכל תצוגות היומנים שנמצאות בפרויקט, צריך להקצות לו את תפקיד ה-IAM
roles/logging.viewAccessorבפרויקט.כדי לאפשר למשתמש לקרוא רישומים רק בתצוגת יומן ספציפית, יש שתי אפשרויות:
יוצרים מדיניות IAM לתצוגת היומן, ואז מוסיפים קישור IAM למדיניות הזו שמעניק לחשבון הראשי גישה לתצוגת היומן.
מקצים לחשבון המשתמש את תפקיד ה-IAM
roles/logging.viewAccessorבפרויקט שמכיל את תצוגת היומן, אבל מצרפים תנאי IAM כדי להגביל את ההקצאה לתצוגת היומן הספציפית.
מידע על יצירת תצוגות יומנים והענקת גישה מופיע במאמר הגדרת תצוגות יומנים בקטגוריה ביומן.
כדי לאפשר למשתמש לכתוב יומנים באמצעות Logging API, צריך להעניק לו את התפקיד Logs Writer (כותב יומנים) (
roles/logging.logWriter). התפקיד הזה לא מעניק הרשאות צפייה.כדי לאפשר לחשבון השירות של sink להפניית יומנים להעביר יומנים לקטגוריה ביומן בפרויקט Cloud de Confiance אחר, צריך להקצות לחשבון השירות את התפקיד 'כתיבה לקטגוריית יומנים' (
roles/logging.bucketWriter). הוראות להענקת הרשאות לחשבון שירות מפורטות במאמר הגדרת הרשאות יעד.
תפקידים ברמת הפרויקט
כדי לתת גישת צפייה לרוב השירותים Cloud de Confiance by S3NS , צריך להקצות את התפקיד 'צפייה' (
roles/viewer).התפקיד הזה כולל את כל ההרשאות שמוענקות על ידי התפקיד 'צפייה ביומנים' (
roles/logging.viewer).כדי לתת גישת עריכה לרוב השירותים של Cloud de Confiance by S3NS , צריך להקצות את התפקיד 'עריכה' (
roles/editor).התפקיד הזה כולל את כל ההרשאות שמוענקות על ידי התפקיד 'צפייה ביומנים' (
roles/logging.viewer), ואת ההרשאות לכתוב רשומות ביומן ולמחוק יומנים. עם זאת, התפקיד הזה לא מאפשר למשתמשים ליצור sink, לקרוא יומני ביקורת של Data Access שנמצאים בקטגוריה_Defaultאו לקרוא יומנים שנמצאים בקטגוריות של יומנים שהוגדרו על ידי משתמשים.כדי לתת גישה מלאה לרוב השירותים של Cloud de Confiance by S3NS , צריך להקצות את התפקיד 'בעלים' (
roles/owner).
הקצאת תפקידים
במאמר הענקה, שינוי וביטול גישה מוסבר איך נותנים תפקידים לחשבונות משתמשים.
אפשר להקצות כמה תפקידים לאותו משתמש. במאמר הצגת המטא-נתונים של התפקיד תוכלו לראות את רשימת ההרשאות שכל תפקיד מכיל.
אם אתם מנסים לגשת ל Cloud de Confiance משאב ואין לכם את ההרשאות הנדרשות, עליכם לפנות לחשבון המשתמש שמופיע כבעלים של המשאב.
תפקידים בהתאמה אישית
כדי ליצור תפקיד בהתאמה אישית עם הרשאות לרישום ביומן, מבצעים את הפעולות הבאות:
כדי להקצות תפקיד עם הרשאות ל-Logging API, בוחרים הרשאות מתוך API permissions ופועלים לפי ההוראות ליצירת תפקיד בהתאמה אישית.
כדי להעניק הרשאה להשתמש בכלי Logs Explorer, בוחרים מתוך קבוצות ההרשאות בהרשאות במסוף ופועלים לפי ההוראות ליצירת תפקיד בהתאמה אישית.
כדי להקצות תפקיד עם הרשאות לשימוש ב-
gcloud logging, אפשר לעיין בקטע הרשאות של שורת הפקודה בדף הזה, ואז לפעול לפי ההוראות ליצירת תפקיד בהתאמה אישית.
מידע נוסף על תפקידים בהתאמה אישית זמין במאמר הסבר על תפקידים בהתאמה אישית ב-IAM.
הרשאות ב-Cloud Logging
בטבלה הבאה מפורטות חלק מההרשאות שנדרשות לתכונות ספציפיות של Cloud Logging. הטבלה הזו יכולה לעזור לכם לזהות את ההרשאות שאתם צריכים כדי להשתמש בדפים כמו Logs Explorer.
בטבלה, a.b.{x,y} מייצג את a.b.x ואת a.b.y.
| פעילות במסוף | ההרשאות הנדרשות |
|---|---|
| הרשאת קריאה בלבד מינימלית | logging.logEntries.list |
| צפייה ביומני ביקורת של גישה לנתונים | logging.privateLogEntries.list |
| הצגת מקורות | logging.sinks.{list, get} |
| צפייה בנתוני השימוש ביומנים | logging.usage.get |
| הורדת היומנים | logging.logEntries.{list, download}
כדי להוריד יומנים, צריך רק אחת מההרשאות האלה. צריך להעניק תפקידים שמכילים את ההרשאות להורדת יומנים ברמת הפרויקט. לא ניתן להוריד יומנים אם תפקיד שמכיל את ההרשאות האלה מוענק בקובץ מדיניות IAM של תצוגת יומן. |
| הצגה של היקפי היומן | logging.logScopes.{get, list} |
| צפייה באוסף תצוגות יומן (log scope) ברירת המחדל | observability.scopes.get |
| החרגת יומנים | logging.exclusions.{list, create, get, update, delete}
כשיוצרים תפקיד בהתאמה אישית שכולל הרשאות לניהול מסנני החרגה, מוסיפים לתפקיד את ההרשאות |
| יצירה של sinks ושימוש בהם | logging.sinks.{list, create, get, update, delete}
כשיוצרים יעד, צריך גם להקצות לחשבון השירות תפקיד ב-IAM שמאפשר לו לכתוב רשומות ביומן ליעד. מידע נוסף מופיע במאמר בנושא הגדרת הרשאות ליעד. אחרי שהרשומות ביומן מנותבות ליעד נתמך, הגישה לרשומות ביומן נשלטת באופן מלא על ידי ההרשאות והתפקידים ב-IAM ביעד. |
| שמירה ושימוש בשאילתות פרטיות | logging.queries.usePrivatelogging.queries.{listShared,getShared} |
| שמירה ושימוש בשאילתות משותפות | logging.queries.{share, getShared, updateShared, deleteShared,
listShared} |
| שימוש בשאילתות מהזמן האחרון | logging.queries.{create, list} |
| יצירה וניהול של היקפי יומנים | logging.logScopes.{create, delete, get, list, update} |
| הגדרה וניהול של אוסף תצוגות יומן (log scope) ברירת המחדל | observability.scopes.{get, update} |
הרשאות לשורת הפקודה
הפקודות של gcloud logging נשלטות על ידי הרשאות IAM.
כדי להשתמש בפקודות gcloud logging, למשתמשים צריכה להיות הרשאת serviceusage.services.use.
בנוסף, לחשבון הראשי צריכה להיות הרשאת IAM שמתאימה למשאב של היומן ולתרחיש השימוש. פרטים נוספים מופיעים במאמר בנושא הרשאות לממשק שורת הפקודה.