Fournisseur Electron

Le fournisseur DeNter utilise msal-node pour se connecter aux utilisateurs et acquérir des jetons à utiliser avec Microsoft Graph dans une application DeNte.

Pour en savoir plus sur les fournisseurs d’authentification, voir les fournisseurs.

Prise en main

Installer les packages

npm install @microsoft/mgt-element @microsoft/mgt-electron-provider

Vous devez initialiser LeProvideur dans le processus de rendu (frontal) et LeThenAuthenticator dans le processus principal (principal).

Initialisation d’Unprovideur Dans le processus de rendu (renderer.ts)

Le GroupementProvideur est chargé de communiquer avec Lethenticator (dans le processus principal) pour demander des jetons d’accès et recevoir des informations relatives à l’état de journalisation qui sont requises pour que les composants fonctionnent.

import {Providers} from '@microsoft/mgt-element';
import {ElectronProvider} from '@microsoft/mgt-electron-provider/dist/Provider';
import '@microsoft/mgt-components';

// initialize the auth provider globally
Providers.globalProvider = new ElectronProvider();

Initialisation de l’authentaristeur Dans le processus principal (main.ts)

Le ContrôleAuthenticator est responsable de la configuration des variables de configuration pour l’authentification MSAL, l’acquisition de jetons d’accès et la communication avec LeProvider. Initialisez l’authentaristeur Dans le processus principal et définissez les variables de configuration telles que l’ID client.

import { ElectronAuthenticator, MsalElectronConfig } from '@microsoft/mgt-electron-provider/dist/Authenticator'; 

let config: MsalElectronConfig = {
  clientId: '<your_client_id>',
  authority: '<your_authority_url>', //optional
  mainWindow: mainWindow, 
  scopes: ['user.read'] //We recommend pre-consenting all the required scopes on the Azure portal
};

ElectronAuthenticator.initialize(config);
Attribut Description
clientId ID client de chaîne (voir Création d’un ID d’application/client). Obligatoire.
scopes Chaînes séparées par des virgules pour les étendues que l’utilisateur doit consentir à se connecter. Recommandé.
autorité Chaîne d’autorité : la valeur par défaut est l’autorité commune. Pour les applications mono-client, utilisez votre ID de client ou votre nom de client. Par exemple : https://login.microsoftonline.com/[your-tenant-name].onmicrosoft.com ou https://login.microsoftonline.com/[your-tenant-id]. Facultatif.
mainWindow Instance de l’explorateur principal qui requiert une authentification.
cachePlugin Plug-in de cache que vous souhaitez utiliser pour le stockage persistant des jetons. Voir Extensions d’authentification Microsoft pour nœud. Facultatif.

Remarque : Actuellement, le fournisseur ne prend pas en charge la prise en charge incrémentielle. En tant que meilleure pratique, n’oubliez pas de consentir à toutes les étendues dont les composants ont besoin.

Créer un ID client/application

Ajouter une nouvelle inscription d’application Azure Active Directory pour obtenir un ID client

Pour créer une application dans Azure Active Directory, ajoutez une nouvelle inscription d’application, puis configurez un nom d’application et un URI de redirection.

Pour inscrire l’application dans Azure Active Directory :

  1. Accédez au Portail Azure.
  2. Dans le menu, sélectionnez Azure Active Directory.
  3. Dans le menu Azure Active Directory, sélectionnez Inscription des applications.
  4. Dans le menu supérieur, sélectionnez le bouton Nouvelle inscription.
  5. Entrez le nom de votre application . par exemple, My Electron-App.
  6. Pour les Types de comptes pris en charge, sélectionnez Comptes dans un annuaire organisationnel (Comptes Azure AD Directory multi-locataires) et les comptes personnels Microsoft (par ex. Skype, Xbox).
  7. Dans le champ URI de redirection , dans la liste, sélectionnez Client public/natif (mobile & bureau) et, dans le champ URL, entrez msal://redirect.
  8. Confirmez les changements en sélectionnant le bouton Inscrire.

Prochaines étapes