HTTP v2
במאמר הזה מוסבר איך לשלב HTTP v2 עם מודול ה-SOAR של Google Security Operations ואיך לעבוד עם הפעולה Execute HTTP Request.
סקירה כללית
אפשר להשתמש ב-HTTP v2 כדי לבצע אינטגרציה עם מוצרים של צד שלישי בלי לכתוב קוד, ולפתור תרחישי שימוש כמו הפעלת בקשות API, עבודה עם קבצים וניהול של תהליכים אסינכרוניים.
תהליכי אימות
בהתאם למוצר שאליו מתבצע אימות, HTTP v2 תומך בתהליכי האימות הבאים:
- תהליך אימות בסיסי
- זרימת מפתח API
- תהליך אימות ייעודי
תהליך אימות בסיסי
בתהליך האימות הבסיסי, האימות מתבצע באמצעות הפרמטרים Test URL, Basic
Auth Username ו-Basic Auth Password.
זרימת מפתח API
בתהליך של מפתח API, האימות מתבצע באמצעות הפרמטרים Test URL, API Key Field Name ו-API Key Field Value.
תהליך אימות ייעודי
בתהליך האימות הייעודי, נעשה שימוש באימות הדו-שלבי הבא:
פעולה יוצרת אסימון גישה.
כשמפעילים את הפעולה Ping או את הפעולה Execute HTTP Request, השילוב מאחזר את הפרמטרים שנדרשים לאימות.
פעולה משתמשת בטוקן הגישה שנוצר כדי לבצע אימות לבקשות API.
תהליך האימות הייעודי דורש את פרמטרי השילוב הבאים:
Dedicated Auth API Request MethodDedicated Auth API Request URLDedicated Auth API Request HeadersDedicated Auth API Request BodyDedicated Auth API Request Token Field Name
פרטים נוספים על פרמטרים של שילוב מופיעים במאמר שילוב HTTP v2 עם Google SecOps.
כדי להשתמש בטוקן מהתשובה, צריך לציין את שם המפתח בפרמטר Dedicated Auth API Request Token Field Name. בדוגמה הבאה של תגובה, שם המפתח הוא access_token:
{
"access_token": "eyJhbGciOiJSUzI1NiIsImtpZCIO4",
"expires_in": 1799,
"token_type": "bearer"
}
כדי להחיל את הטוקן, השילוב דורש את ה-placeholder הייעודי הבא:
{{integration.token}}. כשמספקים את ה-placeholder הזה במטען הייעודי (payload), השילוב משתמש בטוקן שנוצר.
אם המפתח access_token בתגובת ה-JSON מופיע כשהוא מוטמע, צריך לספק את המיקום המלא של האסימון לערך הפרמטר Dedicated Auth API Request Token Field Name. לדוגמה, במקום access_token צריך לספק את מפתח data_access_token לתגובה המקוננת, כמו בדוגמה הבאה:
{
"data": {
"access_token": "eyJhbGciOiJSUzI1NiIsImtpZCIZMI3DQAQsYibMpO4",
"expires_in": 1799,
"token_type": "bearer"
}
}
בדוגמה הבאה מוצגת הבקשה לתהליך האימות הייעודי ל-Crowdstrike API:
POST /falconx/entities/submissions/v1 HTTP/1.1
Host: api.crowdstrike.com
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6
Content-Length: 209
{
"sandbox": [{
"sha256": "9854c9dfded29d8442499daba01082ba5d164aa02e44",
"environment_id": 100,
"submit_name": "filename.pdf"
}]
}
בדוגמה נעשה שימוש בכותרת Authorization עם אסימון Bearer כדי לבצע אימות ל-API. כדי לאכלס את הכותרת במידע הנכון, השילוב של HTTP v2 דורש את הקלט הבא: Authorization: Bearer {{integration.token}}.
שילוב HTTP v2 עם Google SecOps
השילוב דורש את הפרמטרים הבאים:
| פרמטר | תיאור |
|---|---|
Test URL |
אופציונלי כתובת URL לבדיקה שמשמשת לאימות בסיסי או לתהליך אימות באמצעות מפתח API. |
Basic Auth Username |
אופציונלי פרמטר להוספה ככותרת אימות בסיסי לכל הפעלה של פעולה לצד הפרמטר סיסמה לאימות בסיסי. צריך לספק את הפרמטרים Basic Auth Username (שם משתמש לאימות בסיסי) ו-Basic Auth Password (סיסמה לאימות בסיסי). |
Basic Auth Password |
אופציונלי פרמטר להוספה ככותרת אימות בסיסית לכל הפעלה של פעולה לצד הפרמטר Basic Auth Username. צריך לספק את הפרמטרים Basic Auth Username (שם משתמש לאימות בסיסי) ו-Basic Auth Password (סיסמה לאימות בסיסי). |
API Key Field Name |
אופציונלי השם של הכותרת שמכילה את מפתח ה-API. צריך לספק את הפרמטרים API Key Field Name ו-API Key Secret כדי להוסיף אותם לכל הפעלה של פעולה. |
API Key Secret |
אופציונלי ערך הסוד של מפתח ה-API. צריך לספק את הפרמטרים API Key Field Name ו-API Key Secret כדי להוסיף אותם לכל הפעלה של פעולה. |
Dedicated Auth API Request Method |
אופציונלי השיטה שבה משתמשים בתהליך של API ייעודי לאימות כדי ליצור את אסימון הגישה. ערך ברירת המחדל הוא |
Dedicated Auth API Request URL |
אופציונלי בקשת ה-API לשימוש בתהליך הייעודי של API לאימות כדי ליצור את אסימון הגישה, כמו |
Dedicated Auth API Request Headers |
אופציונלי כותרות לשימוש בתהליך ייעודי של API לאימות כדי ליצור את אסימון הגישה. מספקים כותרות כאובייקט JSON, כמו בדוגמה הבאה:
{
"Content-type": "application/x-www-form-urlencoded"
}
|
Dedicated Auth API Request Body |
אופציונלי גוף הבקשה שמשמש בתהליך הייעודי של API לאימות כדי ליצור את טוקן הגישה. מציינים את ערך הפרמטר כאובייקט JSON, כמו בדוגמה הבאה:
{
"client_id": "CLIENT_ID",
"client_secret": "CLIENT_SECRET"
}
|
|
אופציונלי שם השדה שמכיל את אסימון הגישה שנוצר. כדי להשתמש באסימון הגישה בפעולות, משתמשים בערך ה-placeholder הבא:
התשובה ליצירת טוקן
משתמשת בקו תחתון ( |
CA Certificate |
אופציונלי אישור רשות האישורים (CA) שבו יש להשתמש כדי לאמת את החיבור המאובטח. אם משתמשים בסוכן מרוחק כדי להתחבר למוצר מקומי, אפשר לספק שכבת אבטחה נוספת על ידי אספקת אישור CA לשילוב כדי להבטיח את תקינות החיבור. אחרי שמספקים אישור CA, כל בקשות ה-API משתמשות בו. הפרמטר הזה מקבל את אישור ה-CA בצורה של מחרוזת בקידוד Base64. |
Verify SSL |
חובה אם האפשרות הזו מסומנת, המערכת בודקת שאישור ה-SSL של כל חיבורי השילוב תקף. האפשרות הזו מסומנת כברירת מחדל. |
הוראות להגדרת שילוב ב-Google SecOps מופיעות במאמר הגדרת שילובים.
במקרה הצורך, אפשר לבצע שינויים בשלב מאוחר יותר. אחרי שמגדירים מופע של שילוב, אפשר להשתמש בו ב-playbooks. מידע נוסף על הגדרה ותמיכה במספר מופעים זמין במאמר תמיכה במספר מופעים.
פעולות
השילוב של HTTP v2 כולל את הפעולות הבאות:
ביצוע בקשת HTTP
משתמשים בפעולה Execute HTTP Request כדי ליצור ולהפעיל בקשת API מותאמת אישית מול כתובת URL של יעד.
הפעולה הזו לא מופעלת על ישויות ב-Google SecOps.
התנהגות הפעולה
הפעולה הזו תומכת בהתנהגויות מורכבות, כולל שליחת בקשות אסינכרוניות, יצירה דינמית של מטען ייעודי (payload) וניהול קבצים.
דגימה אסינכרונית
כשמספקים את Expected Response Values, הפעולה פועלת במצב אסינכרוני. במצב הזה, הפעולה מבצעת שוב ושוב שאילתות לנקודת הקצה של היעד כדי לעקוב אחרי מצב התגובה (לדוגמה, המתנה לסיום של משימה ממושכת).
הפעולה מעריכה את גוף התגובה בהתאם לתנאי ה-JSON שצוינו בפרמטר, וממשיכה את ההפעלה עד שהתנאים מתקיימים או עד שהפעולה מגיעה לזמן הקצוב לתפוגה.
לוגיקת התנאים
הפעולה תומכת בלוגיקה הבאה למעקב אחרי מצבי תגובה:
התאמה לשדה יחיד: הפעולה ממתינה עד ששדה ספציפי יגיע לערך יחיד.
{ "state": "finished" }ערכים מרובים (לוגיקת OR): הפעולה מפסיקה את ההרצה אם שדה תואם לאחד מהערכים ברשימה שסופקה. האפשרות הזו שימושית כדי לעצור במצבים של הצלחה ושל שגיאה, וכך למנוע סקרים מיותרים.
{ "state": ["finished", "error"] }שדות מרובים (לוגיקת AND): הפעולה ממתינה עד שכל השדות שצוינו יתאימו לערכים שלהם בו-זמנית.
{ "state": "finished", "percentage": "100" }לוגיקה משולבת: אפשר לשלב כמה תנאים באובייקט JSON.
{ "state": ["finished", "error"], "percentage": "10" }
התנהגות בניתוח JSON
כשמעריכים תנאים, הפעולה מתבצעת לפי הכללים הבאים:
חיפוש גלובלי: הפעולה מחפשת את המפתחות שצוינו בכל אובייקט התגובה בפורמט JSON. צריך לספק את שם המפתח בדיוק כמו שהוא מופיע ב-JSON, בלי להוסיף לפניו שמות של אובייקטים הוריים או להשתמש בקידומות (לדוגמה, צריך להשתמש ב-
"state"ולא ב-"data_state"או ב-"data-state").כמה מפתחות זהים: אם התגובה מכילה כמה מפתחות עם אותו שם ברמות שונות בהיררכיית ה-JSON, הפלט הצפוי יתקבל רק אם כל שמות המפתחות התואמים יספקו את אותו ערך צפוי.
לדוגמה, כדי לחפש את המצב
finishedבתגובת ה-JSON ולהתעלם ממצבים אחרים, צריך להגדיר את כל המפתחותstateב-Expected Response Valuesלערךfinished:{ "data": { "state": "finished" }, "state": "finished" }
יצירת מטען ייעודי (payload) של גוף הבקשה
הפעולה יוצרת את גוף הבקשה על סמך הכותרת Content-Type שצוינה ב-Headers.
זהו הקלט Body Payload שמשמש בדוגמאות הבאות של בנייה:
{
"Id": "123123",
"sorting": "asc"
}
application/x-www-form-urlencoded: הפעולה יוצרת את מטען הייעודי (payload) בתורId=123123&sorting=asc.
application/json: הפעולה יוצרת את מטען ה-JSON הייעודי (payload) הבא:{ "Id": "123123", "sorting": "asc" }
XML: אם המוצר של צד שלישי דורש XML, צריך לספק קלט בפורמט XML ישירות ב-Body Payload:<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="[http://schemas.xmlsoap.org/soap/envelope/](http://schemas.xmlsoap.org/soap/envelope/)"> <soap:Body> <NumberToWords xmlns="[http://www.dataaccess.com/webservicesserver/](http://www.dataaccess.com/webservicesserver/)"> <ubiNum>500</ubiNum> </NumberToWords> </soap:Body> </soap:Envelope>
טיפול בקבצים
הפעולה תומכת בתהליכי העבודה הבאים לניהול קבצים:
הורדת קבצים:
כדי להחזיר נתוני קובץ כחלק מתוצאת ה-JSON בפורמט base64, בוחרים באפשרות
Base64 Output.כדי לשמור קובץ ישירות ב-Case Wall כארכיון ZIP, בוחרים באפשרות
Save To Case Wall.
העלאת קבצים: כדי להעלות קובץ, צריך להמיר אותו למחרוזת בקידוד Base64 ולכלול אותו כחלק מהערך
Body Payload.בדוגמה הבאה מוצג קובץ תמונה שהומר למחרוזת מקודדת ב-Base64:
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אבטחה: לקבצים רגישים (כמו תוכנות זדוניות), בוחרים באפשרות
Password Protect Zip. הפעולה הזו מצפינה באופן אוטומטי את ארכיון ה-ZIP שנשמר ונוצר באמצעותSave To Case Wallעם הסיסמהinfected.
הגדרת בלוקים ב-Playbook
ההגדרה הבאה מדגימה איך להשתמש בפעולה Execute HTTP Request בתוך בלוק של playbook. הדוגמה הזו תעזור לכם להבין איך להשתמש במחזיקי מקום ובקידומות קלט.
כשמשתמשים בבלוקים של קלט כערכי placeholder, צריך לכלול את הקידומת Input. (לדוגמה, [Input.comment]).
Method:
PUTנתיב כתובת ה-URL:
https://{API_URL}/[Input.table_name]/[Input.sys_id]כותרות:
{ "Content-type": "application/json; charset=utf-8", "Accept": "application/json", "User-Agent": "GoogleSecops" }מטען ייעודי (payload) של גוף הבקשה:
{ "work_notes": "[Input.comment]" }
הוספת נתונים לפעולה
הפעולה Execute HTTP Request (ביצוע בקשת HTTP) מחייבת את הפרמטרים הבאים:
| פרמטר | תיאור |
|---|---|
|
אופציונלי השיטה שבה רוצים להשתמש בבקשה. ערך ברירת המחדל הוא
|
|
אופציונלי כתובת ה-URL להרצה. |
URL Params |
אופציונלי הפרמטרים של כתובת ה-URL. הפעולה משתמשת בכל ערך שמופיע לצד הערכים שמופיעים ישירות בפרמטר URL Path. לדוגמה, המחרוזת?parameter=value&sorting=asc בקצה העורפי מציינת שהקלט הוא:
{
"parameter": "value",
"sorting": "asc"
}
הפרמטר הזה מחייב קלט בפורמט אובייקט JSON. ערך ברירת המחדל הוא: {
"URL Field Name": "URL_FIELD_VALUE"
} |
|
אופציונלי כותרות לשימוש בבקשת HTTP. לדוגמה, בקשת HTTP עם הכותרות
{
"Accept": "application/json",
"User-Agent": "Google Secops"
}
הפרמטר הזה מחייב קלט בפורמט אובייקט JSON. ערך ברירת המחדל הוא: {
"Content-Type": "application/json; charset=utf-8",
"Accept": "application/json",
"User-Agent" : "GoogleSecOps"
} |
Cookie |
אופציונלי הפרמטרים שבהם צריך להשתמש בכותרת Cookie. הפרמטר הזה מחליף את קובץ ה-Cookie שמופיע בפרמטר Headers. לדוגמה, כדי לכלול כותרת Cookie עם הערך
{
"PHPSESSID": "298zf09hf012fh2",
"csrftoken": "u32t4o3tb3gg43"
}
הפרמטר הזה מחייב קלט בפורמט אובייקט JSON. ערך ברירת המחדל הוא: {
"Cookie_1": "COOKIE_1_VALUE"
} |
|
אופציונלי
גוף בקשת ה-HTTP. הפעולה יוצרת מטען ייעודי שונה בהתאם לערך הכותרת הפרמטר הזה מחייב קלט בפורמט אובייקט JSON, אלא אם מוצר של צד שלישי מחייב תוכן בפורמט XML או ערך ברירת המחדל הוא: {
"Body Field Name": "BODY_FIELD_VALUE"
} |
Expected Response Values |
זה שינוי אופציונלי. אובייקט JSON שמכיל את צמדי השדה-ערך שמגדירים את המצב הנדרש של גוף התגובה. |
|
אופציונלי אם בוחרים באפשרות הזו, הפעולה שומרת את הקובץ ומצרפת אותו לקיר של הפנייה. הקובץ נשמר בארכיון עם הסיומת האפשרות הזו לא מסומנת כברירת מחדל. |
|
אופציונלי אם בוחרים באפשרות הזו, הפעולה מוסיפה סיסמה לקובץ משתמשים בפרמטר הזה כשעובדים עם קבצים חשודים. האפשרות הזו מסומנת כברירת מחדל. |
Follow Redirects |
אופציונלי אם בוחרים באפשרות הזו, הפעולה מתבצעת אחרי ההפניות האוטומטיות. האפשרות הזו מסומנת כברירת מחדל. |
Fail on 4xx/5xx |
אופציונלי אם האפשרות הזו נבחרה, הפעולה תיכשל אם קוד הסטטוס של התגובה הוא שגיאות 4xx או 5xx. האפשרות הזו מסומנת כברירת מחדל. |
|
אופציונלי אם בוחרים באפשרות הזו, הפעולה ממירה את התשובה לפורמט base64. משתמשים בפרמטר הזה כשמורידים קבצים. התוצאה בפורמט JSON לא יכולה להיות גדולה מ-15MB. האפשרות הזו לא מסומנת כברירת מחדל. |
Fields To Return |
חובה השדות שיוחזרו. הערכים שאפשר לבחור הם:
|
Request Timeout |
חובה כמות הזמן להמתנה עד שהשרת ישלח נתונים לפני שהפעולה תיכשל. ערך ברירת המחדל הוא 120 שניות. |
פלט של פעולות
הפעולה Execute HTTP Request (ביצוע בקשת HTTP) מספקת את הפלטים הבאים:
| סוג הפלט של הפעולה | זמינות |
|---|---|
| קיר המארז | לא זמין |
| קישור לקיר של הפנייה | לא זמין |
| טבלת קיר עם תושבת | לא זמין |
| טבלת העשרה | לא זמין |
| תוצאה בפורמט JSON | יש גישה |
| הודעות פלט | יש גישה |
| תוצאת סקריפט | יש גישה |
תוצאה בפורמט JSON
בדוגמה הבאה מתואר פלט של תוצאת JSON שמתקבלת כשמשתמשים בפעולה Execute HTTP Request (ביצוע בקשת HTTP):
{
"response_data": {
"data": {
"relationships": {
"comment": [
{
"name": "item",
"description": "Object to which the comment belongs to."
},
{
"name": "author",
"description": "User who wrote the comment."
}
]
}
}
},
"redirects": [],
"response_code": 200,
"cookies": {},
"response_headers": {
"Content-Type": "application/json",
"X-Cloud-Trace-Context": "1ca450b35c66634a2ae01248cca50b19",
"Date": "Fri, 03 Nov 2023 16:14:13 GMT",
"Server": "Google Frontend",
"Content-Length": "36084"
},
"apparent_encoding": "ascii"
}
הודעות פלט
ב-Case Wall, הפעולה Execute HTTP Request מספקת את הודעות הפלט הבאות:
| הודעת פלט | תיאור ההודעה |
|---|---|
|
הפעולה הסתיימה בהצלחה. |
|
הפעולה נכשלה. בודקים את החיבור לשרת, את פרמטרי הקלט, את הערך של קובץ ה-JSON או את פרטי הכניסה. |
תוצאת סקריפט
בטבלה הבאה מפורטים הערכים של פלט תוצאות הסקריפט כשמשתמשים בפעולה Execute HTTP Request (הפעלת בקשת HTTP):
| שם התוצאה של הסקריפט | ערך |
|---|---|
is_success |
True או False |
פינג
אפשר להשתמש בפעולה הזו כדי לבדוק את הקישוריות.
הוספת נתונים לפעולה
אין.
פלט של פעולות
הפעולה Ping מספקת את הפלט הבא:
| סוג הפלט של הפעולה | זמינות |
|---|---|
| קיר המארז | לא זמין |
| קישור לקיר של הפנייה | לא זמין |
| טבלת קיר עם תושבת | לא זמין |
| טבלת העשרה | לא זמין |
| תוצאה בפורמט JSON | לא זמין |
| הודעות פלט | יש גישה |
| תוצאת סקריפט | יש גישה |
הודעות פלט
ב-Case Wall, הפעולה Ping מספקת את הודעות הפלט הבאות:
| הודעת פלט | תיאור ההודעה |
|---|---|
Successfully tested connectivity. |
הפעולה הסתיימה בהצלחה. |
Failed to test connectivity. |
הפעולה נכשלה. צריך לבדוק את החיבור לשרת, את פרמטרי הקלט או את פרטי הכניסה. |
תוצאת סקריפט
בטבלה הבאה מפורטים הערכים של פלט התוצאה של הסקריפט כשמשתמשים בפעולת הפינג:
| שם התוצאה של הסקריפט | ערך |
|---|---|
is_success |
True או False |
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.