Aller au contenu

Configurer le protocole d'authentification OAuth 2.0

Certains bugtrackers ou serveurs de synchronisation peuvent ĂȘtre configurĂ©s avec un protocole de type OAuth 2.0. Il n'est exploitĂ© que par les connecteurs Jira Bugtracker et Xsquash4Jira.

La configuration se fait à la fois dans Jira et dans Squash TM. Elle diffÚre selon le mode d'hébergement de Jira (Jira Data Center ou Jira Cloud).

Prérequis

La configuration d'OAuth 2.0 pour la connexion entre Squash TM et Jira nécessite les prérequis suivants :

Configurer OAuth 2.0 avec Jira Data Center

Dans Jira

Dans Jira Data Center, il est nécessaire de créer un lien d'application entrant entre Jira et Squash TM :

  1. Aller dans Administration > Applications > Liens entre applications ;
  2. Cliquer sur [Créer un lien] ;
  3. SĂ©lectionner App externe comme type d'app, puis Entrante comme direction ;
  4. Remplir les champs du formulaire :

    • Nom : nom du lien, par exemple "Squash TM" ;
    • URL de redirection : elle doit ĂȘtre de la forme suivante :

      `url-publique-de-squash/oauth2/authentication`
      
    • Autorisation : sĂ©lectionner l'option Write ;

  5. Copier les identifiants OAuth 2.0, ID client et Secret du client, qui sont utilisés dans la configuration cÎté Squash TM.

En savoir plus

Pour plus d'informations sur la création et la gestion des liens entre applications, consulter la documentation Jira.

Dans Squash TM

Dans Squash TM, la configuration du protocole d'authentification OAuth 2.0 se fait depuis la page de consultation du serveur dans l'espace Bugtrackers et serveurs de synchronisation.

Dans le bloc Protocole d'authentification :

  1. SĂ©lectionner l'option OAuth 2 ;
  2. Remplir les champs du formulaire :

    • Grant type : type d'autorisation, sĂ©lectionner Authorisation Code ;
    • ID client : copier l'ID client gĂ©nĂ©rĂ© par Jira ;
    • Secret du client : copier le secret du client gĂ©nĂ©rĂ© par Jira ;
    • URL d'autorisation : elle est autocomplĂ©tĂ©e par dĂ©faut, elle doit ĂȘtre de la forme :

      url-de-jira/rest/oauth2/latest/authorize

    • URL de requĂȘtes de jetons : elle est autocomplĂ©tĂ©e par dĂ©faut, elle doit ĂȘtre de la forme :

      url-de-jira/rest/oauth2/latest/token

    • URL de redirection : elle est autocomplĂ©tĂ©e par dĂ©faut, elle doit ĂȘtre de la forme :

      url-publique-de-squash/oauth2/authentication

    • Scope : doit correspondre Ă  ce qui a Ă©tĂ© dĂ©fini dans Jira dans le champ Autorisation, en MAJUSCULES : WRITE.

Configurer OAuth 2.0 avec Jira Cloud

Dans Jira

Dans Jira Cloud, il est nécessaire de créer une intégration OAuth 2.0 :

  1. Accéder à Atlassian Developer Console ;
  2. Cliquer sur [Create], puis OAuth 2.0 integration ;
  3. Saisir un nom pour l'intégration (par exemple "Squash TM"), accepter les conditions d'Atlassian, puis cliquer sur [Create] ;
  4. Aller dans Distribution, cliquer sur [Edit] et remplir les champs suivants :

    • Distribution status : Sharing ;
    • Vendor name : Henix ;
    • Privacy policy :

      https://tm-en.doc.squashtest.com/latest/saas/saas-security.html

    • Does your app store personal data? : No ;

  5. Aller dans Permissions pour paramétrer les scopes :

    • Dans le tableau, au niveau de la ligne "Jira API", cliquer sur [Add], puis [Configure]
    • Dans l'onglet Classic scopes, dans le tableau Jira platform REST API, cliquer sur [Edit scopes], puis cocher :

      • View Jira issue data (read:jira-work) ;
      • Manage project settings (manage:jira-project) ;
      • Manage Jira global settings (manage:jira-configuration) ;
      • View user profiles (read:jira-user) ;
      • Create and manage issues (write:jira-work) ;
    • Dans l'onglet Granular scopes, cliquer sur [Edit scopes], puis cocher :

      • View issue details (read:issue-details:jira) ;
      • View projects (read:project:jira) ;
      • View JQL (read:jql:jira) ;
      • Read board configuration (read:board-scope.admin:jira-software) ;
      • Read boards, backlogs, and related items (read:board-scope:jira-software) ;
      • Read sprints (read:sprint:jira-software) ;
  6. Aller dans Authorization :

    • Dans le tableau, au niveau de la ligne OAuth 2.0 (3LO), cliquer sur [Add] ;
    • Remplir le champ Callback URL, l'URL doit ĂȘtre de la forme suivante :

      url-publique-de-squash/oauth2/authentication

  7. Aller dans Settings, puis Authentication details et copier les identifiants OAuth 2.0, Client ID et Secret, qui sont utilisés dans la configuration cÎté Squash TM

Dans Squash TM

Dans Squash TM, la configuration du protocole d'authentification OAuth 2.0 se fait depuis la page de consultation du serveur dans l'espace Bugtrackers et serveurs de synchronisation.

Dans le bloc Protocole d'authentification :

  1. SĂ©lectionner l'option OAuth 2 ;
  2. Remplir les champs du formulaire :

    • Grant type : type d'autorisation, sĂ©lectionner Authorisation Code ;
    • ID client : copier l'ID client gĂ©nĂ©rĂ© par Jira ;
    • Secret du client : copier le secret du client gĂ©nĂ©rĂ© par Jira ;
    • URL de d'autorisation : elle est autocomplĂ©tĂ©e par dĂ©faut, elle doit ĂȘtre de la forme :

      https://auth.atlassian.com/authorize

    • URL de requĂȘtes de jetons : elle est autocomplĂ©tĂ©e par dĂ©faut, elle doit ĂȘtre de la forme :

      https://auth.atlassian.com/oauth/token

    • URL de redirection : elle est automcomplĂ©tĂ©e par dĂ©faut, elle doit ĂȘtre de la forme :

      url-publique-de-squash/oauth2/authentication

    • Scope : doit correspondre aux codes des scopes dĂ©finis dans Jira dans le menu Permissions, c'est-Ă -dire :

      read:jira-work manage:jira-project manage:jira-configuration read:jira-user write:jira-work read:issue-details:jira read:project:jira read:jql:jira read:board-scope.admin:jira-software read:board-scope:jira-software read:sprint:jira-software

Authentification des utilisateurs en OAuth 2.0

Une fois la configuration sauvegardée, selon le mode d'authentification des utilisateurs et l'utilisation de Jira (comme bugtracker ou comme serveur de synchronisation), voici comment s'authentifier à Jira depuis Squash :

  • authentification du serveur (compte technique) : dans le bloc Politique d'authentification du serveur, bouton [GĂ©nĂ©rer le jeton] ;
  • authentification de l'utilisateur :
    • sur la page Mon compte de l'utilisateur, bloc Mode de configuration des bugtrackers, bouton [GĂ©nĂ©rer le jeton] ;
    • lors de la dĂ©claration d'anomalie depuis Squash TM ou depuis les blocs Anomalies connues, bouton [Se connecter] ;
    • lors de l'ajout d'une synchronisation Xsquash4Jira avec les identifiants de l'utilisateur, bouton [GĂ©nĂ©rer le jeton] (uniquement pour l'administrateur et le chef de projet)

En savoir plus

Pour en savoir sur le mode d'authentification des utilisateurs, consulter la page Politique d'authentification.