快速入门:在示例桌面应用中登录用户

在本快速入门中,你将使用示例应用程序了解如何向桌面应用程序添加身份验证。 示例应用程序允许用户登录和注销,并使用Microsoft身份验证库(MSAL)来处理身份验证。

员工租户配置适用于员工、内部应用和其他组织资源。

先决条件

  • 拥有有效订阅的 Azure 帐户。 如果还没有帐户,请创建一个帐户
  • Azure 帐户必须拥有管理应用程序的权限。 以下任何Microsoft Entra 角色都包含所需的权限:
    • 应用程序管理员
    • 应用程序开发人员
  • 工作人员租户。 可以使用默认目录或 设置新租户
  • Microsoft Entra 管理中心注册一个新应用,并配置为仅适用于此组织目录中的帐户。 有关更多详细信息 ,请参阅注册应用程序 。 在应用程序 概述 页中记录以下值供以后使用:
    • 应用程序(客户端)ID
    • 目录(租户)ID

下载示例项目

注释

本教程提供的 Electron 示例专门用于使用 MSAL 节点。 Electron 应用程序中不支持 MSAL 浏览器。 确保完成以下步骤以正确设置项目。

  • 若要克隆示例,请打开命令提示符并导航到要创建项目的位置,然后输入以下命令:

    git clone https://github.com/Azure-Samples/ms-identity-javascript-nodejs-desktop.git
    
  • 下载 .zip 文件。 将其解压缩到名称长度少于 260 个字符的文件路径。

配置项目

在代码编辑器中,打开 ms-identity-javascript-nodejs-desktop-main/App/authConfig.js 文件。 请按以下步骤替换数值:

变量 DESCRIPTION 示例
Enter_the_Cloud_Instance_Id_Here 在其中注册应用程序的 Azure 云实例 https://login.partner.microsoftonline.cn/(包括尾部正斜杠)
Enter_the_Tenant_Info_Here 租户 ID 或主要域名 contoso.microsoft.comaaaabbbb-0000-cccc-1111-dddd2222eeee
Enter_the_Application_Id_Here 你已注册的应用程序的客户端 ID 00001111-aaaa-2222-bbbb-3333cccc4444
Enter_the_Graph_Endpoint_Here 你的应用将调用的 Microsoft Graph API 云实例 https://microsoftgraph.chinacloudapi.cn/(包括尾部正斜杠)

你的文件应与以下内容类似:

const AAD_ENDPOINT_HOST = "https://login.partner.microsoftonline.cn/"; // 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://microsoftgraph.chinacloudapi.cn/"; // include the trailing slash

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

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

运行应用程序

  1. 需要安装一次此示例的依赖项:

    cd ms-identity-javascript-nodejs-desktop-main
    npm install
    
  2. 然后,通过命令提示符或控制台运行应用程序:

    npm start
    
  3. 选择“登录”以启动登录过程。

    首次登录时,系统会提示你允许应用程序将你登录并访问你的个人资料。 成功登录后,你将被重定向回应用程序。

后续步骤

若要详细了解如何通过 MSAL Node 进行 Electron 桌面应用开发,请参阅教程: