Início Rápido: Conecte usuários e chame a API do Microsoft Graph de um aplicativo web Node.js usando o Nó da MSAL

Neste guia de início rápido, você baixará e executará um exemplo de código que demonstra como um aplicativo Web Node.js pode conectar usuários usando o fluxo de código de autorização. O exemplo de código também demonstra como obter um token de acesso para chamar a API do Microsoft Graph.

Confira Como o exemplo funciona para ver uma ilustração.

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

Pré-requisitos

Registrar e baixar o aplicativo de início rápido

Etapa 1: Registre seu aplicativo

Dica

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

  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. Os usuários do seu aplicativo podem ver esse nome e você pode alterá-lo mais tarde.
  5. Em Tipos de contas com suporte, selecione Contas somente neste diretório organizacional.
  6. Defina o tipo de URI de Redirecionamento como Web e valor como http://localhost:3000/auth/redirect.
  7. Selecione Registrar.
  8. Na página Visão geral do aplicativo, anote o valor de ID do aplicativo (cliente) para uso posterior.
  9. Em Gerenciar, selecione Certificados e segredos>Segredos do cliente>Novo segredo do cliente. Deixe a descrição em branco e a expiração padrão e selecione Adicionar.
  10. Anote o valor do Segredo do cliente para uso posterior.

Etapa 2: Baixe o projeto

Para executar o projeto com um servidor Web usando Node.js, baixe os arquivos de projeto de núcleo.

Etapa 3: Configure seu aplicativo Node

Extraia o projeto, abra a pasta ms-identity-node-main e abra o arquivo .env na pasta App. Substitua os valores acima da seguinte forma:

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_Info_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_Client_Secret_Here Segredo do cliente do aplicativo que você registrou A1b-C2d_E3f.H4i,J5k?L6m!N7o-P8q_R9s.T0u
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)
Enter_the_Express_Session_Secret_Here Uma cadeia aleatória de caracteres usada para assinar o Cookie de sessão Expresso A1b-C2d_E3f.H4...

Seu arquivo deve ser semelhante ao abaixo:

CLOUD_INSTANCE=https://login.microsoftonline.com/
TENANT_ID=aaaabbbb-0000-cccc-1111-dddd2222eeee
CLIENT_ID=00001111-aaaa-2222-bbbb-3333cccc4444
CLIENT_SECRET=A1b-C2d_E3f.H4...

REDIRECT_URI=http://localhost:3000/auth/redirect
POST_LOGOUT_REDIRECT_URI=http://localhost:3000

GRAPH_API_ENDPOINT=https://graph.microsoft.com/

EXPRESS_SESSION_SECRET=6DP6v09eLiW7f1E65B8k

Etapa 4: Executar o projeto

Execute o projeto usando o Node.js.

  1. Para iniciar o servidor, execute os seguintes comandos no diretório do projeto:

    cd App
    npm install
    npm start
    
  2. Ir para http://localhost:3000/.

  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 a página inicial do aplicativo.

Mais informações

Como o exemplo funciona

O exemplo hospeda um servidor Web no localhost, porta 3000. Quando um navegador da web acessa esse endereço, o aplicativo renderiza a página inicial. Depois que o usuário seleciona Entrar, o aplicativo redireciona o navegador para a tela de entrada do Microsoft Entra, por meio da URL gerada pela biblioteca MSAL Node. Após o consentimento do usuário, o navegador redireciona o usuário de volta para a página inicial do aplicativo, juntamente com um ID e um token de acesso.

Nó MSAL

A biblioteca de nó MSAL conecta usuários e solicita os tokens que são usados para acessar uma API protegida pela plataforma de identidade da Microsoft. Você pode baixar a versão mais recente usando o npm (Gerenciador de Pacotes do Node.js):

npm install @azure/msal-node

Próximas etapas

Saiba mais sobre a compilação de um aplicativo Web ASP.NET Core que conecta usuários na seguinte série de tutoriais de várias partes: