
Utiliser Postman avec Microsoft Dynamics
Cet article explique étape par étape comment s'authentifier sur la plateforme Microsoft Dynamics en utilisant Postman pour tester ses APIs
Cet article fait partie d’une série. Dans celui-ci, nous mettons en avant le flux Authorization Code. Consultez les autres articles sur les autres flux d’autorisation :
La partie authentification est très importante lors de l’utilisation de certains endpoints. Lorsque vous utilisez l’environnement Microsoft 365, toutes sortes d’endpoints sont constamment sollicités. Vous ne devriez pas vous inquiéter de l’authentification car elle est gérée pour vous. Vous vous connectez et un jeton ID ou un access token est récupéré et utilisé tout au long de votre navigation dans Microsoft 365. Lorsque l’access token expire après 1 heure, un nouveau est récupéré sur la base d’un refresh token, mais l’utilisateur ne voit rien car c’est géré pour lui.
Cependant, lorsque vous commencez à créer des applications vous-même, vous devez prendre les choses en main et de préférence de la manière la plus sécurisée possible. Dans cette série d’articles, je vais aborder les méthodes d’authentification les plus couramment utilisées.
Lors de l’utilisation des types de flux d’autorisation, vous ne vous autorisez pas avec un utilisateur comme vous le feriez lors de l’utilisation de la plateforme Microsoft 365 ; vous utilisez une application pour laquelle vous définissez les permissions nécessaires pouvant être utilisées avec cette application. Ainsi, vous isolez la sécurité aux seuls droits nécessaires pour lesquels l’application sera utilisée. Comment créer une telle application et lui fournir les permissions nécessaires ?
En accédant à https://portal.azure.com, allez dans Microsoft Entra ID.

De là, naviguez vers App registrations.

Et cliquez sur New registration.

Ensuite, donnez un titre à votre inscription d’application et cliquez sur Register.

Enfin, vous pouvez donner à votre application les permissions nécessaires en cliquant sur API permissions et en les ajoutant.

Le flux Authorization Code est un flux en 2 étapes où vous devez appeler 2 endpoints. Vous devez d’abord appeler l’endpoint authorize avec une méthode GET depuis laquelle vous êtes redirigé vers une URL de redirection prédéfinie qui vous fournit un code. Avec ce code, vous pouvez appeler un deuxième endpoint, l’endpoint token avec une méthode POST qui vous fournira l’access token.
Votre application doit d’abord avoir une URL de redirection prédéfinie. Cette URL est utilisée pour envoyer le code à cette URL afin que votre application puisse l’utiliser pour obtenir un access token.
Allez dans votre inscription d’application Entra et cliquez sur Authentication puis sur Add a platform.

Vous verrez qu’un panneau s’ouvre sur la droite de votre écran. Cliquez sur Web.

Fournissez l’URL de redirection où votre code doit être envoyé. Il s’agit généralement d’une URL de votre application, mais pour cet article j’utilise https://localhost. Cliquez ensuite sur Configure.

Ensuite, nous pouvons effectuer une requête GET vers l’endpoint authorize pour lequel nous avons besoin des valeurs suivantes :
client_id : L’identifiant de votre client, trouvable dans l’écran d’accueil de votre inscription d’application.
response_type : code
redirect_uri : Cela doit correspondre à l’URL de redirection que nous avons fournie dans la section d’autorisation. Dans cet exemple, ce doit être https://localhost.
scope : Le scope doit être l’identifiant de ressource de l’application contre laquelle vous souhaitez utiliser votre access token, suivi de .default. Pour Microsoft Graph, ce serait par exemple https://graph.microsoft.com/.default. Si vous souhaitez également récupérer un refresh token, vous devez ajouter offline_access à votre scope. Par exemple : https://graph.microsoft.com/.default offline_access.
state : Le state est une valeur de chaîne qui est également fournie avec le code. Il peut s’agir d’informations sur l’endroit depuis lequel l’utilisateur a appelé l’endpoint authorize, par exemple. Dans cet exemple, ce n’est pas très utile, donc nous mettrons simplement ‘12345’.
Ces informations sont fournies en tant que querystring avec l’endpoint authorize. Par exemple, cela pourrait ressembler à ceci :
https://login.microsoftonline.com/[YOUR_TENANT_ID]/oauth2/v2.0/authorize?client_id=[YOUR_CLIENT_ID]&response_type=code&redirect_uri=https://localhost&scope=https://graph.microsoft.com/.default&state=12345
Vous pouvez saisir cette URL dans votre navigateur, après quoi l’utilisateur verra un écran de connexion où il devra entrer son nom d’utilisateur et son mot de passe. Ensuite, vous verrez un écran vous demandant d’accepter les permissions nécessaires pour cette inscription d’application :

Après avoir cliqué sur accept, vous serez redirigé vers votre URL de redirection avec les paramètres de querystring suivants :
Passons maintenant au 2e endpoint, l’endpoint token. Pour cela, vous aurez besoin des paramètres suivants :

Si tout se passe bien, vous obtenez un json en retour qui contient votre access token et votre refresh token (si le scope a été fourni avec ‘offline_access’).
