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 :

  1. Connectez-vous à votre compte Atlassian.
  2. Cliquez sur Create API token (Créer un jeton d'API).
  3. Dans la boîte de dialogue qui s'affiche, saisissez un libellé court et facile à retenir pour votre jeton, puis cliquez sur Créer.
  4. 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

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 :

  • Nom
  • Vers l'intérieur
  • Extérieur
Non Spécifiez la clé à utiliser pour filtrer {item type}.
Logique de filtrage LDD

Non spécifié

Valeurs possibles :

  • Non spécifié
  • Égal à
  • Contient
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 :

  • Nom – nom
  • Vers l'intérieur – vers l'intérieur
  • Extérieur – extérieur
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 Project Assignable Users est renvoyé.

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

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

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 :

  1. Visibilité.
  2. 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.