电子提供程序
Electron 提供程序使用 MSAL 节点 来登录用户,并获取用于 Electron 应用程序中的 Microsoft Graph 的令牌。
若要详细了解身份验证提供程序,请参阅 提供程序。
入门
安装包
npm install @microsoft/mgt-element @microsoft/mgt-electron-provider
需要在呈现器进程中初始化 ElectronProvider (前端) ,在main进程中初始化 ElectronAuthenticator (后端) 。
在呈现器进程中初始化 ElectronProvider (renderer.ts)
ElectronProvider 负责在main过程中与 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);
在main进程中初始化 ElectronAuthenticator (main.ts)
ElectronAuthenticator 负责设置 MSAL 身份验证的配置变量、获取访问令牌并与 ElectronProvider 通信。 在 main 进程中初始化 ElectronAuthenticator 并设置客户端 id 等配置变量。
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 | 字符串客户端 ID (请参阅创建应用/客户端 ID) 。 必填。 |
scopes | 用户登录时必须同意的范围的逗号分隔字符串。 推荐。 |
权威 | 颁发机构字符串 - 默认为公共颁发机构。 对于单租户应用,请使用租户 ID 或租户名称。 例如,https://login.microsoftonline.com/[your-tenant-contoso.com 或 https://login.microsoftonline.com/[your-tenant-id] 。 可选。 |
mainWindow | 需要身份验证的 main BrowserWindow 的实例。 |
cachePlugin | 要用于持久存储令牌的缓存插件。 请参阅 Node 的 Microsoft 身份验证扩展。 可选。 |
base-url | 用于 Microsoft Graph 调用的 Microsoft Graph 终结点。 它可以是任何受支持的 国家/地区云部署。 默认值为 https://graph.microsoft.com 。 |
注意: 目前,提供程序不支持增量支持。 最佳做法是,请务必同意组件所需的所有范围。
创建应用/客户端 ID
在 Microsoft Entra ID 中添加新的应用程序注册以获取客户端 ID
若要在 Microsoft Entra ID 中创建应用程序,请添加新的应用程序注册,然后配置应用名称和重定向 URI。
若要在 Microsoft Entra ID 中创建应用,请执行以下操作:
- 转到Microsoft Entra 管理中心。
- 展开“标识”菜单>,展开“应用程序>”选择应用注册>选择“新建注册”按钮。
- 输入应用的名称;例如 。
My Electron-App
- 对于支持的帐户类型,请选择“任何组织目录中的帐户 (任何Microsoft Entra目录 - 多租户) 和个人 Microsoft 帐户 (,例如 Skype、Xbox) 。
- 在 “重定向 URI” 字段的下拉列表中,选择“ 公共客户端/本机 (移动 & 桌面) ”,然后在“URL”字段中输入
msal://redirect
。 - 通过选择“ 注册 ”按钮确认更改。
后续步骤
- 查看 构建电子应用的分步教程。
- 查看演示如何使用 Electron 提供程序 的示例 Electron 应用程序 。