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
- Node.js
- Visual Studio Code ou outro editor de código
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:
- Entre no Centro de administração do Microsoft Entra como pelo menos Administrador de Aplicativo de nuvem.
- 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.
- Navegue até Identidade>Aplicativos>Registros de aplicativos e selecione Novo registro.
- 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. - Selecione Registrar para criar o aplicativo.
- Em Gerenciar, selecione Autenticação.
- Selecione Adicionar uma plataforma>Aplicativos móveis e de área de trabalho.
- Na seção URIs de Redirecionamento, insira
http://localhost
. - Selecione Configurar.
Etapa 2: Baixar o projeto de exemplo do Electron
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
Você precisará instalar as dependências deste exemplo uma só vez:
cd ms-identity-javascript-nodejs-desktop-main npm install
Em seguida, execute o aplicativo via prompt de comando ou console:
npm start
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: