איסוף יומנים מ-Fivetran
גרסת כלי הניתוח: 1.0
במאמר הזה מוסבר איך להגדיר את Fivetran כך שישלח יומנים ל-Google Security Operations באמצעות תגובות לפעילות אינטרנט.
Fivetran היא פלטפורמה לשילוב נתונים שמבצעת אוטומציה של צינורות נתונים ממקורות שונים למחסני נתונים. מערכת Fivetran יוצרת אירועים תפעוליים, כולל אירועי סנכרון של מחברים, אירועי טרנספורמציה ושינויים בסטטוס החיבור. אפשר לשלוח את האירועים האלה לנקודות קצה חיצוניות באמצעות תגובות לפעולה מאתר אחר (webhooks) יוצאות, לצורך מעקב, התרעה וניתוח אבטחה.
לפני שמתחילים
חשוב לוודא שיש לכם את הדברים הבאים:
- מופע של Google SecOps.
- חשבון Fivetran עם הרשאות אדמין או הרשאות ברמת החשבון.
- גישה למסוף Google Cloud (ליצירת מפתח API).
- חשבון Fivetran עם גישה ל-API בארכיטקטורת REST.
יצירת פיד של webhook ב-Google SecOps
יצירת הפיד
- עוברים אל SIEM Settings (הגדרות SIEM) > Feeds (פידים).
- לוחצים על + הוספה.
- בוחרים באפשרות הגדרת פיד יחיד.
- בשדה שם הפיד, מזינים שם (לדוגמה,
Fivetran Events). - בוחרים באפשרות Webhook בתור סוג המקור.
- בוחרים באפשרות Fivetran בתור Log type.
- לוחצים על הבא.
- מציינים ערכים לפרמטרים הבאים של הקלט:
- תו מפריד לפיצול (אופציונלי): משאירים את השדה ריק.
- מרחב השמות של הנכס: מרחב השמות של הנכס.
- תוויות הטמעה: התווית שתתווסף לאירועים מהפיד הזה.
- לוחצים על הבא.
- בודקים את הגדרות הפיד החדשות ולוחצים על שליחה.
יצירה ושמירה של מפתח סודי
- בדף פרטי הפיד, לוחצים על יצירת מפתח סודי.
- תיפתח תיבת דו-שיח עם המפתח הסודי.
- מעתיקים ושומרים את המפתח הסודי באופן מאובטח.
קבלת כתובת ה-URL של נקודת הקצה של הפיד
- עוברים לכרטיסייה פרטים של הפיד.
- בקטע Endpoint Information, מעתיקים את Feed endpoint URL.
- שומרים את כתובת ה-URL הזו לשלבים הבאים.
- לוחצים על סיום.
יצירת מפתח API של Google Cloud
כדי לבצע אימות ב-Google SecOps, צריך מפתח API.
יצירת מפתח API
- נכנסים לדף Credentials במסוף Google Cloud.
- בוחרים את הפרויקט הרצוי.
- לוחצים על Create credentials > מפתח API.
- לוחצים על מפתח API כדי להגביל את המפתח.
הגבלת מפתח ה-API
- בהגדרות API key:
- שם: מזינים שם תיאורי (לדוגמה,
SecOps Webhook API Key).
- שם: מזינים שם תיאורי (לדוגמה,
- בקטע API restrictions:
- בוחרים באפשרות Restrict key.
- בתפריט הנפתח, מחפשים את Google SecOps API (או Chronicle API) ובוחרים בו.
- לוחצים על Save.
- מעתיקים את הערך של מפתח ה-API ושומרים אותו בצורה מאובטחת.
הגדרת ה-webhook של Fivetran
יצירת כתובת ה-URL של ה-webhook
משלבים את כתובת ה-URL של נקודת הקצה ואת מפתח ה-API:
<ENDPOINT_URL>?key=<API_KEY>
יצירת webhook באמצעות Fivetran API בארכיטקטורת REST
קבלת פרטי הכניסה ל-API של Fivetran
- נכנסים לחשבון Fivetran.
- עוברים אל הגדרות החשבון > הגדרת API.
- אם אין לכם מפתח API, לוחצים על Generate API Key (יצירת מפתח API).
- מעתיקים את מפתח ה-API ואת ערך ה-API Secret.
יצירת תגובה לפעולה מאתר אחר (webhook) ברמת החשבון
משתמשים בשיטה הזו כדי לקבל אירועים מכל המחברים בחשבון.
פותחים טרמינל ומריצים את הפקודה הבאה:
curl -X POST https://api.fivetran.com/v1/webhooks/account \ -u "API_KEY:API_SECRET" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{ "url": "https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=YOUR_CHRONICLE_API_KEY", "events": [ "sync_start", "sync_end", "transformation_start", "transformation_succeeded", "transformation_failed", "connection_successful", "connection_failure", "create_connector", "pause_connector", "resume_connector", "edit_connector", "delete_connector", "force_update_connector", "resync_connector", "resync_table" ], "active": true, "secret": "YOUR_CHRONICLE_SECRET_KEY" }'- כאשר
{region}הוא האזור של מופע Google SecOps (לדוגמה,us,europeאוasia-southeast1), ו-{parent}הוא נתיב המשאב בפורמטprojects/<PROJECT_ID>/locations/<LOCATION>/instances/<INSTANCE_ID>/logTypes/<LOG_TYPE>.
- כאשר
פרטי ה-webhook
אירועים זמינים של תגובה לפעולה מאתר אחר (webhook)
| אירוע | תיאור |
|---|---|
sync_start |
התחיל סנכרון של המחבר |
sync_end |
הסנכרון של המחבר הסתיים |
transformation_start |
הטרנספורמציה התחילה |
transformation_succeeded |
הטרנספורמציה הושלמה בהצלחה |
transformation_failed |
הטרנספורמציה נכשלה |
connection_successful |
בדיקת החיבור הסתיימה בהצלחה |
connection_failure |
בדיקת החיבור נכשלה |
create_connector |
נוצר מחבר חדש |
התנהגות של ניסיון חוזר של webhook
Fivetran מנסה אוטומטית לשלוח מחדש ווּבּהוּקים שנכשלו למשך עד 24 שעות לפי לוח הזמנים הבא:
| ניסיון חוזר | הזמן שעבר מאז הניסיון הראשוני |
|---|---|
| ניסיון חוזר ראשון | 6 דקות |
| ניסיון חוזר שני | 27 דקות |
| ניסיון חוזר שלישי | שעה ו-45 דקות |
| ניסיון רביעי | 6 שעות ו-25 דקות |
| ניסיון חמישי | 23 שעות ו-13 דקות |
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
jsonPayload.connector_id |
additional.connector_id |
הערך מועתק ישירות. |
jsonPayload.connector_type |
additional.connector_type |
הערך הועתק ישירות. |
jsonPayload.data.query |
additional.query |
הערך מועתק ישירות. |
| לא רלוונטי | metadata.event_type |
ההגדרה מבוססת על הנוכחות של הגורם הראשי והיעד. |
jsonPayload.event |
metadata.product_event_type |
הערך מועתק ישירות. |
jsonPayload.sync_id |
metadata.product_log_id |
הערך הועתק ישירות. |
jsonPayload.connector_name |
principal.hostname |
הערך מועתק ישירות. |
resource.labels.email_id |
principal.user.email_addresses |
ממופה אם הפורמט הוא כתובת אימייל תקינה. |
resource.labels.unique_id |
principal.user.userid |
הערך מועתק ישירות. |
severity |
security_result.severity |
"INFO" ממופה ל-INFORMATIONAL. |
logName |
target.resource.name |
הערך הועתק ישירות. |
| לא רלוונטי | target.resource.type |
מגדירים את האפשרות DATABASE. |
| לא רלוונטי | metadata.product_name |
מגדירים את הערך FIVETRAN. |
| לא רלוונטי | metadata.vendor_name |
מגדירים את הערך FIVETRAN. |
יומן שינויים
צפייה ביומן השינויים של המנתח הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.