Démarrage rapide : connectez les utilisateurs et appelez Microsoft Graph à partir d'une application de bureau Node.js

Dans ce guide de démarrage rapide, vous téléchargez et vous exécutez un exemple de code qui montre comment une application de bureau Electron peut connecter des utilisateurs et acquérir des jetons d’accès pour appeler l’API Microsoft Graph.

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 avec PKCE.

Prérequis

Inscrire et télécharger l’exemple d’application

Suivez les étapes ci-dessous pour commencer.

Étape 1 : Enregistrement de l’application

Conseil

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

Pour inscrire votre application et ajouter manuellement les informations d’inscription de l’application à votre solution, procédez comme suit :

  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 (par exemple, msal-node-desktop). Les utilisateurs de votre application peuvent voir ce nom, et vous pouvez le changer ultérieurement.
  5. Sélectionnez Inscrire pour créer l’application.
  6. Sous Gérer, sélectionnez Authentification.
  7. Sélectionnez Ajouter une plateforme>Applications de bureau et mobiles.
  8. Dans la section URI de redirection, entrez http://localhost.
  9. Sélectionnez Configurer.

Étape 2 : Télécharger l’exemple de projet Electron

Téléchargez l’exemple de code.

Étape 3 : Configurer l’exemple de projet Electron

*Extrayez le projet, ouvrez le dossier ms-identity-JavaScript-nodejs-desktop-main, puis ouvrez le fichier .authConfig.js. Remplacez la valeur comme suit :

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_Id_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_Redirect_Uri_Here URI de redirection de l’application que vous avez inscrite msal00001111-aaaa-2222-bbbb-3333cccc4444://auth
Enter_the_Graph_Endpoint_Here Instance cloud Microsoft API Graph que votre application appellera https://graph.microsoft.com/ (inclure la barre oblique de fin)

Votre fichier doit ressembler à ce qui suit :

const AAD_ENDPOINT_HOST = "https://login.microsoftonline.com/"; // include the trailing slash

const msalConfig = {
    auth: {
        clientId: "00001111-aaaa-2222-bbbb-3333cccc4444",
        authority: `${AAD_ENDPOINT_HOST}/aaaabbbb-0000-cccc-1111-dddd2222eeee`,
    },
    system: {
        loggerOptions: {
            loggerCallback(loglevel, message, containsPii) {
                 console.log(message);
             },
             piiLoggingEnabled: false,
             logLevel: LogLevel.Verbose,
        }
    }
}

const GRAPH_ENDPOINT_HOST = "https://graph.microsoft.com/"; // include the trailing slash

const protectedResources = {
     graphMe: {
         endpoint: `${GRAPH_ENDPOINT_HOST}v1.0/me`,
         scopes: ["User.Read"],
     }
};

module.exports = {
     msalConfig: msalConfig,
     protectedResources: protectedResources,
 };

Étape 4 : Exécution de l'application

  1. Vous devez installer les dépendances de cet exemple une seule fois :

    cd ms-identity-javascript-nodejs-desktop-main
    npm install
    
  2. Ensuite, exécutez l’application via l’invite de commandes ou la console :

    npm start
    
  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 l’application.

Informations complémentaires

Fonctionnement de l’exemple

Quand un utilisateur sélectionne le bouton Se connecter pour la première fois, la méthode acquireTokenInteractive de MSAL Node est appelée. Cette méthode redirige l’utilisateur pour qu’il se connecte avec le point de terminaison de la plateforme d’identités Microsoft, obtient un code d’autorisation, puis l’échange contre un jeton d’accès.

MSAL Node

MSAL Node est la bibliothèque utilisée pour connecter les utilisateurs et demander des jetons permettant d’accéder à une API protégée par la plateforme d’identités Microsoft. Pour plus d’informations sur l’utilisation de MSAL Node avec des applications de bureau, consultez cet article.

Vous pouvez installer MSAL Node en exécutant la commande npm suivante.

npm install @azure/msal-node --save

Étapes suivantes

Pour plus d’informations sur le développement d’applications de bureau avec MSAL Node, consultez le tutoriel :