Démarrage rapide : connectez les utilisateurs et appelez l'API Microsoft Graph à partir d'une application Web Node.js à l'aide de MSAL Node

Dans ce guide de démarrage rapide, vous téléchargez et exécutez un exemple de code qui montre comment une application web Node.js peut connecter des utilisateurs en utilisant le flux du code d’autorisation. Cet exemple de code montre également comment obtenir un jeton d’accès pour appeler l’API Microsoft Graph.

Consultez Fonctionnement de l’exemple pour obtenir une illustration.

Ce guide de démarrage rapide utilise la bibliothèque d’authentification Microsoft pour Node.js (MSAL Node) avec le flux de code d’autorisation.

Prérequis

Inscrire et télécharger votre application de démarrage rapide

Étape 1 : Inscrivez votre application

Conseil

Les étapes décrites dans cet article peuvent varier légèrement en fonction du portail de départ.

  1. Connectez-vous au Centre d’administration de Microsoft Entra au minimum en tant qu’Administrateur d’application cloud.
  2. Si vous avez accès à plusieurs tenants, utilisez l’icône Paramètres dans le menu supérieur pour basculer vers le tenant dans lequel vous voulez inscrire l’application à partir du menu Répertoires + abonnements.
  3. Accédez à Identité>Applications>Inscriptions d’applications, puis sélectionnez Nouvelle inscription.
  4. Entrez un nom pour votre application. Les utilisateurs de votre application peuvent voir ce nom, et vous pouvez le changer ultérieurement.
  5. Sous Types de comptes pris en charge, sélectionnez Comptes dans cet annuaire organisationnel uniquement.
  6. Définissez le type d’URI de redirection sur Web, et la valeur sur http://localhost:3000/auth/redirect.
  7. Sélectionnez Inscription.
  8. Dans la page Vue d’ensemble, notez la valeur de ID d’application (client) pour une utilisation ultérieure.
  9. Sous Gérer, sélectionnez Certificats et secrets>Clés secrètes client>Nouvelle clé secrète client. Laissez la description vide et conservez l’expiration par défaut, puis sélectionnez Ajouter.
  10. Notez la valeur du secret client pour une utilisation ultérieure.

Étape 2 : Téléchargez le projet

Pour exécuter le projet avec un serveur web en utilisant Node.js, téléchargez les fichiers principaux du projet.

Étape 3 : Configurer votre application Node

Extrayez le projet, ouvrez le dossier ms-identity-node-main, puis ouvrez le fichier .env sous le dossier Application . Remplacez les valeurs ci-dessus par :

Variable Description Exemple(s)
Enter_the_Cloud_Instance_Id_Here Instance cloud Azure dans laquelle votre application est inscrite. https://login.microsoftonline.com/ (inclure la barre oblique de fin)
Enter_the_Tenant_Info_here ID de locataire ou domaine principal contoso.microsoft.com ou aaaabbbb-0000-cccc-1111-dddd2222eeee
Enter_the_Application_Id_Here ID client de l’application que vous avez inscrite 00001111-aaaa-2222-bbbb-3333cccc4444
Enter_the_Client_Secret_Here Secret client de l’application que vous avez inscrite A1b-C2d_E3f.H4i,J5k?L6m!N7o-P8q_R9s.T0u
Enter_the_Graph_Endpoint_Here Instance cloud Microsoft API Graph que votre application appellera https://graph.microsoft.com/ (inclure la barre oblique de fin)
Enter_the_Express_Session_Secret_Here Chaîne aléatoire de caractères utilisée pour signer le cookie de session Express A1b-C2d_E3f.H4...

Votre fichier doit ressembler à ce qui suit :

CLOUD_INSTANCE=https://login.microsoftonline.com/
TENANT_ID=aaaabbbb-0000-cccc-1111-dddd2222eeee
CLIENT_ID=00001111-aaaa-2222-bbbb-3333cccc4444
CLIENT_SECRET=A1b-C2d_E3f.H4...

REDIRECT_URI=http://localhost:3000/auth/redirect
POST_LOGOUT_REDIRECT_URI=http://localhost:3000

GRAPH_API_ENDPOINT=https://graph.microsoft.com/

EXPRESS_SESSION_SECRET=6DP6v09eLiW7f1E65B8k

Étape 4 : Exécuter le projet

Exécutez le projet avec Node.js.

  1. Pour démarrer le serveur, exécutez les commandes suivantes dans le répertoire du projet :

    cd App
    npm install
    npm start
    
  2. Accédez à http://localhost:3000/.

  3. Sélectionnez Se connecter pour démarrer le processus de connexion.

    La première fois que vous vous connectez, vous êtes invité à autoriser l’application à accéder à votre profil et à vous connecter. Une fois que vous êtes connecté, vous êtes redirigé vers la page d’accueil de l’application.

Informations complémentaires

Fonctionnement de l’exemple

L’exemple héberge un serveur web sur localhost, port 3000. Lorsqu’un navigateur web accède à cette adresse, l’application affiche la page d’accueil. Une fois que l’utilisateur sélectionne Se connecter, l’application redirige le navigateur vers l’écran de connexion Microsoft Entra, via l’URL générée par la bibliothèque de nœuds MSAL. Une fois que l’utilisateur donne son consentement, le navigateur redirige l’utilisateur vers la page d’accueil de l’application, avec un ID et un jeton d’accès.

MSAL Node

La bibliothèque MSAL Node connecte les utilisateurs et demande les jetons utilisés pour accéder à une API protégée par la plateforme d’identités Microsoft. Vous pouvez télécharger la dernière version à l’aide du gestionnaire de package (npm) Node.js :

npm install @azure/msal-node

Étapes suivantes

Approfondissez en créant une application web ASP.NET Core qui connecte les utilisateurs dans cette série de tutoriels en plusieurs parties :