יצירת פעולות בהתאמה אישית

נתמך ב:

בקטע יצירת שילוב בהתאמה אישית, יצרתם פעולת פינג לשילוב עם Armis. במאמר הזה מוסבר איך ליצור פעולה מותאמת אישית לשילוב עם Armis, שמשפרת את הישויות. ההנחה היא שיש לכם ידע מעשי ב-Python ובתוכנות מונחות-עצמים. כדי להבין מהן הדרישות המוקדמות, כדאי לעיין בתיעוד של ה-SDK ובנוהל השילוב המותאם אישית, ולבדוק את מודולי ה-SDK.

יצירת פעולה מותאמת אישית

כדי ליצור פעולה בהתאמה אישית:

  1. עוברים אל Response > IDE (תשובה > סביבת פיתוח משולבת). הדף IDE (סביבת פיתוח משולבת) יופיע.
  2. לוחצים על יצירת פריט חדש ובוחרים באפשרות פעולה. מזינים שם ובוחרים את השילוב.
  3. לוחצים על יצירה. סביבת הפיתוח המשולבת (IDE) יוצרת תבנית חדשה עם הערות והסברים לקוד.

אובייקט הפעולה של Siemplify

כדי לבצע פעולה ב-Siemplify, צריך לבצע את השלבים הבאים:

  • צריך ליצור מופע של אובייקט מהמחלקה SiemplifyAction.
  • האובייקט צריך להשתמש בשיטה end של המחלקה כדי להחזיר הודעת פלט וערך תוצאה.

ערכי התוצאות

לכל פעולה יש שם פלט שמייצג את ערך התוצאה שמוחזר על ידי השיטה end של SiemplifyAction. ברירת המחדל היא is_success, אבל אפשר לשנות אותה בסביבת הפיתוח המשולבת (IDE). אפשר גם להגדיר ערך החזרה כברירת מחדל למקרה שפעולה נכשלת. לדוגמה, אם הזמן הקצוב לתפוגה של הפעולה הוא חמש דקות (או שהפעולה נכשלת מסיבה אחרת), הערך של ScriptResult מוגדר כ-Timeout.

ערך התוצאה של JSON

אפשר גם להוסיף תוצאת JSON, שימושית לשינוי נקודת המבט על הנתונים ב-playbooks או לניתוח ידני. כדי לעשות את זה, משתמשים בשיטה add_result_json במאפיין התוצאה SiemplifyAction או בשיטה 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.