במאמר הזה מוסבר על רישום ביומני ביקורת ב-Datastore.שירותי Google Cloud יוצרים יומני ביקורת שבהם מתועדים אירועי גישה למשאבי Google Cloud ופעילויות אדמין שנעשות בהם. אתם יכולים לקרוא מידע נוסף על יומני הביקורת של Cloud במאמרים האלה:
- הסוגים של יומני הביקורת
- המבנה של רשומות ביומני הביקורת
- שמירה וניתוב של יומני ביקורת
- מחירון מקוצר של Cloud Logging
- הפעלת יומני ביקורת של גישה לנתונים
הערות
כשמגדירים יומני ביקורת, שם השירות datastore.googleapis.com מגדיר יומנים גם לקריאות ל-API של datastore.googleapis.com וגם לקריאות ל-API של firestore.googleapis.com.
כדי לראות את הזמן שנדרש לעיבוד בקשה של DATA_READ או DATA_WRITE, אפשר לעיין בשדה processing_duration באובייקט metadata של AuditLog. processing_duration מתאר את הזמן שלקח למסד הנתונים לעבד בפועל בקשה. הערך הזה קטן יותר מזמן האחזור של משתמש הקצה. באופן ספציפי, הוא לא כולל תקורה של רשת.
שם השירות
יומני הביקורת של Datastore משתמשים בשם השירות datastore.googleapis.com.
אתם יכולים לסנן לפי השירות הזה:
protoPayload.serviceName="datastore.googleapis.com"
Methods לפי סוג ההרשאה
לכל הרשאה ב-IAM יש מאפיין type עם enum שיכול להיות אחד מארבעת הערכים הבאים: ADMIN_READ, ADMIN_WRITE, DATA_READ או DATA_WRITE. כשקוראים ל-method, ב-Datastore נוצר יומן ביקורת שהקטגוריה שלו תלויה במאפיין type של ההרשאה שנדרשת לביצוע ה-method.
ה-methods שבשבילן צריך הרשאה ב-IAM עם הערכים DATA_READ, DATA_WRITE או ADMIN_READ במאפיין type יוצרות יומני ביקורת של Data Access.
ה-methods שבשבילן צריך הרשאה ב-IAM עם הערכים ADMIN_WRITE במאפיין type יוצרות יומני ביקורת של Admin Activity.
| סוג ההרשאה | Methods |
|---|---|
ADMIN_READ |
google.datastore.admin.v1.DatastoreAdmin.GetIndexgoogle.datastore.admin.v1.DatastoreAdmin.ListIndexesgoogle.longrunning.Operations.GetOperationgoogle.longrunning.Operations.ListOperations |
ADMIN_WRITE |
google.datastore.admin.v1.DatastoreAdmin.CreateIndex (LRO)google.datastore.admin.v1.DatastoreAdmin.DeleteIndexgoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities (LRO)google.datastore.admin.v1.DatastoreAdmin.ImportEntities (LRO)google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities (LRO)google.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities (LRO)google.longrunning.Operations.CancelOperationgoogle.longrunning.Operations.DeleteOperation |
DATA_READ |
google.datastore.v1.Datastore.BeginTransactiongoogle.datastore.v1.Datastore.Lookupgoogle.datastore.v1.Datastore.Rollbackgoogle.datastore.v1.Datastore.RunAggregationQuerygoogle.datastore.v1.Datastore.RunQuerygoogle.datastore.v1beta3.Datastore.BeginTransactiongoogle.datastore.v1beta3.Datastore.Lookupgoogle.datastore.v1beta3.Datastore.Rollbackgoogle.datastore.v1beta3.Datastore.RunAggregationQuerygoogle.datastore.v1beta3.Datastore.RunQuery |
DATA_WRITE |
google.datastore.v1.Datastore.AllocateIdsgoogle.datastore.v1.Datastore.Commitgoogle.datastore.v1.Datastore.ReserveIdsgoogle.datastore.v1beta3.Datastore.AllocateIdsgoogle.datastore.v1beta3.Datastore.Commitgoogle.datastore.v1beta3.Datastore.ReserveIds |
יומני ביקורת של ממשק ה-API
במאמר בנושא ניהול הזהויות והרשאות הגישה (IAM) ל-Datastore מוסבר איך מתבצעת הבדיקה של ההרשאות לכל method ואילו הרשאות נבדקות.
google.datastore.admin.v1.DatastoreAdmin
יומני הביקורת הבאים משויכים ל-methods ששייכות ל-google.datastore.admin.v1.DatastoreAdmin.
CreateIndex
- Method:
google.datastore.admin.v1.DatastoreAdmin.CreateIndex - סוג יומן הביקורת: פעילות אדמין
- הרשאות:
datastore.indexes.create - ADMIN_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
פעולה ממושכת
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.CreateIndex"
DeleteIndex
- Method:
google.datastore.admin.v1.DatastoreAdmin.DeleteIndex - סוג יומן הביקורת: פעילות אדמין
- הרשאות:
datastore.indexes.delete - ADMIN_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.DeleteIndex"
ExportEntities
- Method:
google.datastore.admin.v1.DatastoreAdmin.ExportEntities - סוג יומן הביקורת: פעילות אדמין
- הרשאות:
datastore.databases.export - ADMIN_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
פעולה ממושכת
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.ExportEntities"
GetIndex
- Method:
google.datastore.admin.v1.DatastoreAdmin.GetIndex - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.indexes.get - ADMIN_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.GetIndex"
ImportEntities
- Method:
google.datastore.admin.v1.DatastoreAdmin.ImportEntities - סוג יומן הביקורת: פעילות אדמין
- הרשאות:
datastore.databases.import - ADMIN_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
פעולה ממושכת
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.ImportEntities"
ListIndexes
- Method:
google.datastore.admin.v1.DatastoreAdmin.ListIndexes - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.indexes.list - ADMIN_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.ListIndexes"
google.datastore.admin.v1beta1.DatastoreAdmin
יומני הביקורת הבאים משויכים ל-methods ששייכות ל-google.datastore.admin.v1beta1.DatastoreAdmin.
ExportEntities
- Method:
google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities - סוג יומן הביקורת: פעילות אדמין
- הרשאות:
datastore.databases.export - ADMIN_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
פעולה ממושכת
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities"
ImportEntities
- Method:
google.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities - סוג יומן הביקורת: פעילות אדמין
- הרשאות:
datastore.databases.import - ADMIN_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
פעולה ממושכת
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities"
google.datastore.v1.Datastore
יומני הביקורת הבאים משויכים ל-methods ששייכות ל-google.datastore.v1.Datastore.
AllocateIds
- Method:
google.datastore.v1.Datastore.AllocateIds - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.entities.allocateIds - DATA_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1.Datastore.AllocateIds"
BeginTransaction
- Method:
google.datastore.v1.Datastore.BeginTransaction - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.databases.get - DATA_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1.Datastore.BeginTransaction"
Commit
- Method:
google.datastore.v1.Datastore.Commit - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.databases.get - DATA_READdatastore.entities.create - DATA_WRITEdatastore.entities.delete - DATA_WRITEdatastore.entities.update - DATA_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1.Datastore.Commit"
Lookup
- Method:
google.datastore.v1.Datastore.Lookup - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.entities.get - DATA_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1.Datastore.Lookup"
ReserveIds
- Method:
google.datastore.v1.Datastore.ReserveIds - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.entities.allocateIds - DATA_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1.Datastore.ReserveIds"
Rollback
- Method:
google.datastore.v1.Datastore.Rollback - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.databases.get - DATA_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1.Datastore.Rollback"
RunAggregationQuery
- Method:
google.datastore.v1.Datastore.RunAggregationQuery - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1.Datastore.RunAggregationQuery"
RunQuery
- Method:
google.datastore.v1.Datastore.RunQuery - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1.Datastore.RunQuery"
google.datastore.v1beta3.Datastore
יומני הביקורת הבאים משויכים ל-methods ששייכות ל-google.datastore.v1beta3.Datastore.
AllocateIds
- Method:
google.datastore.v1beta3.Datastore.AllocateIds - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.entities.allocateIds - DATA_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1beta3.Datastore.AllocateIds"
BeginTransaction
- Method:
google.datastore.v1beta3.Datastore.BeginTransaction - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.databases.get - DATA_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1beta3.Datastore.BeginTransaction"
Commit
- Method:
google.datastore.v1beta3.Datastore.Commit - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.entities.create - DATA_WRITEdatastore.entities.delete - DATA_WRITEdatastore.entities.update - DATA_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1beta3.Datastore.Commit"
Lookup
- Method:
google.datastore.v1beta3.Datastore.Lookup - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.entities.get - DATA_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1beta3.Datastore.Lookup"
ReserveIds
- Method:
google.datastore.v1beta3.Datastore.ReserveIds - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.entities.allocateIds - DATA_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1beta3.Datastore.ReserveIds"
Rollback
- Method:
google.datastore.v1beta3.Datastore.Rollback - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.databases.get - DATA_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1beta3.Datastore.Rollback"
RunAggregationQuery
- Method:
google.datastore.v1beta3.Datastore.RunAggregationQuery - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1beta3.Datastore.RunAggregationQuery"
RunQuery
- Method:
google.datastore.v1beta3.Datastore.RunQuery - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.datastore.v1beta3.Datastore.RunQuery"
google.longrunning.Operations
יומני הביקורת הבאים משויכים ל-methods ששייכות ל-google.longrunning.Operations.
CancelOperation
- Method:
google.longrunning.Operations.CancelOperation - סוג יומן הביקורת: פעילות אדמין
- הרשאות:
datastore.operations.cancel - ADMIN_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.longrunning.Operations.CancelOperation"
DeleteOperation
- Method:
google.longrunning.Operations.DeleteOperation - סוג יומן הביקורת: פעילות אדמין
- הרשאות:
datastore.operations.delete - ADMIN_WRITE
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.longrunning.Operations.DeleteOperation"
GetOperation
- Method:
google.longrunning.Operations.GetOperation - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.operations.get - ADMIN_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.longrunning.Operations.GetOperation"
ListOperations
- Method:
google.longrunning.Operations.ListOperations - סוג יומן הביקורת: גישה לנתונים
- הרשאות:
datastore.operations.list - ADMIN_READ
- ה-method היא פעולה ממושכת או פעולת סטרימינג:
לא.
- סינון לפי ה-method:
protoPayload.methodName="google.longrunning.Operations.ListOperations"
אילו methods לא יוצרות יומני ביקורת
יכולות להיות כמה סיבות שב-method מסוימת לא נוצרים יומני ביקורת:
- מדובר ב-method שיש בה נפח גבוה של יומנים, שיצירה שלהם עלולה לגרור עלויות גבוהות של אחסון ויצירה.
- הערך של הביקורת נמוך.
- כבר יש יומן ביקורת או יומן פלטפורמה אחרים שמכסים את ה-method.
ה-methods הבאות לא יוצרות יומני ביקורת:
google.longrunning.Operations.WaitOperation