Поделиться через


Поставщик Electron

Предостережение

Набор средств Microsoft Graph не рекомендуется использовать. Период выхода на пенсию начинается 1 сентября 2025 года, а полный выход на пенсию запланирован на 28 августа 2026 года. Разработчикам следует перейти на использование пакетов SDK для Microsoft Graph или других поддерживаемых средств Microsoft Graph для создания веб-интерфейсов. Дополнительные сведения см. в объявлении об устаревании.

Поставщик Electron использует MSAL-node для входа пользователей и получения маркеров для использования с Microsoft Graph в приложении Electron.

Дополнительные сведения о поставщиках проверки подлинности см. в статье Поставщики.

Начало работы

Установка пакетов

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

Необходимо инициализировать ElectronProvider в процессе отрисовщика (внешний интерфейс) и ElectronAuthenticator в основном процессе (серверная часть).

Инициализация ElectronProvider в процессе отрисовщика (renderer.ts)

ElectronProvider отвечает за обмен данными с ElectronAuthenticator (в основном процессе) для запроса маркеров доступа и получения сведений о состоянии входа, необходимых для работы компонентов.

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

const baseURL: GraphEndpoint = 'https://graph.microsoft.us'; // change the base URL

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

Инициализация ElectronAuthenticator в основном процессе (main.ts)

ElectronAuthenticator отвечает за настройку переменных конфигурации для проверки подлинности MSAL, получение маркеров доступа и взаимодействие с ElectronProvider. Инициализируйте ElectronAuthenticator в основном процессе и настройте переменные конфигурации, такие как идентификатор клиента.

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 Microsoft Entra admin center
  baseURL: 'https://graph.microsoft.us' // change this if you want to use a different M365 endpoint
};

ElectronAuthenticator.initialize(config);
Атрибут Описание
clientId Строковый идентификатор клиента (см. раздел Создание идентификатора приложения или клиента). Обязательный.
scopes Строки, разделенные запятыми, для областей, на которые пользователь должен согласиться при входе. Рекомендованный.
authority Строка центра — по умолчанию используется общий центр. Для однотенантного приложения используйте идентификатор клиента или имя клиента. Например, https://login.microsoftonline.com/[your-tenant-contoso.com или https://login.microsoftonline.com/[your-tenant-id]. Необязательный.
mainWindow Экземпляр основного BrowserWindow, требующий проверки подлинности.
cachePlugin Подключаемый модуль кэша, который вы хотите использовать для постоянного хранения маркеров. См . раздел Расширения проверки подлинности Майкрософт для Node. Необязательный параметр.
базовый URL-адрес Конечная точка Microsoft Graph, используемая для вызовов Microsoft Graph. Это может быть любое из поддерживаемых национальных облачных развертываний. Значение по умолчанию — https://graph.microsoft.com.

Заметка: В настоящее время поставщик не поддерживает добавочную поддержку. Рекомендуется предоставить согласие на все области, необходимые для компонентов.

Создание идентификатора клиента/приложения

Добавление новой регистрации приложения в Microsoft Entra ID для получения идентификатора клиента

Чтобы создать приложение в Microsoft Entra ID, добавьте новую регистрацию приложения, а затем настройте имя приложения и URI перенаправления.

Чтобы создать приложение в Microsoft Entra ID:

  1. Перейдите к Центр администрирования Microsoft Entra.
  2. Разверните меню >Удостоверение, разверните пункт Приложения>выберите Регистрация приложений> нажмите кнопку Создать регистрацию.
  3. Введите имя приложения; например, My Electron-App.
  4. Для типа поддерживаемых типов учетных записей выберите Учетные записи в любом каталоге организации (любой каталог Microsoft Entra — мультитенантный) и личные учетные записи Майкрософт (например, Skype, Xbox).
  5. В поле URI перенаправления в раскрывающемся списке выберите Общедоступный клиент или собственный (мобильный & desktop) и в поле URL-адрес введите msal://redirect.
  6. Подтвердите изменения, нажав кнопку Зарегистрировать.

Дальнейшие действия