יצירת פעולות בהתאמה אישית
בקטע יצירת שילוב בהתאמה אישית, יצרתם פעולת פינג לשילוב עם Armis. במאמר הזה מוסבר איך ליצור פעולה מותאמת אישית לשילוב עם Armis, שמשפרת את הישויות. ההנחה היא שיש לכם ידע מעשי ב-Python ובתכנות מונחה-עצמים. כדי להבין מה נדרש, עיינו במסמכי התיעוד של ה-SDK ובתהליך השילוב בהתאמה אישית, ובדקו את המודולים של ה-SDK.
יצירת פעולה בהתאמה אישית
כדי ליצור פעולה בהתאמה אישית:
- עוברים אל Response > IDE. הדף IDE מופיע.
- לוחצים על יצירת פריט חדש ובוחרים באפשרות פעולה. מזינים שם ובוחרים את השילוב.
- לוחצים על יצירה. סביבת הפיתוח המשולבת (IDE) יוצרת תבנית חדשה עם הערות והסברים לקוד.
אובייקט הפעולה של Siemplify
כדי לבצע פעולה ב-Siemplify, צריך לבצע את השלבים הבאים:
- צריך ליצור מופע של אובייקט מהמחלקה
SiemplifyAction. - האובייקט צריך להשתמש בשיטה
endשל המחלקה כדי להחזיר הודעת פלט וערך תוצאה.
ערכי התוצאות
לכל פעולה יש שם פלט שמייצג את ערך התוצאה שמוחזר על ידי השיטה end של SiemplifyAction. ברירת המחדל היא is_success, אבל אפשר לשנות אותה בסביבת הפיתוח המשולבת (IDE). אפשר גם להגדיר ערך החזרה שישמש כברירת מחדל במקרה שפעולה נכשלת.
לדוגמה, אם הזמן הקצוב לתפוגה של הפעולה מסתיים אחרי חמש דקות (או אם הפעולה נכשלת מסיבה אחרת), הערך של ScriptResult מוגדר כ-Timeout.
ערך התוצאה ב-JSON
אפשר גם להוסיף תוצאת JSON, שמועילה לסיבוב נתונים בפלייבוקים או לניתוח ידני. כדי לעשות את זה, משתמשים ב-method add_result_json במאפיין התוצאה SiemplifyAction או ב-method add_entity_json כדי לצרף תוצאת JSON ישירות לישות.
ייבוא וקבועים
המחלקה `SiemplifyAction` מהמודול `SiemplifyAction` תמיד מיובאת. יבוא נפוץ אחר כולל:
-
output_handlerמ-SiemplifyUtilsלצורך ניפוי באגים. -
add_prefix_to_dict_keysו-convert_dict_to_json_result_dictלטרנספורמציה של נתונים. -
EntityTypesכדי לקבוע את סוג הישות שעליה תופעל פעולה.
בנוסף, הפעולה הזו משתמשת מחדש ב-`ArmisManager` שנוצר בתהליך השילוב המותאם אישית ומייבאת את ספריית ה-`json` הרגילה.
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.