Início Rápido: Conectar usuários e chamar o Microsoft Graph de um aplicativo da área de trabalho Node.js

Neste guia de início rápido, você baixará e executará um exemplo de código que demonstra como um aplicativo da área de trabalho Electron pode conectar usuários e adquirir um token de acesso para chamar a API do Microsoft Graph.

Este guia de início rápido usa a Biblioteca de Autenticação da Microsoft para Node.js (MSAL Node) com o fluxo de código de autorização com PKCE.

Pré-requisitos

Registrar e baixar o aplicativo de exemplo

Siga as etapas abaixo para começar.

Etapa 1: Registrar o aplicativo

Dica

As etapas neste artigo podem variar ligeiramente com base no portal do qual você começa.

Para registrar seu aplicativo e adicionar as informações de registro do aplicativo à solução manualmente, siga estas etapas:

  1. Entre no Centro de administração do Microsoft Entra como pelo menos Administrador de Aplicativo de nuvem.
  2. Se você tiver acesso a vários locatários, use o ícone de Configurações no menu superior para alternar para o locatário no qual deseja registrar o aplicativo no menu Diretórios + assinaturas.
  3. Navegue até Identidade>Aplicativos>Registros de aplicativos e selecione Novo registro.
  4. Insira um Nome para seu aplicativo, por exemplo, msal-node-desktop. Os usuários do seu aplicativo podem ver esse nome e você pode alterá-lo mais tarde.
  5. Selecione Registrar para criar o aplicativo.
  6. Em Gerenciar, selecione Autenticação.
  7. Selecione Adicionar uma plataforma>Aplicativos móveis e de área de trabalho.
  8. Na seção URIs de Redirecionamento, insira http://localhost.
  9. Selecione Configurar.

Etapa 2: Baixar o projeto de exemplo do Electron

Baixe o exemplo de código

Etapa 3: Configurar o projeto de exemplo do Electron

* Extraia o projeto, abra a pasta ms-identity-JavaScript-nodejs-desktop-main e, em seguida, abra o arquivo .authConfig.js. Substitua o valor da seguinte maneira:

Variável Descrição Exemplo(s)
Enter_the_Cloud_Instance_Id_Here A instância de nuvem do Azure na qual seu aplicativo está registrado https://login.microsoftonline.com/ (inclua a barra de avanço à direita)
Enter_the_Tenant_Id_Here ID do locatário ou domínio primário contoso.microsoft.com ou aaaabbbb-0000-cccc-1111-dddd2222eeee
Enter_the_Application_Id_Here ID do cliente do aplicativo que você registrou 00001111-aaaa-2222-bbbb-3333cccc4444
Enter_the_Redirect_Uri_Here Uri de redirecionamento do aplicativo no qual você registrou msal00001111-aaaa-2222-bbbb-3333cccc4444://auth
Enter_the_Graph_Endpoint_Here A instância de nuvem da API do Microsoft Graph que seu aplicativo chamará https://graph.microsoft.com/ (inclua a barra de avanço à direita)

Seu arquivo deve ser semelhante ao abaixo:

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,
 };

Etapa 4: Executar o aplicativo

  1. Você precisará instalar as dependências deste exemplo uma só vez:

    cd ms-identity-javascript-nodejs-desktop-main
    npm install
    
  2. Em seguida, execute o aplicativo via prompt de comando ou console:

    npm start
    
  3. Selecione Entrar para iniciar o processo de entrada.

    Na primeira vez que você entrar, você será solicitado a fornecer seu consentimento para permitir que o aplicativo faça login e acesse seu perfil. Depois de entrar com êxito, você será redirecionado de volta para o aplicativo.

Mais informações

Como o exemplo funciona

Quando um usuário seleciona o botão Entrar pela primeira vez, o método GET acquireTokenInteractive do nó MSAL é chamado. Esse método redireciona o usuário para entrar com o ponto de extremidade da plataforma de identidade da Microsoft, obtém um código de autorização e, em seguida, o troca por um token de acesso.

Nó MSAL

MSAL Node é a biblioteca usada para conectar usuários e solicitar tokens usados para acessar uma API protegida pela plataforma de identidade da Microsoft. Para obter mais informações sobre como usar o MSAL Node com aplicativos da área de trabalho, confira este artigo.

Instale o MSAL Node executando o comando npm a seguir.

npm install @azure/msal-node --save

Próximas etapas

Para saber mais sobre o desenvolvimento de aplicativo da área de trabalho Electron com o MSAL Node, confira o tutorial: