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 :
- Squash TM doit être configuré en https ;
- L'URL publique de Squash TM doit être définie dans les paramètres système.
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 :
- Aller dans Administration > Applications > Liens entre applications ;
- Cliquer sur [Créer un lien] ;
- Sélectionner App externe comme type d'app, puis Entrante comme direction ;
-
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 ;
-
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 :
- Sélectionner l'option OAuth 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 :
- Accéder à Atlassian Developer Console ;
- Cliquer sur [Create], puis OAuth 2.0 integration ;
- Saisir un nom pour l'intégration (par exemple "Squash TM"), accepter les conditions d'Atlassian, puis cliquer sur [Create] ;
-
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 ;
- Distribution status :
-
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) ;
-
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
-
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 :
- Sélectionner l'option OAuth 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.