Jira
Version de l'intégration : 41.0
Configurer Jira pour qu'il fonctionne avec Google Security Operations
Créer un jeton d'API
Créez un jeton d'API à partir de votre compte Atlassian :
- Connectez-vous à votre compte Atlassian.
- Cliquez sur Create API token (Créer un jeton d'API).
- Dans la boîte de dialogue qui s'affiche, saisissez un libellé court et facile à retenir pour votre jeton, puis cliquez sur Créer.
- Cliquez sur Copier dans le presse-papiers, puis collez le jeton dans un endroit sûr pour l'enregistrer.
Configurer l'intégration de Jira dans Google SecOps
Pour obtenir des instructions détaillées sur la configuration d'une intégration dans Google SecOps, consultez Configurer des intégrations.
Paramètres d'intégration
Utilisez les paramètres suivants pour configurer l'intégration :
Nom à afficher du paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Nom de l'instance | Chaîne | N/A | Non | Nom de l'instance pour laquelle vous souhaitez configurer l'intégration. |
Description | Chaîne | N/A | Non | Description de l'instance. |
Racine de l'API | Chaîne | https://{jira_address} | Oui | Adresse de l'instance Jira. |
Nom d'utilisateur | Chaîne | N/A | Oui | Nom d'utilisateur à utiliser pour se connecter à Jira. |
Jeton d'API | Mot de passe | N/A | Oui | Jeton généré dans la console Jira. Remarque : Ce paramètre peut être utilisé pour contenir la chaîne "Mot de passe" en cas d'authentification sur site, à l'aide d'une combinaison nom d'utilisateur et mot de passe. |
Vérifier le protocole SSL | Case à cocher | Décochée | Non | Cochez cette case si votre connexion Jira nécessite une validation SSL. |
Exécuter à distance | Case à cocher | Décochée | Non | Cochez le champ pour exécuter l'intégration configurée à distance. Une fois la case cochée, l'option permettant de sélectionner l'utilisateur distant (agent) s'affiche. |
Actions
Ajouter un commentaire
Description
Rédiger des commentaires sur un problème est un moyen efficace de documenter d'autres éléments le concernant et d'échanger avec les membres de l'équipe.
Paramètres
Paramètres | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Clé du problème | Chaîne | N/A | Oui | Clé du problème. Exemple : ABC-123 |
Commentaire | Chaîne | N/A | Oui | Contenu du commentaire à ajouter au problème. |
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
comment_id | N/A | N/A |
Résultat JSON
N/A
Attribuer un problème
Description
Attribuez un problème à un utilisateur spécifique. Le nom d'utilisateur Jira peut être, par exemple, un nom ou une adresse e-mail. Pour la nouvelle API Jira, l'action tente de trouver une correspondance pour l'attributaire afin d'attribuer un problème en fonction de l'adresse e-mail de l'utilisateur, puis tente de le faire avec le champ "displayName".
Paramètres
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Clé du problème | Chaîne | N/A | Oui | Clé du problème. |
Personne responsable | Chaîne | N/A | Oui | Nouveau responsable du problème. |
Nom d'utilisateur Jira | Chaîne | N/A | Non | Nom d'utilisateur Jira de l'initiateur de l'action. |
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
success | Vrai/Faux | success:False |
Créer un problème d'alerte
Description
Attribuez un incident à un groupe spécifique.
Paramètres
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Clé du projet | Chaîne | N/A | Oui | Clé du projet dans lequel créer le problème. |
Résumé | Chaîne | N/A | Oui | Résumé du problème. |
Type de problème | Chaîne | N/A | Oui | Type de problème. |
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
issue_key | N/A | N/A |
Résultat 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
}
Créer un problème
Description
Créer un problème dans un projet Le nom d'utilisateur Jira peut être un nom ou une adresse e-mail, par exemple. Pour la nouvelle API Jira, l'action tente de trouver une correspondance pour l'attributaire afin d'attribuer un problème en fonction de l'adresse e-mail de l'utilisateur, puis tente de le faire avec le champ "displayName".
Paramètres
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Clé du projet | Chaîne | N/A | Oui | Clé du projet dans lequel créer un problème. |
Résumé | Chaîne | N/A | Oui | Résumé du problème. |
Description | Chaîne | N/A | Oui | Description du problème |
Type de problème | Chaîne | N/A | Oui | Type de problème. |
Personne responsable | Chaîne | N/A | Non | Nouveau responsable du problème. |
Nom d'utilisateur Jira | Chaîne | N/A | Non | Nom d'utilisateur Jira de l'initiateur de l'action. |
Composants | Chaîne | N/A | Non | Champ "Composants" du problème. Ce paramètre accepte plusieurs valeurs sous forme de chaîne séparée par une virgule. |
Étiquettes | Chaîne | N/A | Non | Champ "Composants" du problème. Ce paramètre accepte plusieurs valeurs sous forme de chaîne séparée par une virgule. |
Champs personnalisés | JSON | N/A | Non | Spécifiez un objet JSON contenant tous les champs et toutes les valeurs qui seront utilisés lors de la création du problème. Remarque : Ce paramètre est prioritaire. Tous les champs sont remplacés par la valeur fournie pour ce paramètre. Exemple : {"field":"value"} |
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
issue_key | N/A | N/A |
Résultat JSON
N/A
Supprimer le problème
Description
Supprimez un problème.
Paramètres
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Clé du problème | Chaîne | N/A | Oui | Clé du problème à supprimer. |
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
success | Vrai/Faux | success:False |
Résultat JSON
N/A
Télécharger des pièces jointes
Description
Obtenez une clé de problème et téléchargez toutes les pièces jointes. Si l'un d'eux est un fichier EML, téléchargez-le également dans les pièces jointes.
Paramètres
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Clé du problème | Chaîne | N/A | Oui | Clé du problème. |
Chemin de téléchargement | Chaîne | N/A | Non | Chemin d'accès où enregistrer les pièces jointes. |
Télécharger des pièces jointes sur le mur des cas | Case à cocher | Décochée | Non | Si cette option est activée, l'action télécharge les pièces jointes du problème Jira sur le mur de la fiche d'alerte Google SecOps actuelle. |
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
is_success | Vrai/Faux | is_success:False |
Résultat 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
}
Obtenir les problèmes
Description
Obtenez les détails d'un problème à l'aide de clés.
Paramètres
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Clés de problème | Chaîne | N/A | Oui | Clés des problèmes à récupérer, séparées par une virgule. |
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
issues_details_list | Vrai/Faux | issues_details_list:False |
Résultat 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
}
Lister les problèmes
Description
Recherchez les problèmes.
Paramètres
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Noms de projets | Chaîne | N/A | Non | Noms des projets dans lesquels effectuer la recherche, séparés par une virgule. |
Résumé | Chaîne | N/A | Non | Récapitulatif à utiliser pour le filtrage. |
Description | Chaîne | N/A | Non | Description à utiliser pour le filtrage. |
Types de problèmes | Chaîne | Bug | Non | Types de problèmes à filtrer. |
Priorités | Chaîne | N/A | Non | Priorité à filtrer. |
Créé à partir de | Chaîne | N/A | Non | Date de création la plus ancienne à utiliser pour le filtrage. Format : AAAA/MM/JJ. |
Mise à jour à partir de | Chaîne | N/A | Non | Date de mise à jour la plus ancienne à utiliser pour le filtrage. Format : AAAA/MM/JJ. |
Assignees | Chaîne | N/A | Non | Nom des responsables à filtrer, séparés par une virgule. |
Auteur du signalement | Chaîne | N/A | Non | Nom des reporters à filtrer, séparés par une virgule. |
des états ; | Chaîne | N/A | Non | États à filtrer, séparés par une virgule. |
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
issues | Vrai/Faux | issues:False |
Résultat JSON
[ "PR-123", "PR-124"]
Ping
Description
Vérifie que l'utilisateur est connecté à Jira sur son appareil.
Paramètres
Cette action ne comporte aucun paramètre d'entrée.
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
success | Vrai/Faux | success:False |
Résultat JSON
N/A
Problème de mise à jour
Description
Mettez à jour un problème. Pour la nouvelle API Jira, l'action tente de trouver une correspondance pour l'attributaire afin d'attribuer un problème en fonction de l'adresse e-mail de l'utilisateur, puis tente de le faire avec le champ "displayName".
Paramètres
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Clé du problème | Chaîne | N/A | Oui | Clé du problème à modifier. |
État | Chaîne | N/A | Non | Spécifiez le nom de la transition appropriée pour faire passer ce problème au nouvel état souhaité. |
Résumé | Chaîne | N/A | Non | Nouveau résumé du problème. |
Description | Chaîne | N/A | Non | Nouvelle description du problème. |
Type de problème | Chaîne | N/A | Non | Nouveau type de problème. |
Personne responsable | Chaîne | N/A | Non | Nouveau responsable du problème. |
Nom d'utilisateur Jira | Chaîne | N/A | Non | Nom d'utilisateur Jira de l'initiateur de l'action. |
Composants | Chaîne | N/A | Non | Champ "Composants" du problème. Ce paramètre accepte plusieurs valeurs sous forme de chaîne séparée par une virgule. |
Champs personnalisés | JSON | N/A | Non | Spécifiez un objet JSON contenant tous les champs et toutes les valeurs utilisés lors de la création du problème. Remarque : Ce paramètre est prioritaire. Tous les champs sont remplacés par la valeur fournie pour ce paramètre. Exemple : {"field":"value"} |
Étiquettes | Chaîne | N/A | Non | Champ "Composants" du problème. Ce paramètre accepte plusieurs valeurs sous forme de chaîne séparée par une virgule. |
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
Opération réussie | Vrai/Faux | Success:False |
Résultat 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
}
Importer une pièce jointe
Description
Ajoutez une pièce jointe à un problème.
Paramètres
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Clé du problème | Chaîne | N/A | Oui | Chemins d'accès aux fichiers. |
Chemins des fichiers | Chaîne | N/A | Oui | Chemins d'accès des fichiers à importer, séparés par une virgule. |
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
is_success | Vrai/Faux | is_success:False |
Résultat JSON
N/A
Problèmes d'association
Description
Associez plusieurs problèmes dans Jira.
Paramètres
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
ID du problème entrant | Chaîne | N/A | Oui | Spécifiez une liste d'ID de problèmes entrants séparés par une virgule. Par exemple, si le type de relation est "Blocks", l'UI affichera ce problème avec la relation "bloqué par". |
ID des problèmes sortants | CSV | N/A | Oui | Spécifiez l'ID du problème sortant. Par exemple, si le type de relation est "Blocks", ce problème s'affichera dans l'UI avec la relation "blocks". |
Type de relation | Chaîne | Blocs | Oui | Spécifiez le type de relation qui sera utilisé pour associer plusieurs problèmes. Une liste de tous les types de relations disponibles est disponible dans l'action "Lister les types de relations". |
Exécuter sur
Cette action ne s'applique pas aux entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
is_success | Vrai/Faux | is_success:False |
Résultat JSON
N/A
Mur des cas
Type de résultat | Valeur / Description | Type |
---|---|---|
Message de sortie* | L'action ne doit pas échouer ni arrêter l'exécution d'un playbook : Si le code d'état 201 est signalé pour certains problèmes (is_success = true) : "Le problème "{source issue}" a été associé aux problèmes suivants dans Jira : {destination issues}". Si le code d'état 404 et l'erreur "Le problème n'existe pas" sont signalés pour un problème (is_success=true) : "L'action n'a pas pu trouver les problèmes de destination suivants dans Jira : {problèmes Jira introuvables}". Si le code d'état 404 et l'erreur "Le problème n'existe pas" sont signalés pour tous les problèmes (is_success=false) : "Aucun des problèmes de destination n'a été trouvé dans Jira." L'action doit échouer et arrêter l'exécution d'un playbook : Si une erreur fatale est signalée (par exemple, des identifiants incorrects, une absence de connexion au serveur ou une autre erreur) : "Erreur lors de l'exécution de l'action". Raison : {0}''.format(error.Stacktrace) Si le problème source n'est pas trouvé : "Erreur lors de l'exécution de l'action". Motif : le problème source "{source issue}" est introuvable dans Jira. Veuillez vérifier l'orthographe. Si le code d'état 404 n'est pas l'erreur "Le problème n'existe pas" pour au moins un élément : "Erreur lors de l'exécution de l'action". Motif : {error messages}. |
Général |
Lister les types de relations
Description
Répertorie les types de relations disponibles dans Jira.
Paramètres
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Clé de filtre | LDD | Sélectionnez une réponse Valeurs possibles :
|
Non | Spécifiez la clé à utiliser pour filtrer {item type}. |
Logique de filtrage | LDD | Non spécifié Valeurs possibles :
|
Non | Spécifiez la logique de filtrage à appliquer. La logique de filtrage fonctionne en fonction de la valeur fournie dans le paramètre "Clé de filtre". |
Valeur du filtre | Chaîne | N/A | Non | Spécifiez la valeur à utiliser dans le filtre. Si l'option "Égal à" est sélectionnée, l'action tentera de trouver la correspondance exacte parmi les résultats. Si l'option "Contient" est sélectionnée, l'action tentera de trouver des résultats contenant la sous-chaîne spécifiée. Si rien n'est fourni dans ce paramètre, le filtre ne sera pas appliqué. La logique de filtrage fonctionne en fonction de la valeur fournie dans le paramètre "Clé de filtre". |
Nombre maximal d'enregistrements à renvoyer | Integer | 50 | Non | Spécifiez le nombre d'enregistrements à renvoyer. Si aucune valeur n'est fournie, l'action renvoie 50 enregistrements. |
Exécuter sur
Cette action ne s'applique pas aux entités.
Résultats de l'action
Résultat du script
Nom du résultat du script | Options de valeur | Exemple |
---|---|---|
is_success | Vrai/Faux | is_success:False |
Résultat JSON
[{
"id": "10000",
"name": "Blocks",
"inward": "is blocked by",
"outward": "blocks",
"self": "http://172.30.201.69:8080/rest/api/2/issueLinkType/10000"
}]
Mur des cas
Type de résultat | Valeur / Description | Type |
---|---|---|
Message de sortie* | L'action ne doit pas échouer ni arrêter l'exécution d'un playbook : Si des données sont disponibles (is_success = true) : "Types de relations trouvés avec succès pour les critères fournis dans Jira". Si aucune donnée n'est disponible (is_success=false) : "Aucun type de relation n'a été trouvé pour les critères fournis dans Jira" Si le paramètre "Valeur du filtre" est vide (is_success=true) : "Le filtre n'a pas été appliqué, car le paramètre "Valeur du filtre" est vide." L'action doit échouer et arrêter l'exécution d'un playbook : Si le paramètre "Clé de filtre" est défini sur "Sélectionner un" et que la "Logique de filtre" est définie sur "Égal à" ou "Contient" :Erreur lors de l'exécution de l'action "{nom de l'action}". Raison : vous devez sélectionner un champ dans le paramètre "Clé de filtre"." Si une valeur non valide est fournie pour le nombre maximal d'enregistrements à renvoyer : "Erreur lors de l'exécution de l'action "{action name}". Motif : "Une valeur non valide a été fournie pour "Nombre maximal d'enregistrements à renvoyer" : . Veuillez indiquer un nombre positif." Si une erreur fatale est signalée (par exemple, des identifiants incorrects, l'absence de connexion au serveur ou une autre erreur) : "Erreur lors de l'exécution de l'action "{action name}". Raison : {0}''.format(error.Stacktrace) |
Général |
Tableau du mur des cas | Nom de la table : Available Relation Colonnes du tableau :
|
Général |
Rechercher des utilisateurs
Recherchez des utilisateurs dans Jira.
Entités
Cette action ne s'applique pas aux entités.
Entrées d'action
Pour configurer l'action, utilisez les paramètres suivants :
Paramètres | |
---|---|
User Email Addresses |
Optional
Liste d'adresses e-mail séparées par une virgule pour lesquelles renvoyer les utilisateurs. |
User Names |
Optional
Liste de noms d'utilisateur séparés par une virgule pour lesquels renvoyer les utilisateurs. |
Project |
Optional
Nom du projet dans lequel rechercher des adresses e-mail. Si elle est fournie, seul |
Sorties d'action
Type de sortie de l'action | |
---|---|
Pièce jointe au mur des cas | N/A |
Lien vers le mur des cas | N/A |
Table du mur des cas | N/A |
Table d'enrichissement | N/A |
Résultat JSON | Disponible |
Résultat du script | Disponible |
Résultat du script
Nom du résultat du script | Valeur |
---|---|
is_success | Vrai/Faux |
Résultat 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"
}
}
]
Mur des cas
L'action fournit les messages de sortie suivants :
Message affiché | Description du message |
---|---|
|
Action effectuée. |
Error executing action "Search Users".
Reason: ERROR_REASON |
Échec de l'action. Vérifiez la connexion au serveur, les paramètres d'entrée ou les identifiants. |
Connecteurs
Connecteur Jira
Description
Récupérez les problèmes de Jira dans Google SecOps.
Configurer le connecteur Jira dans Google SecOps
Pour obtenir des instructions détaillées sur la configuration d'un connecteur dans Google SecOps, consultez Configurer le connecteur.
Paramètres du connecteur
Utilisez les paramètres suivants pour configurer le connecteur :
Paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
DeviceProductField | Chaîne | device_product | Oui | Nom du champ utilisé pour déterminer le produit de l'appareil. |
EventClassId | Chaîne | nom | Non | Nom du champ utilisé pour déterminer le nom (sous-type) de l'événement. |
PythonProcessTimeout | Chaîne | 60 | Oui | Délai limite (en secondes) pour le processus Python exécutant le script actuel. |
Racine de l'API | Chaîne | https://{jira_address} | Oui | Racine de l'API de l'instance Jira. |
Nom d'utilisateur | Chaîne | N/A | Oui | N/A |
Jeton d'API | Mot de passe | N/A | Oui | Jeton généré dans la console Jira. Remarque : Ce paramètre peut être utilisé pour contenir la chaîne "Mot de passe" en cas d'authentification sur site, à l'aide d'une combinaison nom d'utilisateur et mot de passe. |
Jours en arrière | Integer | 5 | Non | Nombre maximal de jours en arrière pour extraire les alertes. |
Nombre maximal de billets par cycle | Integer | 10 | Non | Nombre maximal de tickets à récupérer et à traiter en un cycle de connecteur. |
Noms de projets | Chaîne | N/A | Non | Noms de projets séparés par une virgule. |
États des problèmes | Chaîne | N/A | Non | États des problèmes séparés par une virgule. |
Assignees | Chaîne | N/A | Non | Noms complets des utilisateurs, séparés par une virgule. |
Types de problèmes | Chaîne | N/A | Non | Types de problèmes séparés par une virgule. |
Priorités des problèmes | Chaîne | N/A | Non | Priorités des problèmes, séparées par une virgule. |
Composants du problème | Chaîne | N/A | Non | Composants du problème séparés par une virgule. |
Adresse du serveur proxy | Chaîne | N/A | Non | Adresse du serveur proxy à utiliser. |
Nom d'utilisateur du proxy | Chaîne | N/A | Non | Nom d'utilisateur du proxy pour l'authentification. |
Mot de passe du proxy | Mot de passe | N/A | Non | Mot de passe du proxy pour l'authentification. |
Nom du champ "Environnement" | Chaîne | "" | Non | Décrit le nom du champ dans lequel le nom de l'environnement est stocké. Si le champ "environment" (environnement) est introuvable, l'environnement est celui par défaut. |
Modèle d'expression régulière de l'environnement | Chaîne | .* | Non | Expression régulière à exécuter sur la valeur trouvée dans le champ "Nom du champ d'environnement". La valeur par défaut est ".*" pour tout capturer et renvoyer la valeur inchangée. Permet à l'utilisateur de manipuler le champ "environnement" à l'aide de la logique des expressions régulières. Si le modèle d'expression régulière est nul ou vide, ou si la valeur d'environnement est nulle, l'environnement par défaut est utilisé comme résultat final. |
Règles du connecteur
Assistance de proxy
Le connecteur est compatible avec le proxy.
Liste dynamique et liste de blocage
Le connecteur n'accepte les règles de listes dynamiques et de listes de blocage que pour certains libellés dans Jira.
Jobs
Tâche de clôture de la synchronisation
Description
Fermez les tickets dans Jira si les alertes Google SecOps correspondantes ont été fermées.
Paramètres
Nom à afficher du paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Racine de l'API | Chaîne | https://{jira_address} | Oui | URL racine de l'API de l'instance Jira. |
Nom d'utilisateur | Chaîne | N/A | Oui | Nom d'utilisateur permettant de se connecter à l'instance Jira. |
Jeton d'API | Mot de passe | N/A | Oui | Jeton généré dans la console Jira. Remarque : Ce paramètre peut être utilisé pour contenir la chaîne "Mot de passe" en cas d'authentification sur site, à l'aide d'une combinaison nom d'utilisateur et mot de passe. |
Noms de projets | Chaîne | noms de projets séparés par une virgule. | Oui | Noms des projets Jira que le job doit surveiller, séparés par une virgule. |
Nombre maximal de jours en arrière | Integer | 1 | Oui | Nombre maximal de jours pendant lesquels l'état des tickets peut être synchronisé en arrière. |
Tâche de synchronisation des commentaires
Description
Synchronisez les commentaires entre la demande Google SecOps et le ticket Jira correspondant. La synchronisation est bidirectionnelle, c'est-à-dire de Google SecOps vers Jira et de Jira vers Google SecOps.
Ce job n'accepte que les demandes Google SecOps avec le tag Jira
.
Lorsque la tâche crée un commentaire, elle applique le préfixe. Si un utilisateur Google SecOps ajoute un commentaire dans la demande Google SecOps, le job crée et synchronise le commentaire de l'utilisateur dans le ticket Jira correspondant à l'aide du paramètre Préfixe de commentaire Chronicle.
Cette fonctionnalité a été ajoutée pour deux raisons :
- Visibilité.
- Empêche les commentaires ajoutés par le job d'être à nouveau synchronisés de l'autre côté et de provoquer une boucle.
Paramètres
Nom à afficher du paramètre | Type | Valeur par défaut | Obligatoire | Description |
---|---|---|---|---|
Racine de l'API | Chaîne | https://{jira_address} | Oui | URL racine de l'API de l'instance Jira. |
Nom d'utilisateur | Chaîne | N/A | Oui | Nom d'utilisateur permettant de se connecter à l'instance Jira. |
Jeton d'API | Mot de passe | N/A | Oui | Jeton généré dans la console Jira. Remarque : Ce paramètre peut être utilisé pour contenir la chaîne "Mot de passe" en cas d'authentification sur site, à l'aide d'une combinaison nom d'utilisateur et mot de passe. |
Noms de projets | Chaîne | Noms de projets séparés par une virgule | Oui | Noms des projets Jira séparés par une virgule que le job doit surveiller. |
Nombre maximal de jours en arrière | Integer | 1 | Oui | Nombre maximal de jours pendant lesquels l'état des tickets est synchronisé en arrière. |
Préfixe de commentaire Google SecOps | Chaîne | Google SecOps : | Oui | Préfixe ajouté par le job de synchronisation aux commentaires créés pour les tickets Jira. |
Préfixe des commentaires Jira | Chaîne | Tâche de synchronisation des commentaires Jira : | Oui | Préfixe ajouté par le job de synchronisation aux commentaires des demandes d'alerte Google SecOps. |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.