כדי לקבוע אילו פעולות SQL ואובייקטים של מסד נתונים יתועדו ביומני הביקורת, אתם יכולים להגדיר את רישום הסשנים והאובייקטים של pgAudit ב-AlloyDB ל-PostgreSQL באמצעות הגדרת הדגל pgaudit.log או הדגל pgaudit.role:
מגדירים את
pgaudit.logכדי להפעיל ולהגדיר את רישום הסשנים ביומן. אפשר להגדיר את הדגל הזה במכונה, במסד נתונים או בתפקיד כדי להגדיר את היקף הפעולות ש-pgAudit מתעד ביומן. מגדירים את הדגל לערך שמגדיר את סוג הפעולות ש-pgAudit מתעד ביומן.מגדירים את
pgaudit.roleכדי להפעיל ולקבוע את ההגדרות של רישום אובייקטים ביומן, שמתעד פקודות רישום ביומן שמשפיעות על קשרים מסוימים. מגדירים את הדגל הזה לשם של תפקיד, ואז נותנים גישה להצהרות לאובייקטים ספציפיים שרוצים לתעד ביומן. הגישה לדוחות כוללת אתSELECT,INSERT,UPDATEו-DELETE. pgAudit מתעד את כל הפעולות שתואמות לשילוב של גישה ואובייקט שמופעל על ידי משתמש כלשהו.
בקטעים הבאים מופיעות דוגמאות שמראות את האפשרויות להגדרת התנהגות הרישום ביומן של pgAudit.
במסמכי התיעוד של pgAudit מפורטות יכולות נוספות של התוסף.
הגדרת רישום ביומן ביקורת של סשנים לכל מסדי הנתונים במכונה
כדי להגדיר ביקורת לכל מסדי הנתונים במכונה, מגדירים את הדגל pgaudit.log ברמת המכונה.
לדוגמה:
- כדי להפעיל ביקורת לכל הפעולות בכל מסדי הנתונים במכונה:
gcloud alloydb instances update my-instance \ --database-flags pgaudit.log=all[,flag2=value2...] \ --region=us-central1 \ --cluster=my-cluster \ --project=my-project - כדי להפעיל ביקורת רק לפעולות קריאה וכתיבה בכל מסדי הנתונים במכונה:
gcloud alloydb instances update my-instance \ --database-flags=^:^pgaudit.log=read,write[:flag2=value2...] \ --region=us-central1 \ --cluster=my-cluster \ --project=my-project
שימו לב לשימוש בתחביר של תו מפריד חלופי, שמאפשר להשתמש בתווי פסיק בערך של דגל.
למידע נוסף על הגדרת דגלים לניהול מסדי נתונים, קראו את המאמר הגדרת דגלים לניהול מסדי נתונים.
הגדרת רישום ביומן הביקורת של סשנים במסד נתונים ספציפי
כדי להגדיר ביקורת למסד נתונים ספציפי, מגדירים את הדגל pgaudit.log ברמת מסד הנתונים.
לדוגמה, כדי להפעיל ביקורת קריאה וכתיבה במסד נתונים, finance:
ALTER DATABASE finance SET pgaudit.log = 'read,write';
הגדרת רישום ביומן ביקורת של סשנים למשתמש יחיד
כדי להפעיל ביקורת למשתמש ספציפי, צריך להגדיר את הדגל pgaudit.log ברמת התפקיד.
לדוגמה, כדי להגדיר ביקורת לכל הפעולות במסד הנתונים שבוצעו על ידי המשתמשת Alice:
ALTER ROLE alice SET pgaudit.log = 'all';
הגדרת רישום ביומן ביקורת של אובייקטים
ביקורת של קשר היא צרה יותר מביקורת של מסד נתונים ספציפי. כשמבצעים ביקורת על קשר, המערכת מקצה תפקיד ייחודי של ניהול כללים לביקורת לפרמטר pgaudit.role. הפעולה הזו מתעדת ביומן כל אובייקט או קשר שמוענקים לתפקיד הזה.
לדוגמה:
- כדי להגדיר ביקורת לכל השאילתות מסוג
SELECTביחס לשכר במסד הנתונים של העובדים:CREATE ROLE auditor WITH NOLOGIN; ALTER DATABASE employee SET pgaudit.role = 'auditor'; GRANT SELECT ON salary TO auditor;
אפשר גם לבדוק קבוצת משנה של עמודות ביחס נתון.
לדוגמה:
- כדי להגדיר רישום ביומן הביקורת שמתרחש רק כשניגשים לעמודות
incomeו-tax_statusמהקשר המשכורת:GRANT SELECT(income, tax_status) ON salary TO auditor;