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
- Un abonnement Azure. Créez un abonnement Azure gratuitement.
- Node.JS
- Visual Studio Code ou un autre éditeur de code
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.
- Connectez-vous au Centre d’administration de Microsoft Entra au minimum en tant qu’Administrateur d’application cloud.
- 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.
- Accédez à Identité>Applications>Inscriptions d’applications, puis sélectionnez Nouvelle inscription.
- Entrez un nom pour votre application. Les utilisateurs de votre application peuvent voir ce nom, et vous pouvez le changer ultérieurement.
- Sous Types de comptes pris en charge, sélectionnez Comptes dans cet annuaire organisationnel uniquement.
- Définissez le type d’URI de redirection sur Web, et la valeur sur
http://localhost:3000/auth/redirect
. - Sélectionnez Inscription.
- Dans la page Vue d’ensemble, notez la valeur de ID d’application (client) pour une utilisation ultérieure.
- 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.
- 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.
Pour démarrer le serveur, exécutez les commandes suivantes dans le répertoire du projet :
cd App npm install npm start
Accédez à
http://localhost:3000/
.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 :