שילוב של Jira עם Google SecOps

במאמר הזה מוסבר איך לשלב את Jira עם Google Security Operations.

תרחישים לדוגמה

השילוב עם Jira משתמש ביכולות של Google SecOps כדי לתמוך בתרחישים הבאים:

  • הנפקת כרטיסים אוטומטית: יצירה אוטומטית של בעיות ב-Jira מהתראות של Google SecOps באמצעות מחבר Jira כדי לייעל את העברת הנתונים בין צוותי האבטחה וה-IT.

  • סנכרון דו-כיווני: שמירה על עקביות בין הפלטפורמות על ידי סנכרון אוטומטי של תגובות ושינויי סטטוס בין כרטיסי Jira לבין אירועים ב-Google SecOps באמצעות משימות סנכרון ייעודיות.

  • העשרת אירועים: כדי לספק הקשר מלא לגורמים שמטפלים בבעיה, אתם יכולים לצרף הוכחות, יומנים וצילומי מסך ישירות לבעיות ב-Jira באמצעות הפעולה Upload Attachment.

  • ניהול משימות דינמי: עדכון, הקצאה או קישור של בעיות קשורות ב-Jira ישירות מה-Playbook של Google SecOps כדי להפוך את נוהלי ההפעלה הרגילים (SOP) לאוטומטיים.

לפני שמתחילים

לפני שמגדירים את השילוב של Jira בפלטפורמת Google SecOps, צריך לוודא שיש לכם את הפרטים הבאים:

  • תאימות למוצרים: גישה למכונה של Jira Cloud או לסביבה של Jira Data Center (On-Prem).

  • שיטת אימות: בוחרים שיטת אימות.

    • אימות בסיסי (Jira Cloud): נדרשים שם משתמש (אימייל) ואסימון Atlassian API.
    • אימות של חשבון שירות (Jira Cloud): נדרשים אסימון של חשבון שירות ומזהה Cloud.
    • אימות רגיל (Jira Data Center): נדרשים שם משתמש וסיסמה תקינים.
  • כתובת ה-URL הבסיסית של ה-API: הפורמט של כתובת ה-URL הבסיסית של ה-API תלוי בשיטת האימות.

    • ‫Standard/Basic: כתובת ה-URL הבסיסית של המכונה של Jira (לדוגמה, https://yourdomain.atlassian.net).
    • ‫Service account: כתובת ה-URL של שרת ה-proxy של Atlassian API, שחייבת לכלול את מזהה הענן (לדוגמה, https://api.atlassian.com/ex/jira/{cloud_id}).

הגדרת אימות ל-Jira Cloud

כדי להתחבר ל-Jira Cloud באמצעות אסימון API, פועלים לפי ההוראות במסמכי התיעוד של Atlassian כדי ליצור אסימון.

הגדרת אימות לחשבונות שירות

כדי להשתמש באימות מבוסס-טוקן (טוקן למוכ"ז) ב-Jira Cloud:

  1. במאמר הסבר על חשבונות שירות מוסבר איך יוצרים חשבון שירות באמצעות מסוף Admin של Atlassian.

  2. כדי לאחזר את מזהה הענן, עוברים אל: https://<your_tenant>.atlassian.net/_edge/tenant_info (כאשר <your_tenant> הוא השם הספציפי של המכונה של Atlassian).

  3. כשמגדירים את השילוב, משאירים את השדה Username ריק כדי להפעיל אימות באמצעות טוקן למוכ"ז.

פרמטרים של שילוב

כדי לשלב את Jira, צריך להגדיר את הפרמטרים הבאים:

פרמטר תיאור
Api Root

חובה.

כתובת ה-URL הבסיסית של המכונה ב-Jira.

Username

זה שינוי אופציונלי.

שם המשתמש (כתובת האימייל) שמשמש להתחברות ל-Jira.

הדרישה לפרמטר הזה תלויה בשיטת האימות שנבחרה:

  • אם מציינים את המאפיין הזה, המערכת משתמשת באימות בסיסי.
  • אם משאירים את השדה ריק, המערכת משתמשת כברירת מחדל באימות באמצעות טוקן למוכ"ז (נדרש לחשבונות שירות).

למידע נוסף על שיטות אימות, ראו לפני שמתחילים.

Api Token

חובה.

פרטי הכניסה לאימות שמשמשים להתחברות ל-Jira.

בשדה הזה אפשר להזין טוקנים של API, טוקנים של חשבונות שירות או סיסמאות רגילות (ל-מרכז נתונים).

Verify SSL

זה שינוי אופציונלי.

אם בוחרים באפשרות הזו, השילוב מאמת את אישור ה-SSL כשמתחברים לשרת של Jira.

איך מגדירים שילובים ב-Google SecOps

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

פעולות

מידע נוסף על פעולות זמין במאמרים מענה לפעולות בהמתנה משולחן העבודה והפעלה ידנית של פעולה בבקשת התמיכה.

הוסף הערה

משתמשים בפעולה Add Comment כדי לכתוב ולהוסיף תגובה לנושא קיים ב-Jira.

זו דרך יעילה לתעד ממצאים, לספק עדכונים ולשתף פעולה עם חברי הצוות ישירות מ-Google SecOps.

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

הפעולה הוספת תגובה דורשת את הפרמטרים הבאים:

פרמטר תיאור
Issue Key

חובה.

המזהה הייחודי של הקריאה ב-Jira (לדוגמה, PROJ-123).

Comment

חובה.

הטקסט שיתווסף לקריאה ב-Jira.

ערכי פלט של פעולות

הפעולה הוספת תגובה מספקת את הפלטים הבאים:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז לא זמין
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר לא זמין
טבלת העשרה לא זמין
תוצאת JSON לא זמין
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
תוצאת הסקריפט

בטבלה הבאה מפורטים הערכים של פלט תוצאת הסקריפט כשמשתמשים בפעולה Add Comment:

שם תוצאת הסקריפט ערך
comment_id המזהה הייחודי של התגובה החדשה שנוצרה ב-Jira.

הקצאת הבעיה

כדי להקצות סוגיה ב-Jira למשתמש ספציפי, משתמשים בפעולה הקצאת סוגיה.

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

הפעולה Assign Issue דורשת את הפרמטרים הבאים:

פרמטר תיאור
Issue Key

חובה.

המזהה הייחודי של הקריאה ב-Jira (לדוגמה, PROJ-123).

Assignee

חובה.

השם או כתובת האימייל של המשתמש שרוצים להקצות לו את הבעיה.

Jira Username

זה שינוי אופציונלי.

שם המשתמש ב-Jira של האדם שהתחיל את פעולת ההקצאה.

ערכי פלט של פעולות

הפעולה Assign Issue מספקת את הפלטים הבאים:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז לא זמין
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר לא זמין
טבלת העשרה לא זמין
תוצאת JSON לא זמין
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
תוצאת הסקריפט

בטבלה הבאה מפורטים הערכים של פלט תוצאת הסקריפט כשמשתמשים בפעולה Assign Issue:

שם תוצאת הסקריפט ערך
success true או false

יצירת בעיה מסוג התראה

כדי ליצור כרטיס חדש ב-Jira להתראה ספציפית, משתמשים בפעולה Create Alert Issue.

הפעולה הזו משמשת בעיקר בפלייבוקים כדי להעביר אירועי אבטחה לצוותי IT או הנדסה להמשך חקירה או טיפול.

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

הפעולה יצירת בעיה מסוג התראה דורשת את הפרמטרים הבאים:

פרמטר תיאור
Project Key

חובה.

המפתח הייחודי של הפרויקט ב-Jira שבו נוצרת הקריאה לדיווח על בעיה (למשל SEC).

Summary

חובה.

כותרת קצרה או סיכום של הבעיה.

Issue Type

חובה.

השם של סוג הבעיה (למשל Task,‏ Bug או Incident).

ערכי פלט של פעולות

הפעולה Create Alert Issue מספקת את הפלטים הבאים:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז לא זמין
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר לא זמין
טבלת העשרה לא זמין
תוצאת JSON יש גישה
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
תוצאת JSON

בדוגמה הבאה מוצג פלט התוצאה בפורמט JSON שמתקבל כשהפעולה יוצרת בעיה בהצלחה:

{
   "summary": "Sample issue",
   "description": "Create Enrich entities action using Insights API (IOC search). Write connector for alerts.",
   "project": {
      "key": "PR",
      "name": "Project 1",
      "projectTypeKey": "software"
   },
   "issuetype": {
     "name": "Task",
     "subtask": false
   },
   "status": {
      "name": "DONE",
      "statusCategory": {
         "name": "Done",
         "key": "done"
      }
   },
   "priority": {
      "name": "Medium",
      "id": "3"
   },
   "creator": {
      "displayName": "user1",
      "emailAddress": "john_doe@example.com"
   },
   "assignee": {
      "displayName": "user2",
      "emailAddress": "john_doe@example.com"
   },
   "created": "2018-06-19T15:23:13.701+0300",
   "updated": "2018-09-18T10:02:06.347+0300"
}
תוצאת הסקריפט

בטבלה הבאה מפורטים הערכים של פלט תוצאת הסקריפט כשמשתמשים בפעולה Create Alert Issue:

שם תוצאת הסקריפט ערך
issue_key המזהה הייחודי של הקריאה החדשה שנוצרה ב-Jira (לדוגמה, SEC-456).

יצירת בעיה

כדי ליצור כרטיס חדש בפרויקט ב-Jira, משתמשים בפעולה Create Issue (יצירת קריאה לדיווח על בעיה).

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

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

הפעולה Create Issue דורשת את הפרמטרים הבאים:

פרמטר תיאור
Project Key

חובה.

המפתח הייחודי של הפרויקט ב-Jira שבו נוצרת הקריאה לדיווח על בעיה (למשל SEC).

Summary

חובה.

כותרת קצרה או סיכום של הבעיה.

Description

זה שינוי אופציונלי.

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

Issue Type

חובה.

השם של סוג הבעיה (למשל Task,‏ Bug או Incident).

Jira Username

זה שינוי אופציונלי.

שם המשתמש ב-Jira של האדם שמתחיל את הפעולה.

Assignee

זה שינוי אופציונלי.

המזהה של המשתמש שהבעיה הוקצתה לו.

Components

זה שינוי אופציונלי.

רשימה מופרדת בפסיקים של רכיבי Jira שרוצים לשייך לבעיה.

Labels

זה שינוי אופציונלי.

רשימה מופרדת בפסיקים של תוויות שרוצים להוסיף לבעיה.

Custom Fields

זה שינוי אופציונלי.

אובייקט JSON שמכיל שדות וערכים נוספים להגדרה במהלך היצירה (לדוגמה, {"customfield_10001": "Value"}).

הערכים שצוינו בפרמטר הזה מקבלים עדיפות ומחליפים מיפויים של שדות אחרים אם יש התנגשות.

ערכי פלט של פעולות

הפעולה Create Issue מספקת את הפלטים הבאים:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז לא זמין
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר לא זמין
טבלת העשרה לא זמין
תוצאת JSON יש גישה
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
תוצאת JSON

בדוגמה הבאה מוצג פלט התוצאה בפורמט JSON שמתקבל כשמשתמשים בפעולה Create Issue:

{
   "summary": "Sample issue",
   "description": "Create Enrich entities action using Insights API (IOC search). Write connector for alerts. In a couple of days we will have access to an instance.",
   "project": {
      "key": "PR",
      "name": "Project 1",
      "projectTypeKey": "software"
   },
   "issuetype": {
      "name": "Task",
      "description": "A task that needs to be done.",
      "subtask": false
   },
   "status": {
      "name": "DONE",
      "statusCategory": {
         "name": "Done",
         "key": "done",
         "colorName": "green"
      }
   },
   "priority": {
      "name": "Medium",
      "id": "3"
   },
   "resolution": {
      "name": "Done",
      "description": "Work has been completed on this issue."
   },
   "creator": {
      "displayName": "user1",
      "emailAddress": "john_doe@example.com",
      "active": true,
      "timeZone": "Asia/Jerusalem"
   },
   "assignee": {
      "displayName": "user2",
      "emailAddress": "john_doe@example.com",
      "active": true
   },
   "reporter": {
      "displayName": "user1",
      "emailAddress": "john_doe@example.com"
   },
   "labels": [
      "Label1"
   ],
   "attachment": [
      {
         "id": "1001",
         "filename": "file.rar",
         "mimeType": "binary/octet-stream",
         "size": 15420,
         "created": "2018-06-19T15:23:07.369+0300"
      }
   ],
   "created": "2018-06-19T15:23:13.701+0300",
   "updated": "2018-09-18T10:02:06.347+0300",
   "resolutiondate": "2018-09-18T10:02:06.340+0300",
   "watches": {
      "watchCount": 1,
      "isWatching": false
   }
}
תוצאת הסקריפט

בטבלה הבאה מפורטים הערכים של פלט תוצאת הסקריפט כשמשתמשים בפעולה Create Issue:

שם תוצאת הסקריפט ערך
issue_key המפתח הייחודי של הקריאה החדשה שנוצרה ב-Jira (לדוגמה, SEC-789).

מחיקת הבעיה

כדי להסיר קריאה מ-Jira באופן סופי, משתמשים בפעולה מחיקת קריאה.

בדרך כלל משתמשים בפעולה הזו כדי לנקות פניות כפולות או להסיר נתוני בדיקה שנוצרו במהלך הפיתוח של הפלייבוק.

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

הפעולה Delete Issue דורשת את הפרמטרים הבאים:

פרמטר תיאור
Issue Key

חובה.

המזהה הייחודי של הקריאה ב-Jira שרוצים למחוק (לדוגמה, SEC-123).

ערכי פלט של פעולות

הפעולה Delete Issue מספקת את הפלט הבא:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז לא זמין
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר לא זמין
טבלת העשרה לא זמין
תוצאת JSON לא זמין
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
תוצאת הסקריפט

בטבלה הבאה מפורטים הערכים של פלט תוצאת הסקריפט כשמשתמשים בפעולה Delete Issue:

שם תוצאת הסקריפט ערך
success true או false

הורדת קבצים מצורפים

משתמשים בפעולה הורדת קבצים מצורפים כדי לאחזר את כל הקבצים שמצורפים לבעיה ספציפית ב-Jira. אם הקובץ המצורף הוא קובץ .eml, הפעולה גם מורידה את כל הקבצים שכלולים באימייל הזה.

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

הפעולה הורדת קבצים מצורפים דורשת את הפרמטרים הבאים:

פרמטר תיאור
Issue Key

חובה.

המפתח הייחודי של הקריאה ב-Jira (לדוגמה, SEC-123).

Download Path

זה שינוי אופציונלי.

הנתיב המקומי או הפנימי לתיקייה שבה הפעולה שומרת את הקבצים המצורפים שהורדו.

הפורמט הנדרש תלוי בסוג הפריסה:

  • ‫SaaS Deployment: הנתיב הוא פנימי לפלטפורמה המארחת, כמו /attachments/.
  • פריסת סוכן מרוחק: הנתיב חייב להיות נתיב ספרייה מוחלט ותקין במחשב המקומי שבו מותקן הסוכן המרוחק. לדוגמה, C:\temp\attachments ל-Windows או /var/tmp/attachments/ ל-Linux.
Download Attachments to the Case Wall

זה שינוי אופציונלי.

אם בוחרים באפשרות הזו, הפעולה מורידה את הקבצים המצורפים של הבעיה ב-Jira ישירות לקיר של האירוע הנוכחי ב-Google SecOps.

יש מגבלה על הגודל של קבצים מצורפים שאפשר להוסיף לקיר של בקשת התמיכה. יכול להיות שקבצים גדולים לא יועלו.

מושבתת כברירת מחדל.

ערכי פלט של פעולות

הפעולה הורדת קבצים מצורפים מספקת את הפלטים הבאים:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז יש גישה
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר לא זמין
טבלת העשרה לא זמין
תוצאת JSON יש גישה
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
תוצאת JSON

הדוגמה הבאה מראה את פלט התוצאה בפורמט JSON שמתקבל כשמשתמשים בפעולה Download Attachments:

[
  {
    "download_path": "downloads/Security_Evidence.eml",
    "attachment_details": {
      "id": "10007",
      "filename": "Security_Evidence.eml",
      "author": {
        "displayName": "Security Analyst",
        "emailAddress": "analyst@example.com",
        "active": true,
        "timeZone": "Asia/Calcutta"
      },
      "created": "2024-05-25T20:27:09.066+0530",
      "size": 12049140,
      "mimeType": "message/rfc822"
    }
  },
  {
    "download_path": "downloads/Logs_Attachment.txt",
    "attachment_details": {
      "id": "10005",
      "filename": "Logs_Attachment.txt",
      "author": {
        "displayName": "System Admin",
        "emailAddress": "admin@example.com",
        "active": true,
        "timeZone": "Asia/Calcutta"
      },
      "created": "2024-05-16T11:48:24.141+0530",
      "size": 43,
      "mimeType": "text/plain"
    }
  }
]
תוצאת הסקריפט

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

שם תוצאת הסקריפט ערך
is_success true או false

קבלת גיליונות

כדי לאחזר פרטים מלאים על בעיה אחת או יותר ב-Jira, משתמשים בפעולה Get Issues.

הפעולה הזו שימושית להעשרת בקשות ב-Google SecOps עם מטא-נתונים עדכניים של כרטיסי מידע (כמו סטטוס, מקבל ההקצאה ועדיפות).

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

הפעולה Get Issues דורשת את הפרמטרים הבאים:

פרמטר תיאור
Issue Keys

חובה.

רשימה מופרדת בפסיקים של מפתחות של קריאות ב-Jira שרוצים לאחזר (לדוגמה, SEC-123, SEC-456).

ערכי פלט של פעולות

הפעולה Get Issues מספקת את הפלטים הבאים:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז לא זמין
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר לא זמין
טבלת העשרה לא זמין
תוצאת JSON יש גישה
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
תוצאת JSON

בדוגמה הבאה מוצג פלט התוצאה בפורמט JSON שמתקבל כשמשתמשים בפעולה Get Issues:

{
  "issues_details_list": [
    {
      "key": "TES-65",
      "summary": "New summary",
      "description": "Detailed description of the security incident.",
      "project": {
        "key": "TES",
        "name": "test-project1",
        "projectTypeKey": "software"
      },
      "issuetype": {
        "name": "Bogue",
        "subtask": false
      },
      "status": {
        "name": "Fini",
        "statusCategory": {
          "name": "Terminé",
          "key": "done"
        }
      },
      "priority": {
        "name": "Medium",
        "id": "3"
      },
      "assignee": {
        "displayName": "Vasil Daskalov",
        "emailAddress": "vasil.daskalov@siemplify.co"
      },
      "creator": {
        "displayName": "admin@siemplifylab.local",
        "emailAddress": "admin@siemplifylab.local"
      },
      "created": "2021-08-31T12:15:22.089+0000",
      "updated": "2021-11-11T13:16:50.552+0000",
      "resolution": {
        "name": "Terminé",
        "description": "Ce ticket a été traité."
      },
      "labels": [],
      "components": []
    }
  ]
}
תוצאת הסקריפט

בטבלה הבאה מפורטים הערכים של פלט תוצאות הסקריפט כשמשתמשים בפעולה Get Issues:

שם תוצאת הסקריפט ערך
issues_details_list רשימה שמכילה את המטא-נתונים המלאים של הקריאות המבוקשות ב-Jira.

כדי ליצור קשר בין כמה בעיות ב-Jira, משתמשים בפעולה Link Issues.

הפעולה הזו משמשת בעיקר בפלייבוקים כדי לקשר אירועי אבטחה קשורים או כדי לעקוב אחרי יחסי תלות בין כרטיסי חקירה.

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

הפעולה קישור בעיות דורשת את הפרמטרים הבאים:

פרמטר תיאור
Inward Issue ID

חובה.

רשימה מופרדת בפסיקים של מזהי בעיות פנימיות.

לדוגמה, אם Relation Type מוגדר לערך Blocks, הבעיה הזו מציגה את הקשר is blocked by בממשק המשתמש של Jira.

Outward Issue IDs

חובה.

המפתח המקוצר של הקריאה החיצונית ב-Jira.

לדוגמה, אם Relation Type מוגדר לערך Blocks, הבעיה הזו מציגה את הקשר blocks בממשק המשתמש של Jira.

Relation Type

חובה.

סוג הקישור שרוצים ליצור בין הבעיות.

כדי למצוא רשימה של סוגי הקשרים הזמינים, אפשר להריץ את הפעולה List Relation Types.

ערך ברירת המחדל הוא Blocks.

ערכי פלט של פעולות

הפעולה קישור בעיות מספקת את הפלטים הבאים:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז לא זמין
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר לא זמין
טבלת העשרה לא זמין
תוצאת JSON יש גישה
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
הודעות פלט

הפעולה Link Issues יכולה להחזיר את הודעות הפלט הבאות:

הודעת פלט תיאור ההודעה

Successfully linked issue ISSUE_ID with the following issues in Jira: ISSUE_IDS.

הפעולה לא הצליחה למצוא את הקריאות הבאות ב-Jira: ISSUE_IDS.

הפעולה בוצעה בהצלחה
Error executing action "Link Issues". Reason: ERROR_REASON

הפעולה נכשלה.

בודקים את החיבור לשרת, את הפרמטרים של הקלט או את פרטי הכניסה.

תוצאת הסקריפט

בטבלה הבאה מפורטים הערכים של פלט תוצאות הסקריפט כשמשתמשים בפעולה Link Issues:

שם תוצאת הסקריפט ערך
success true או false

רשימת הבעיות

משתמשים בפעולה List Issues כדי לחפש ולאחזר רשימה של מפתחות של קריאות ב-Jira על סמך קריטריונים ספציפיים לסינון.

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

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

הפעולה List Issues מספקת את פרמטרי הסינון האופציונליים הבאים. אם לא צוינו פרמטרים, הפעולה מחזירה את כל הבעיות שמשתמש האינטגרציה יכול לגשת אליהן.

פרמטר תיאור
Project Names

זה שינוי אופציונלי.

רשימה מופרדת בפסיקים של שמות פרויקטים שבהם רוצים לחפש.

Summary

זה שינוי אופציונלי.

אם צוין, הפעולה מסננת את הבעיות לפי הסיכום או הכותרת הספציפיים.

Description

זה שינוי אופציונלי.

אם מציינים את הפעולה, הבעיות מסוננות לפי הטקסט שמופיע בתיאור.

Issue Types

זה שינוי אופציונלי.

רשימה מופרדת בפסיקים של סוגי בעיות (לדוגמה, Bug,Task).

ערך ברירת המחדל הוא Bug.

Priorities

זה שינוי אופציונלי.

רשימה מופרדת בפסיקים של רמות עדיפות לסינון (לדוגמה, High,Medium).

Created From

זה שינוי אופציונלי.

אם מציינים תאריך, הפעולה מסננת בעיות שנוצרו בתאריך הזה או אחריו (בפורמט YYYY/MM/DD).

Updated From

זה שינוי אופציונלי.

אם מציינים תאריך, הפעולה מסננת בעיות שעודכנו בתאריך הזה או אחריו (בפורמט YYYY/MM/DD).

Assignees

זה שינוי אופציונלי.

רשימה מופרדת בפסיקים של מזהי מקבלי ההקצאה, שמשמשת לסינון.

Reporter

זה שינוי אופציונלי.

רשימה מופרדת בפסיקים של מזהי מדווחים לסינון.

Statuses

זה שינוי אופציונלי.

רשימה מופרדת בפסיקים של סטטוסים של בעיות, שלפיהם אפשר לסנן (לדוגמה, Open,In Progress).

Created Before

זה שינוי אופציונלי.

תאריך היצירה האחרון שלפיו רוצים לסנן. פורמט: YYYY/MM/DD או היסט יחסי (לדוגמה, -24h, -7d). אם לא צוין, לא ייעשה שימוש במסנן.

Custom JQL

זה שינוי אופציונלי.

שאילתת JQL בהתאמה אישית. אם מציינים את הפרמטר הזה, המערכת מתעלמת מכל המסננים האחרים.

ערכי פלט של פעולות

הפעולה List Issues מספקת את הפלטים הבאים:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז לא זמין
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר לא זמין
טבלת העשרה לא זמין
תוצאת JSON יש גישה
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
תוצאת JSON

הדוגמה הבאה מראה את פלט התוצאה ב-JSON שמתקבל כשמשתמשים בפעולה List Issues:

[ 
  "PR-123", 
  "PR-124",
  "SEC-789"
]
תוצאת הסקריפט

בטבלה הבאה מפורטים הערכים של פלט תוצאות הסקריפט כשמשתמשים בפעולה List Issues:

שם תוצאת הסקריפט ערך
issues רשימה שמכילה את המקשים הייחודיים של הקריאות ב-Jira שנמצאו.

רשימת סוגי הקשרים

כדי לאחזר רשימה של כל סוגי הקשרים הזמינים שהוגדרו במופע של Jira, משתמשים בפעולה List Relation Types.

הפעולה הזו שימושית לאימות ערכי קלט תקינים לפעולה Link Issues.

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

הפעולה List Relation Types דורשת את הפרמטרים הבאים:

פרמטר תיאור
Filter Key

זה שינוי אופציונלי.

השדה שמשמש לסינון סוגי הקשרים.

אם הלוגיקה של המסנן מוגדרת ל-Equal או ל-Contains, צריך לבחור שדה שהוא לא Select One כדי למנוע שגיאת הפעלה.

הערכים האפשריים הם:

  • Name
  • Inward
  • Outward

ערך ברירת המחדל הוא Select One.

Filter Logic

זה שינוי אופציונלי.

האופרטור הלוגי שמופעל על המסנן.

הערכים האפשריים הם:

  • Not Specified
  • Equal
  • Contains

ערך ברירת המחדל הוא Not Specified.

Filter Value

זה שינוי אופציונלי.

ערך המחרוזת הספציפי שמשמש לסינון על סמך Filter Key ו-Filter Logic שנבחרו.

אם לא מציינים ערך, המסנן לא מופעל גם אם בוחרים מפתח ולוגיקה.

Max Records To Return

זה שינוי אופציונלי.

המספר המקסימלי של רשומות שיוחזרו בתוצאות.

ערך ברירת המחדל הוא 50.

ערכי פלט של פעולות

הפעולה List Relation Types מספקת את הפלטים הבאים:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז לא זמין
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר יש גישה
טבלת העשרה לא זמין
תוצאת JSON יש גישה
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
שולחן קונסולה צמוד לקיר

הפעולה List Relation Types מספקת את הטבלה הבאה:

שם הטבלה: Available Relation

עמודות בטבלה:

  • שם
  • פנימה
  • הלוך
תוצאת JSON

בדוגמה הבאה מוצג פלט התוצאה בפורמט JSON שמתקבל כשמשתמשים בפעולה List Relation Types:

[{
    "id": "10000",
    "name": "Blocks",
    "inward": "is blocked by",
    "outward": "blocks"
}]
הודעות פלט

הפעולה List Relation Types יכולה להחזיר את הודעות הפלט הבאות:

הודעת פלט תיאור ההודעה

Successfully found relation types for the provided criteria in Jira.

The filter was not applied, because parameter "Filter Value" has an empty value.

הפעולה בוצעה בהצלחה.
Error executing action "List Relation types". Reason: ERROR_REASON

הפעולה נכשלה.

בודקים את החיבור לשרת, את הפרמטרים של הקלט או את פרטי הכניסה.

תוצאת הסקריפט

בטבלה הבאה מפורטים הערכים של פלט התוצאות של הסקריפט כשמשתמשים בפעולה List Relation Types:

שם תוצאת הסקריפט ערך
is_success true או false

פינג

משתמשים בפעולה פינג כדי לבדוק את הקישוריות ל-Jira.

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

אין.

ערכי פלט של פעולות

הפעולה פינג מספקת את הפלטים הבאים:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז לא זמין
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר לא זמין
טבלת העשרה לא זמין
תוצאת JSON לא זמין
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
תוצאת הסקריפט

בטבלה הבאה מפורטים הערכים של פלט הסקריפט כשמשתמשים בפעולה פינג:

שם תוצאת הסקריפט ערך
success true או false

עדכון הבעיה

תיאור

עדכון של בעיה. ב-API החדש של Jira, הפעולה מנסה למצוא התאמה למקבל ההקצאה כדי להקצות בעיה על סמך כתובת האימייל של המשתמש, ואז מנסה עם השדה displayName.

פרמטרים

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

שדה הרכיבים של הבעיה.

הפרמטר הזה מקבל כמה ערכים כמחרוזת מופרדת בפסיקים.

שדות מותאמים אישית JSON לא זמין לא

ציינו אובייקט JSON שמכיל את כל השדות והערכים שמשמשים ליצירת הבעיה.

הערה: לפרמטר הזה יש עדיפות, וכל השדות מוחלפים בערך שצוין בפרמטר הזה.

דוגמה: {"field":"value"}

תוויות String לא רלוונטי לא

שדה הרכיבים של הבעיה.

הפרמטר הזה מקבל כמה ערכים כמחרוזת מופרדת בפסיקים.

ריצה

הפעולה הזו פועלת בכל הישויות.

תוצאות הפעולה

תוצאת הסקריפט
שם תוצאת הסקריפט אפשרויות ערך דוגמה
הפעולה הצליחה נכון/לא נכון Success:False
תוצאת JSON
{
   "comment":
     {
       "total": 0,
       "startAt": 0,
       "comments": [],
       "maxResults": 0
      },
   "creator":
     {
       "displayName": "user1",
       "name": "user1",
       "self": "",
       "avatarUrls":
          {
            "24x24": "",
            "16x16": "",
            "48x48": "",
            "32x32": ""
           },
        "emailAddress": "john_doe@example.com",
        "key": "user1user",
        "active": true,
        "timeZone": "Asia/Jerusalem",
        "accountId": "0"
       },
   "aggregatetimeestimate": null,
   "labels": ["Label1"],
   "aggregatetimespent": null,
   "watches":
      {
        "self": "",
        "watchCount": 1,
        "isWatching": false
       },
   "assignee":
      {
        "displayName": "user2",
        "name": "user2",
        "self": "",
        "avatarUrls":
           {
              "24x24": "",
              "16x16": "",
              "48x48": "",
              "32x32": ""
            },
        "emailAddress": "john_doe@example.com",
        "key": "user2",
        "active": true,
        "timeZone": "Asia/Jerusalem",
        "accountId": ""
       },
   "lastViewed": "2019-01-22T10:14:02.910+0200",
   "issuelinks": [],
   "Worklog":
      {
        "worklogs": [],
        "total": 0,
        "startAt": 0,
        "maxResults": 20
       },
   "aggregateprogress":
      {
        "progress": 0,
        "total": 0
       },
   "Priority":
      {
        "iconUrl": "",
        "self": "",
        "name": "Medium",
        "id": "3"
       },
   "votes":
       {
          "hasVoted": false,
          "self": "",
          "votes": 0
        },
   "workratio": -1,
   "fixVersions": [],
   "environment": null,
   "timespent": null,
   "attachment":
      [{
          "mimeType": "binary/octet-stream",
          "created": "2018-06-19T15:23:07.369+0300",
          "self": "",
          "author":
             {
               "displayName": "user1",
               "name": "user1",
               "self": "",
               "avatarUrls":
                  {
                     "24x24": "",
                     "16x16": "",
                     "48x48": "",
                     "32x32": ""
                   },
               "emailAddress": "john_doe@example.com",
               "key": "user1",
               "active": true,
               "timeZone": "Asia/Jerusalem",
               "accountId": "0"
              },
           "filename": "file.rar",
           "content": "",
           "id": "0",
           "size": 0
        }],
   "progress":
        {
          "progress": 0,
          "total": 0
         },
   "duedate": null,
   "status":
        {
          "statusCategory":
              {
                 "name": "Done",
                 "self": "",
                 "id": 3,
                 "key": "done",
                 "colorName": "green"
               },
          "description": "",
          "self": "",
          "iconUrl": "",
          "id": "0",
          "name": "DONE"
         },
   "updated": "2018-09-18T10:02:06.347+0300",
   "subtasks": [],
   "description": "Create Enrich entities action using Insights API (IOC search)\\n\\nWrite connector for laerts\\n\\nIn a couple of days we will have access to an instance",
   "reporter":
         {
           "displayName": "user1",
           "name": "user1",
           "self": "",
           "avatarUrls":
               {
                 "24x24": "",
                 "16x16": "",
                 "48x48": "",
                 "32x32": ""
               },
           "emailAddress": "john_doe@example.com",
           "key": "user1",
           "active": true,
           "timeZone": "Asia/Jerusalem",
           "accountId": "0"
          },
    "timeoriginalestimate": null,
    "aggregatetimeoriginalestimate": null,
    "created": "2018-06-19T15:23:13.701+0300",
    "versions": [],
    "resolutiondate": "2018-09-18T10:02:06.340+0300",
    "summary": "Sample issue",
    "project":
          {
             "name": "Project 1",
             "self": "",
             "projectTypeKey": "software",
             "avatarUrls":
                 {
                   "24x24": "",
                   "16x16": "",
                   "48x48": "",
                   "32x32": ""
                  },
             "key": "PR",
             "id": "0"
           },
    "timetracking": {},
    "components": [],
    "issuetype":
          {
             "name": "Task",
             "self": "",
             "iconUrl": "",
             "subtask": false,
             "avatarId": 10318,
             "id": "10002",
             "description": "A task that needs to be done."
           },
    "security": null,
    "resolution":
           {
             "id": "10000",
             "self": "",
             "description": "Work has been completed on this issue.",
              "name": "Done"
             },
    "timeestimate": null
}

העלאת קובץ מצורף

תיאור

להוסיף קובץ מצורף לבעיה.

פרמטרים

פרמטר סוג ערך ברירת המחדל חובה תיאור
מפתח הבעיה String לא רלוונטי כן נתיבי קבצים.
נתיבי קבצים String לא רלוונטי כן

הנתיבים המוחלטים של הקבצים שרוצים להעלות, מופרדים באמצעות פסיקים.

הפורמט הנדרש תלוי בסוג הפריסה:

  • ‫SaaS Deployment: הנתיב הוא פנימי לפלטפורמה המארחת, כמו /attachments/.
  • פריסת סוכן מרוחק: הנתיב חייב להיות נתיב ספרייה מוחלט ותקין במחשב המקומי שבו מותקן הסוכן המרוחק. לדוגמה, C:\temp\attachments ל-Windows או /var/tmp/attachments/ ל-Linux.

ריצה

הפעולה הזו פועלת בכל הישויות.

תוצאות הפעולה

תוצאת הסקריפט
שם תוצאת הסקריפט אפשרויות ערך דוגמה
is_success נכון/לא נכון is_success:False
תוצאת JSON
N/A

חפש משתמשים

חיפוש משתמשים ב-Jira.

ישויות

הפעולה הזו לא פועלת על ישויות.

קלט של הפעולה

כדי להגדיר את הפעולה, משתמשים בפרמטרים הבאים:

פרמטרים
User Email Addresses אופציונלי

רשימה מופרדת בפסיקים של כתובות אימייל של המשתמשים שרוצים להחזיר.

User Names אופציונלי

רשימה מופרדת בפסיקים של שמות משתמשים שרוצים להחזיר את המשתמשים שלהם.

Project אופציונלי

שם הפרויקט שבו רוצים לחפש כתובות אימייל. אם מציינים את הפרמטר, מוחזר רק Project Assignable Users.

ערכי פלט של פעולות

סוג הפלט של הפעולה
חיבור לקיר של המארז לא רלוונטי
קישור ללוח הפניות לא רלוונטי
שולחן קונסולה צמוד לקיר לא רלוונטי
טבלת העשרה לא רלוונטי
תוצאת JSON יש גישה
תוצאת הסקריפט יש גישה
תוצאת הסקריפט
שם תוצאת הסקריפט ערך
is_success נכון/לא נכון
תוצאת JSON
[
 {
   "Entity": "example",
   "EntityResult": {
     "_resource": "user?accountId={0}",
     "_options": {
       "server": "https://siemplify.atlassian.net",
       "auth_url": "/rest/auth/1/session",
       "context_path": "/",
       "rest_path": "api",
       "rest_api_version": "2",
       "agile_rest_path": "agile",
       "agile_rest_api_version": "1.0",
       "verify": false,
       "resilient": true,
       "async": false,
       "async_workers": 5,
       "client_cert": null,
       "check_update": false,
       "delay_reload": 0,
       "headers": {
         "Cache-Control": "no-cache",
         "Content-Type": "application/json",
         "X-Atlassian-Token": "no-check"
       }
     },
     "_session": "<jira.resilientsession.ResilientSession object>",
     "_base_url": "{server}/rest/{rest_path}/{rest_api_version}/{path}",
     "raw": {
       "self": "https://siemplify.atlassian.net/rest/api/2/user?accountId=example-account-id",
       "accountId": "example-account-id",
       "accountType": "atlassian",
       "emailAddress": "example.user",
       "avatarUrls": {
         "48x48": "https://example.com"
       },
       "displayName": "Example",
       "active": true,
       "timeZone": "UTC",
       "locale": "en_US"
     },
     "self": "https://siemplify.atlassian.net/rest/api/2/user?accountId=example-account-id",
     "accountId": "example-account-id",
     "accountType": "atlassian",
     "emailAddress": "example.user",
     "avatarUrls": "<jira.resources.PropertyHolder object>",
     "displayName": "Example",
     "active": true,
     "timeZone": "UTC",
     "locale": "en_US"
   }
 }
]
קיר נרתיק הטעינה

הפעולה מספקת את הודעות הפלט הבאות:

הודעת פלט תיאור ההודעה

Successfully found the following users in Jira for project PROJECT_NAME: USER_LIST

The following users were not found in Jira for project PROJECT_NAME: USER_LIST

None of the provided users were found in the project PROJECT_NAME

הפעולה בוצעה בהצלחה.
Error executing action "Search Users". Reason: ERROR_REASON

הפעולה נכשלה.

צריך לבדוק את החיבור לשרת, את הפרמטרים של הקלט או את פרטי הכניסה.

הגדרת מיפוי הסיבות לסגירה

הפרמטר Closed Reason Mapping דורש מבנה JSON. אפשר למפות ערכים סטטיים או להעביר שמות דינמיים של שדות ב-Jira (לדוגמה, resolution,‏ customfield_10010). אם סיבה דינמית שחולצה לא תקינה או חסרה, המשימה משתמשת באופן אוטומטי במיפוי Fallback שצוין.

הגדרת JSON לדוגמה:

{
  "Done": {
    "reason": "Maintenance",
    "root_cause": "Other"
  },
  "Fallback": {
    "reason": "Maintenance",
    "root_cause": "Other"
  }
}

מחברים

מחבר Jira

תיאור

אחזור בעיות מ-Jira ל-Google SecOps.

הגדרת המחבר של Jira ב-Google SecOps

הוראות מפורטות להגדרת מחבר ב-Google SecOps מופיעות במאמר הגדרת המחבר.

פרמטרים של מחברים

כדי להגדיר את המחבר, משתמשים בפרמטרים הבאים:

פרמטר תיאור
DeviceProductField

חובה.

שם השדה שמשמש לזיהוי המוצר של המכשיר.

ערך ברירת המחדל הוא device_product.

EventClassId

זה שינוי אופציונלי.

שם השדה שמשמש לקביעת שם האירוע (סוג משנה).

ערך ברירת המחדל הוא name.

PythonProcessTimeout

חובה.

מגבלת הזמן הקצוב לתפוגה (בשניות) של תהליך Python שמריץ את הסקריפט הנוכחי.

ערך ברירת המחדל הוא 60.

API Root

חובה.

שורש ה-API של המכונה ב-Jira.

ערך ברירת המחדל הוא https://{jira_address}.

Username

זה שינוי אופציונלי.

שם המשתמש (כתובת האימייל) שמשמש להתחברות ל-Jira.

הדרישה לפרמטר הזה תלויה בשיטת האימות שנבחרה:

  • אם מציינים את המאפיין הזה, המערכת משתמשת באימות בסיסי.
  • אם משאירים את השדה ריק, המערכת משתמשת כברירת המחדל של המערכת באימות באמצעות טוקן למוכ"ז (נדרש לחשבונות שירות).

למידע נוסף על שיטות אימות, ראו לפני שמתחילים.

API Token

חובה.

פרטי הכניסה לאימות שמשמשים להתחברות ל-Jira.

Days Backwards

זה שינוי אופציונלי.

מספר הימים המקסימלי לשליפת התראות.

ערך ברירת המחדל הוא 5.

Max Tickets Per Cycle

זה שינוי אופציונלי.

מספר הכרטיסים המקסימלי לאחזור ולעיבוד במחזור אחד של המחבר.

ערך ברירת המחדל הוא 10.

Project Names

זה שינוי אופציונלי.

שמות הפרויקטים, מופרדים בפסיקים.

Issue Statuses

זה שינוי אופציונלי.

סטטוסים של בעיות, מופרדים בפסיקים.

Assignees

זה שינוי אופציונלי.

השמות המלאים של המשתמשים, מופרדים בפסיקים.

Issue Types

זה שינוי אופציונלי.

סוגי הבעיות מופרדים בפסיק.

Issue Priorities

זה שינוי אופציונלי.

עדיפויות של בעיות, מופרדות בפסיקים.

Issue Components

זה שינוי אופציונלי.

רכיבי הבעיה מופרדים בפסיק.

Proxy Server Address

זה שינוי אופציונלי.

כתובת שרת ה-Proxy שבו רוצים להשתמש.

Proxy Username

זה שינוי אופציונלי.

שם המשתמש של שרת ה-proxy לאימות.

Proxy Password

זה שינוי אופציונלי.

הסיסמה לאימות מול שרת ה-proxy.

Environment Field Name

זה שינוי אופציונלי.

מתאר את שם השדה שבו מאוחסן שם הסביבה. אם שדה הסביבה לא נמצא, הסביבה היא סביבת ברירת המחדל.

ערך ברירת המחדל הוא "".

Environment Regex Pattern

זה שינוי אופציונלי.

תבנית של ביטוי רגולרי להפעלה על הערך שנמצא בשדה "שם השדה של הסביבה". מאפשר למשתמש לשנות את שדה הסביבה באמצעות לוגיקה של ביטויים רגולריים.

ערך ברירת המחדל הוא .*.

Use Jira Project as Environment

זה שינוי אופציונלי.

משתמשים בפרויקט ב-Jira כסביבה או משתמשים בשם השדה של הסביבה כסביבה.

Verify SSL

חובה.

אם בוחרים באפשרות הזו, השילוב מאמת את אישור ה-SSL כשמתחברים לשרת של Jira.

מופעלת כברירת מחדל.

כללי מחברים

תמיכה בשרת proxy

המחבר תומך בשרת proxy.

רשימה דינמית ורשימת חסימה

המחבר תומך בכללים דינמיים של רשימת היתרים ורשימת חסימה רק לתוויות ספציפיות ב-Jira.

תעסוקה

משימת סגירת סנכרון

תיאור

סגירת פניות ב-Jira אם ההתראות או התיקים התואמים ב-Google SecOps נסגרו, וסנכרון סטטוס הסגירה והשדות בהתאמה אישית מ-Jira בחזרה ל-Google SecOps.

פרמטרים

פרמטר תיאור
API Root

חובה.

כתובת ה-URL הבסיסית של ה-API של מופע Jira.

ערך ברירת המחדל הוא https://{jira_address}.

Username

זה שינוי אופציונלי.

שם המשתמש (כתובת האימייל) שמשמש להתחברות ל-Jira.

הדרישה לפרמטר הזה תלויה בשיטת האימות שנבחרה:

  • אם מציינים את המאפיין הזה, המערכת משתמשת באימות בסיסי.
  • אם משאירים את השדה ריק, המערכת משתמשת כברירת המחדל של המערכת באימות באמצעות טוקן למוכ"ז (נדרש לחשבונות שירות).
API Token

חובה.

פרטי הכניסה לאימות שמשמשים להתחברות ל-Jira.

Project Names

חובה.

שמות של פרויקטים ב-Jira שהמשימה צריכה לעקוב אחריהם, מופרדים בפסיקים.

ערך ברירת המחדל הוא project names separated by a comma.

Environment

זה שינוי אופציונלי.

שם הסביבה.

Days Backwards

חובה.

מספר הימים המקסימלי לסנכרון סטטוס הכרטיסים לאחור.

ערך ברירת המחדל הוא 1.

Job Scope

חובה.

היקף סנכרון המשימות. אפשרויות:

  • ‫Case: סנכרון של בעיות ב-Jira ברמת בקשת התמיכה. חשוב לוודא שההקשר מכיל את JIRA_ISSUE_KEY.
  • ‫Alert: סנכרון בעיות ב-Jira ברמת ההתראה. בפניות שנוצרו על ידי מחבר, מפתח הכרטיס ב-Jira נשלף באופן אוטומטי. במקרים של סימולציה, מגדירים ידנית את מפתח ההקשר לערך JIRA_ISSUE_KEY.

ערך ברירת המחדל הוא Alert.

Supported Closed Statuses

חובה.

רשימה מופרדת בפסיקים של סטטוסים סגורים ב-Jira שנחשבים כסגורים ב-Google SecOps (לדוגמה, Done, Closed).

  • ‫SecOps ל-Jira: המשימה משתמשת בערך הראשון ברשימה (לדוגמה, Done) כסטטוס הפתרון כשסוגרים את הכרטיס ב-Jira.
  • ‫Jira ל-SecOps: סטטוס הסגירה של הכרטיס ב-Jira חייב להיות ברשימה הזו כדי שהסנכרון יתבצע.

ערך ברירת המחדל הוא Done.

Closed Reason Mapping

חובה.

מילון JSON שממפה את הסטטוסים הסגורים של Jira לסיבות הסגירה ולגורמים הבסיסיים של Google SecOps. תומך במיפוי לשדות בהתאמה אישית ודורש מפתח Fallback חובה. פרטים ודוגמאות להגדרה מופיעים במאמר סיבת הסגירה ומיפוי שדות בהתאמה אישית.

Custom Fields Mapping

זה שינוי אופציונלי.

אובייקט JSON שמגדיר מיפויים בין השמות המוצגים של השדות בהתאמה אישית ב-Google SecOps לבין השמות של השדות בהתאמה אישית ב-Jira, לצורך סנכרון נתונים מ-Jira ל-Google SecOps. פרטים ודוגמאות להגדרה מופיעים במאמר סיבת הסגירה ומיפוי שדות בהתאמה אישית.

מיפוי של סיבת הסגירה ושדות בהתאמה אישית

הפרטים והדוגמאות הבאים יעזרו לכם להגדיר מיפויים בהתאמה אישית לסיבות לסגירה ולשדות בהתאמה אישית.

מיפוי סיבות לסגירה

מגדיר איך סטטוסים של סגירה ב-Jira ממופים לסיבות לסגירה ולשורש הבעיה ב-Google SecOps.

  • דוגמה למיפוי JSON רגיל:

    {
      "Done": {
        "reason": "Malicious",
        "root_cause": "Other"
      },
      "Fallback": {
        "reason": "Maintenance",
        "root_cause": "Other"
      }
    }
    

    אם כרטיס מידע ב-Jira נסגר עם הסטטוס Done, הפנייה או ההתראה ב-Google SecOps נסגרת עם הסיבה Malicious ושורש הבעיה Other. אם הכרטיס נסגר עם סטטוס שלא מופה באופן מפורש (לדוגמה, Closed), המערכת משתמשת כברירת מחדל בהגדרות של Fallback.

  • דוגמה למיפוי שדות בהתאמה אישית:

    אם יש לכם שדות בהתאמה אישית ב-Jira שנקראים Jira reason ו-Jira rootcause, צריך להגדיר את מיפוי ה-JSON באופן הבא:

    {
      "Done": {
        "reason": "Jira reason",
        "root_cause": "Jira rootcause"
      },
      "Fallback": {
        "reason": "Maintenance",
        "root_cause": "Other"
      }
    }
    

    דרישות:

    • הערך שחולץ מהשדה המותאם אישית Jira reason חייב להיות אחד מהמחרוזות המדויקות הבאות: Malicious,‏ Maintenance,‏ Inconclusive או Not malicious. אחרת, המערכת חוזרת לערכים של Fallback.
    • כדי להשתמש בהיקף המשימה Case, צריך להגדיר את ערכי שורש הבעיה בהגדרות האדמין. בהיקף המשימה Alert, לא נדרשת הגדרה של אדמין, וכל ערך שמוזן בשדה המותאם אישית מתקבל.

מיפוי שדות בהתאמה אישית

המיפוי הזה משמש רק לסנכרון של ערכי שדות בהתאמה אישית מ-Jira ל-Google SecOps. מציינים צמדי מפתח/ערך שבהם המפתח הוא השם המוצג של השדה בהתאמה אישית ב-Google SecOps, והערך הוא השם של השדה בהתאמה אישית ב-Jira:

{
  "SOAR Custom field": "Jira ticket id"
}

בדוגמה הזו, הערך מהשדה Jira ticket id ב-Jira מסתנכרן ישירות עם השדה SOAR Custom field ב-Google SecOps.

משימת סנכרון תגובות

תיאור

סנכרון התגובות בין בקשת התמיכה ב-Google SecOps לבין הכרטיס התואם ב-Jira. הסנכרון הוא דו-כיווני – כלומר, מ-Google SecOps ל-Jira ומ-Jira ל-Google SecOps.

כשהמשימה יוצרת תגובה, היא מוסיפה את הקידומת. אם משתמש ב-Google SecOps מגיב לבקשת התמיכה ב-Google SecOps, המשימה יוצרת ומסנכרנת את תגובת המשתמש בכרטיס התואם ב-Jira באמצעות הפרמטר Chronicle Comment Prefix.

הוספנו את התכונה הזו משתי סיבות:

  1. הרשאות גישה.
  2. למנוע מצב שבו תגובות שנוספו על ידי המשימה יסונכרנו שוב לצד השני, ויגרמו ללולאה.

פרמטרים

פרמטר תיאור
API Root

חובה.

כתובת ה-URL הבסיסית של ה-API של מופע Jira.

ערך ברירת המחדל הוא https://{jira_address}.

Username

זה שינוי אופציונלי.

שם המשתמש (כתובת האימייל) שמשמש להתחברות ל-Jira.

הדרישה לפרמטר הזה תלויה בשיטת האימות שנבחרה:

  • אם מציינים את המאפיין הזה, המערכת משתמשת באימות בסיסי.
  • אם משאירים את השדה ריק, המערכת משתמשת כברירת המחדל של המערכת באימות באמצעות טוקן למוכ"ז (נדרש לחשבונות שירות).
API Token

חובה.

פרטי הכניסה לאימות שמשמשים להתחברות ל-Jira.

Project Names

חובה.

שמות של פרויקטים ב-Jira שהמשימה צריכה לעקוב אחריהם, מופרדים בפסיקים.

ערך ברירת המחדל הוא project names separated by comma.

Environment

זה שינוי אופציונלי.

שם הסביבה.

Siemplify Comment Prefix

חובה.

קידומת שמתווספת על ידי משימת הסנכרון לתגובות שנוצרו לכרטיסי Jira.

ערך ברירת המחדל הוא Google SecOps:.

Jira Comment Prefix

חובה.

קידומת שמתווספת על ידי משימת הסנכרון לתגובות על בקשות תמיכה של התראות ב-Google SecOps.

ערך ברירת המחדל הוא Jira Comment Sync Job:.

הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.