Jira
Versione integrazione: 41.0
Configura Jira in modo che funzioni con Google Security Operations
Creare un token API
Crea un token API dal tuo account Atlassian:
- Accedi al tuo account Atlassian.
- Fai clic su Genera token API.
- Nella finestra di dialogo visualizzata, inserisci un'etichetta memorabile e concisa per il tuo token e fai clic su Crea.
- Fai clic su Copia negli appunti, quindi incolla il token in un luogo sicuro per salvarlo.
Configura l'integrazione Jira in Google SecOps
Per istruzioni dettagliate su come configurare un'integrazione in Google SecOps, vedi Configurare le integrazioni.
Parametri di integrazione
Utilizza i seguenti parametri per configurare l'integrazione:
Nome visualizzato del parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Nome istanza | Stringa | N/D | No | Nome dell'istanza per cui intendi configurare l'integrazione. |
Descrizione | Stringa | N/D | No | Descrizione dell'istanza. |
Radice API | Stringa | https://{jira_address} | Sì | Indirizzo dell'istanza Jira. |
Nome utente | Stringa | N/D | Sì | Un nome utente da utilizzare per connettersi a Jira. |
Token API | Password | N/D | Sì | Token generato nella console Jira. Nota:questo parametro può essere utilizzato per contenere la stringa "Password" in caso di autenticazione on-premise, utilizzando la combinazione di nome utente e password. |
Verifica SSL | Casella di controllo | Deselezionata | No | Utilizza questa casella di controllo se la connessione Jira richiede una verifica SSL. |
Esegui da remoto | Casella di controllo | Deselezionata | No | Seleziona il campo per eseguire l'integrazione configurata da remoto. Una volta selezionata, viene visualizzata l'opzione per selezionare l'utente remoto (agente). |
Azioni
Aggiungi commento
Descrizione
Comporre commenti per un problema è un modo efficace per documentare ulteriori elementi su un problema e interagire con i membri del team.
Parametri
Parametri | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Chiave del problema | Stringa | N/D | Sì | La chiave del problema. Esempio: ABC-123 |
Commento | Stringa | N/D | Sì | Il contenuto del commento da aggiungere al problema. |
Run On
Questa azione viene eseguita su tutte le entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
comment_id | N/D | N/D |
Risultato JSON
N/A
Assegna problema
Descrizione
Assegna un problema a un utente specifico. Il nome utente Jira potrebbe essere, ad esempio, il nome o l'indirizzo email. Per la nuova API Jira, l'azione tenta di trovare una corrispondenza per l'assegnatario per assegnare un problema in base all'email dell'utente, quindi riprova con il campo displayName.
Parametri
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Chiave del problema | Stringa | N/D | Sì | La chiave del problema. |
Assegnatario | Stringa | N/D | Sì | Il nuovo assegnatario del problema. |
Nome utente Jira | Stringa | N/D | No | Il nome utente Jira dell'iniziatore dell'azione. |
Run On
Questa azione viene eseguita su tutte le entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
operazione riuscita | Vero/Falso | success:False |
Crea problema di avviso
Descrizione
Assegnare un incidente a un gruppo specifico.
Parametri
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Chiave del progetto | Stringa | N/D | Sì | La chiave del progetto in cui creare il problema. |
Riepilogo | Stringa | N/D | Sì | Il riepilogo del problema. |
Tipo di problema | Stringa | N/D | Sì | Il tipo di problema. |
Run On
Questa azione viene eseguita su tutte le entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
issue_key | N/D | N/D |
Risultato 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
}
Crea problema
Descrizione
Crea un problema in un progetto. Il nome utente Jira potrebbe essere, ad esempio, il nome o l'indirizzo email. Per la nuova API Jira, l'azione tenta di trovare una corrispondenza per l'assegnatario per assegnare un problema in base all'email dell'utente, quindi riprova con il campo displayName.
Parametri
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Chiave del progetto | Stringa | N/D | Sì | La chiave del progetto in cui creare un problema. |
Riepilogo | Stringa | N/D | Sì | Il riepilogo del problema. |
Descrizione | Stringa | N/D | Sì | La descrizione del problema. |
Tipo di problema | Stringa | N/D | Sì | Il tipo di problema. |
Assegnatario | Stringa | N/D | No | Il nuovo assegnatario del problema. |
Nome utente Jira | Stringa | N/D | No | Il nome utente Jira dell'iniziatore dell'azione. |
Componenti | Stringa | N/D | No | Il campo dei componenti del problema. Questo parametro accetta più valori come stringa separata da virgole. |
Etichette | Stringa | N/D | No | Il campo dei componenti del problema. Questo parametro accetta più valori come stringa separata da virgole. |
Campi personalizzati | JSON | N/D | No | Specifica un oggetto JSON contenente tutti i campi e i valori che verranno utilizzati durante la creazione del problema. Nota:questo parametro ha la priorità e tutti i campi vengono sovrascritti con il valore fornito per questo parametro. Esempio: {"field":"value"} |
Run On
Questa azione viene eseguita su tutte le entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
issue_key | N/D | N/D |
Risultato JSON
N/A
Elimina problema
Descrizione
Eliminare un problema.
Parametri
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Chiave del problema | Stringa | N/D | Sì | La chiave del problema da eliminare. |
Run On
Questa azione viene eseguita su tutte le entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
operazione riuscita | Vero/Falso | success:False |
Risultato JSON
N/A
Scarica allegati
Descrizione
Ottieni una chiave del problema e scarica tutti gli allegati. Se uno di questi è un file EML, scaricalo anche all'interno degli allegati.
Parametri
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Chiave del problema | Stringa | N/D | Sì | La chiave del problema. |
Percorso di download | Stringa | N/D | No | Il percorso in cui salvare gli allegati. |
Scaricare gli allegati nella bacheca richieste | Casella di controllo | Deselezionata | No | Se questa opzione è attivata, l'azione scarica gli allegati del problema Jira nella bacheca del caso di avviso Google SecOps corrente. |
Run On
Questa azione viene eseguita su tutte le entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
is_success | Vero/Falso | is_success:False |
Risultato 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
}
Recupera problemi
Descrizione
Recupera i dettagli di un problema in base alle chiavi.
Parametri
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Tasti dei problemi | Stringa | N/D | Sì | Le chiavi dei problemi da recuperare separate da una virgola. |
Run On
Questa azione viene eseguita su tutte le entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
issues_details_list | Vero/Falso | issues_details_list:False |
Risultato 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
}
Elenco problemi
Descrizione
Cerca i problemi.
Parametri
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Nomi dei progetti | Stringa | N/D | No | I nomi dei progetti in cui eseguire la ricerca, separati da virgole. |
Riepilogo | Stringa | N/D | No | Il riepilogo in base al quale filtrare. |
Descrizione | Stringa | N/D | No | La descrizione in base alla quale filtrare. |
Tipi di problemi | Stringa | Bug | No | I tipi di problemi in base ai quali applicare il filtro. |
Priorità | Stringa | N/D | No | La priorità in base a cui filtrare. |
Creata da | Stringa | N/D | No | La data di creazione meno recente in base alla quale filtrare. Formato: AAAA/MM/GG. |
Aggiornato da | Stringa | N/D | No | La prima data di aggiornamento in base alla quale filtrare. Formato: AAAA/MM/GG. |
Assegnatari | Stringa | N/D | No | I nomi degli assegnatari da filtrare, separati da virgole. |
Autore della segnalazione | Stringa | N/D | No | I nomi dei reporter da filtrare, separati da virgole. |
Stati | Stringa | N/D | No | Gli stati in base ai quali filtrare, separati da virgole. |
Run On
Questa azione viene eseguita su tutte le entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
problemi | Vero/Falso | issues:False |
Risultato JSON
[ "PR-123", "PR-124"]
Dindin
Descrizione
Verifica che l'utente abbia una connessione a Jira tramite il proprio dispositivo.
Parametri
Questa azione non ha parametri di input.
Run On
Questa azione viene eseguita su tutte le entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
operazione riuscita | Vero/Falso | success:False |
Risultato JSON
N/A
Aggiorna problema
Descrizione
Aggiornare un problema. Per la nuova API Jira, l'azione tenta di trovare una corrispondenza per l'assegnatario per assegnare un problema in base all'email dell'utente, quindi tenta con il campo displayName.
Parametri
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Chiave del problema | Stringa | N/D | Sì | La chiave del problema da aggiornare. |
Stato | Stringa | N/D | No | Specifica il nome della transizione pertinente per spostare il problema nel nuovo stato desiderato. |
Riepilogo | Stringa | N/D | No | Il nuovo riepilogo del problema. |
Descrizione | Stringa | N/D | No | La nuova descrizione del problema. |
Tipo di problema | Stringa | N/D | No | Il nuovo tipo di problema. |
Assegnatario | Stringa | N/D | No | Il nuovo assegnatario del problema. |
Nome utente Jira | Stringa | N/D | No | Il nome utente Jira dell'autore dell'azione. |
Componenti | Stringa | N/D | No | Il campo dei componenti del problema. Questo parametro accetta più valori come stringa separata da virgole. |
Campi personalizzati | JSON | NA | No | Specifica un oggetto JSON contenente tutti i campi e i valori utilizzati durante la creazione del problema. Nota:questo parametro ha la priorità e tutti i campi vengono sovrascritti con il valore fornito per questo parametro. Esempio: {"field":"value"} |
Etichette | Stringa | N/D | No | Il campo dei componenti del problema. Questo parametro accetta più valori come stringa separata da virgole. |
Run On
Questa azione viene eseguita su tutte le entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
Operazione riuscita | Vero/Falso | Success:False |
Risultato 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
}
Carica allegato
Descrizione
Aggiungere un allegato a un problema.
Parametri
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Chiave del problema | Stringa | N/D | Sì | Percorsi file. |
Percorsi file | Stringa | N/D | Sì | I percorsi dei file da caricare, separati da virgole. |
Run On
Questa azione viene eseguita su tutte le entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
is_success | Vero/Falso | is_success:False |
Risultato JSON
N/A
Problemi relativi ai link
Descrizione
Collega più problemi in Jira.
Parametri
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
ID problema in entrata | Stringa | N/D | Sì | Specifica un elenco separato da virgole di ID problema in entrata. Ad esempio, se il tipo di relazione è "Blocca", nell'interfaccia utente vedrai questo problema con la relazione "bloccato da". |
ID problema in uscita | CSV | N/D | Sì | Specifica l'ID problema esterno. Ad esempio, se il tipo di relazione è "Blocca", nell'interfaccia utente vedrai questo problema con la relazione "blocca". |
Tipo di relazione | Stringa | Blocchi | Sì | Specifica il tipo di relazione che verrà utilizzato per collegare più problemi. Un elenco di tutti i tipi di relazione disponibili è disponibile nell'azione "Elenca tipi di relazione". |
Run On
Questa azione non viene eseguita sulle entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
is_success | Vero/Falso | is_success:False |
Risultato JSON
N/A
Bacheca casi
Tipo di risultato | Valore / Descrizione | Tipo |
---|---|---|
Messaggio di output* | L'azione non deve non riuscire né interrompere l'esecuzione di un playbook: Se per alcuni problemi viene segnalato il codice di stato 201 (is_success = true): "Successfully linked issue "{source issue}" with the following issues in Jira: {destination issues}". Se il codice di stato 404 e l'errore "Il problema non esiste" vengono segnalati per un problema (is_success=true): "L'azione non è riuscita a trovare i seguenti problemi di destinazione in Jira: {jira issues that were not found}". Se il codice di stato 404 e l'errore "Il problema non esiste" vengono segnalati per tutti i problemi (is_success=false): "Nessuno dei problemi di destinazione è stato trovato in Jira". L'azione deve non riuscire e interrompere l'esecuzione di un playbook: Se viene segnalato un errore irreversibile, ad esempio credenziali errate, nessuna connessione al server o altro: "Errore durante l'esecuzione dell'azione". Motivo: {0}''.format(error.Stacktrace) Se il problema di origine non viene trovato: "Errore durante l'esecuzione dell'azione". Motivo: il problema di origine "{source issue}" non è stato trovato in Jira. Controlla l'ortografia. Se il codice di stato 404 e non è l'errore "Il problema non esiste" per almeno uno: "Errore durante l'esecuzione dell'azione". Motivo: {error messages}. |
Generale |
Elenco tipi di relazione
Descrizione
Elenca i tipi di relazione disponibili in Jira.
Parametri
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Chiave di filtro | DDL | Selezionane uno Valori possibili:
|
No | Specifica la chiave da utilizzare per filtrare {item type}. |
Logica di filtro | DDL | Non specificato Valori possibili:
|
No | Specifica la logica di filtro da applicare. La logica di filtraggio funziona in base al valore fornito nel parametro "Chiave filtro". |
Valore filtro | Stringa | N/D | No | Specifica il valore da utilizzare nel filtro. Se è selezionato "Uguale", l'azione tenterà di trovare la corrispondenza esatta tra i risultati. Se è selezionata l'opzione "Contiene", l'azione tenterà di trovare risultati che contengano la sottostringa specificata. Se non viene fornito alcun valore in questo parametro, il filtro non verrà applicato. La logica di filtraggio funziona in base al valore fornito nel parametro "Chiave filtro". |
Numero massimo di record da restituire | Numero intero | 50 | No | Specifica il numero di record da restituire. Se non viene fornito nulla, l'azione restituisce 50 record. |
Run On
Questa azione non viene eseguita sulle entità.
Risultati dell'azione
Risultato script
Nome risultato script | Opzioni di valore | Esempio |
---|---|---|
is_success | Vero/Falso | is_success:False |
Risultato JSON
[{
"id": "10000",
"name": "Blocks",
"inward": "is blocked by",
"outward": "blocks",
"self": "http://172.30.201.69:8080/rest/api/2/issueLinkType/10000"
}]
Bacheca casi
Tipo di risultato | Valore / Descrizione | Tipo |
---|---|---|
Messaggio di output* | L'azione non deve non riuscire né interrompere l'esecuzione di un playbook: Se i dati sono disponibili (is_success = true): "Successfully found relation types for the provided criteria in Jira" (Tipi di relazione trovati correttamente per i criteri forniti in Jira). Se i dati non sono disponibili (is_success=false): "Non sono stati trovati tipi di relazione per i criteri forniti in Jira" Se il parametro "Valore filtro" è vuoto (is_success=true): "Il filtro non è stato applicato perché il parametro "Valore filtro" ha un valore vuoto." L'azione deve non riuscire e interrompere l'esecuzione di un playbook: Se il parametro "Chiave filtro" è impostato su "Seleziona uno" e la "Logica di filtro" è impostata su "Uguale a" o "Contiene": Errore durante l'esecuzione dell'azione "{action name}". Motivo: devi selezionare un campo dal parametro "Chiave filtro". Se viene fornito un valore non valido per Max Records to Return: "Error executing action "{action name}". Motivo: "È stato fornito un valore non valido per "Numero massimo di record da restituire": . Deve essere fornito un numero positivo"." Se viene segnalato un errore irreversibile, ad esempio credenziali errate, nessuna connessione al server o altro: "Errore durante l'esecuzione dell'azione "{action name}". Motivo: {0}''.format(error.Stacktrace) |
Generale |
Tabella Bacheca casi | Nome tabella:Available Relation Colonne della tabella:
|
Generale |
Cerca utenti
Cerca utenti in Jira.
Entità
Questa azione non viene eseguita sulle entità.
Input azione
Per configurare l'azione, utilizza i seguenti parametri:
Parametri | |
---|---|
User Email Addresses |
Optional
Elenco separato da virgole di indirizzi email per cui restituire gli utenti. |
User Names |
Optional
Elenco separato da virgole di nomi utente per cui restituire gli utenti. |
Project |
Optional
Nome del progetto in cui cercare gli indirizzi email. Se fornito, viene restituito solo
|
Output dell'azione
Tipo di output dell'azione | |
---|---|
Allegato della bacheca casi | N/D |
Link alla bacheca richieste | N/D |
Tabella della bacheca casi | N/D |
Tabella di arricchimento | N/D |
Risultato JSON | Disponibile |
Risultato dello script | Disponibile |
Risultato dello script
Nome del risultato dello script | Valore |
---|---|
is_success | Vero/Falso |
Risultato 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"
}
}
]
Bacheca casi
L'azione fornisce i seguenti messaggi di output:
Messaggio di output | Descrizione del messaggio |
---|---|
|
Azione riuscita. |
Error executing action "Search Users".
Reason: ERROR_REASON |
Azione non riuscita. Controlla la connessione al server, i parametri di input o le credenziali. |
Connettori
Connettore Jira
Descrizione
Recupera i problemi da Jira a Google SecOps.
Configura il connettore Jira in Google SecOps
Per istruzioni dettagliate su come configurare un connettore in Google SecOps, vedi Configurazione del connettore.
Parametri del connettore
Utilizza i seguenti parametri per configurare il connettore:
Parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
DeviceProductField | Stringa | device_product | Sì | Il nome del campo utilizzato per determinare il prodotto del dispositivo. |
EventClassId | Stringa | nome | No | Il nome del campo utilizzato per determinare il nome dell'evento (sottotipo). |
PythonProcessTimeout | Stringa | 60 | Sì | Il limite di timeout (in secondi) per il processo Python che esegue lo script corrente. |
Root API | Stringa | https://{jira_address} | Sì | La radice dell'API dell'istanza Jira. |
Nome utente | Stringa | N/D | Sì | N/D |
Token API | Password | N/D | Sì | Token generato nella console Jira. Nota:questo parametro può essere utilizzato per contenere la stringa "Password" in caso di autenticazione on-premise, utilizzando la combinazione di nome utente e password |
Giorni indietro | Numero intero | 5 | No | Il numero massimo di giorni precedenti da cui recuperare gli avvisi. |
Numero massimo di biglietti per ciclo | Numero intero | 10 | No | Il numero massimo di ticket da recuperare ed elaborare in un ciclo del connettore. |
Nomi dei progetti | Stringa | N/D | No | Nomi dei progetti separati da una virgola. |
Stati dei problemi | Stringa | N/D | No | Stati dei problemi separati da una virgola. |
Assegnatari | Stringa | N/D | No | Nomi completi degli utenti separati da una virgola. |
Tipi di problemi | Stringa | N/D | No | Tipi di problemi separati da una virgola. |
Priorità dei problemi | Stringa | N/D | No | Priorità dei problemi separate da una virgola. |
Componenti del problema | Stringa | N/D | No | Componenti del problema separati da una virgola. |
Indirizzo del server proxy | Stringa | N/D | No | L'indirizzo del server proxy da utilizzare. |
Nome utente proxy | Stringa | N/D | No | Il nome utente del proxy con cui eseguire l'autenticazione. |
Password proxy | Password | N/D | No | La password del proxy per l'autenticazione. |
Nome campo ambiente | Stringa | "" | No | Descrive il nome del campo in cui è memorizzato il nome dell'ambiente. Se il campo dell'ambiente non viene trovato, l'ambiente è quello predefinito. |
Pattern regex ambiente | Stringa | .* | No | Un pattern regex da eseguire sul valore trovato nel campo "Nome campo ambiente". Il valore predefinito è .* per acquisire tutto e restituire il valore invariato. Utilizzato per consentire all'utente di manipolare il campo dell'ambiente tramite la logica delle espressioni regolari. Se il pattern regex è null o vuoto oppure il valore dell'ambiente è null, il risultato finale dell'ambiente è l'ambiente predefinito. |
Regole del connettore
Supporto proxy
Il connettore supporta il proxy.
Elenco dinamico e elenco bloccati
Il connettore supporta le regole di elenco dinamico e lista bloccata solo per etichette specifiche all'interno di Jira.
Job
Processo di chiusura della sincronizzazione
Descrizione
Chiudi i ticket in Jira se gli avvisi Google SecOps corrispondenti sono stati chiusi.
Parametri
Nome visualizzato del parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Root API | Stringa | https://{jira_address} | Sì | URL di base dell'API dell'istanza Jira. |
Nome utente | Stringa | N/D | Sì | Nome utente per connettersi all'istanza Jira. |
Token API | Password | N/D | Sì | Token generato nella console Jira. Nota:questo parametro può essere utilizzato per contenere la stringa "Password" in caso di autenticazione on-premise, utilizzando la combinazione di nome utente e password |
Nomi dei progetti | Stringa | i nomi dei progetti separati da una virgola | Sì | Nomi dei progetti Jira separati da una virgola che il job deve monitorare. |
Max Days Backwards | Numero intero | 1 | Sì | Numero massimo di giorni per sincronizzare lo stato dei ticket all'indietro. |
Processo di sincronizzazione dei commenti
Descrizione
Sincronizza i commenti tra la richiesta di Google SecOps e il ticket Jira corrispondente. La sincronizzazione è bidirezionale, ovvero da Google SecOps a Jira e da Jira a Google SecOps.
Questo job supporta solo le richieste Google SecOps con il tag Jira
.
Quando il job crea un commento, applica il prefisso. Se un utente Google SecOps commenta la richiesta di assistenza Google SecOps, il job crea e sincronizza il commento dell'utente nel ticket Jira corrispondente utilizzando il parametro Prefisso commento Chronicle.
Questa funzionalità è stata aggiunta per due scopi:
- Visibilità.
- Impedisci la sincronizzazione dei commenti aggiunti dal job con l'altro lato, e causa un loop.
Parametri
Nome visualizzato del parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
---|---|---|---|---|
Root API | Stringa | https://{jira_address} | Sì | URL di base dell'API dell'istanza Jira. |
Nome utente | Stringa | N/A | Sì | Nome utente per connettersi all'istanza Jira. |
Token API | Password | N/D | Sì | Token generato nella console Jira. Nota:questo parametro può essere utilizzato per contenere la stringa "Password" in caso di autenticazione on-premise, utilizzando la combinazione di nome utente e password |
Nomi dei progetti | Stringa | Nomi dei progetti separati da virgole | Sì | Nomi dei progetti Jira separati da virgole che il job deve monitorare. |
Max Days Backwards | Numero intero | 1 | Sì | Numero massimo di giorni per sincronizzare lo stato dei ticket a ritroso. |
Prefisso commento Google SecOps | Stringa | Google SecOps: | Sì | Prefisso aggiunto dal job di sincronizzazione ai commenti creati per i ticket Jira. |
Prefisso commento Jira | Stringa | Processo di sincronizzazione dei commenti Jira: | Sì | Prefisso aggiunto dal job di sincronizzazione ai commenti del caso di avviso di Google SecOps. |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.