Guia de início rápido: entre em usuários e chame a API do Microsoft Graph de um aplicativo Web Node.js usando o nó MSAL

Neste início rápido, você baixa e executa um exemplo de código que demonstra como um aplicativo Web Node.js pode entrar 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.

Consulte Como funciona o exemplo para obter 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

Registe-se e descarregue a sua aplicação de início rápido

Passo 1: Registar a aplicação

Gorjeta

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

  1. Entre no centro de administração do Microsoft Entra como pelo menos um administrador de aplicativos na nuvem.
  2. Se você tiver acesso a vários locatários, use o ícone 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é Registros de aplicativos de identidade>>e selecione Novo registro.
  4. Introduza um Nome para a sua aplicação. Os usuários do seu aplicativo podem ver esse nome e você pode alterá-lo mais tarde.
  5. Em Tipos de conta suportados, selecione Contas somente neste diretório organizacional.
  6. Defina o tipo de URI de redirecionamento como Web e o valor como http://localhost:3000/auth/redirect.
  7. Selecione Registar.
  8. Na página Visão geral do aplicativo, anote o valor da ID do aplicativo (cliente) para uso posterior.
  9. Em Gerir, 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. Observe o valor do segredo do cliente para uso posterior.

Passo 2: Transferir o projeto

Para executar o projeto com um servidor Web usando Node.js, baixe os arquivos principais do projeto.

Etapa 3: Configurar 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 Description 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/ (incluir a barra à frente)
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 de cliente da aplicação que registou 00001111-aaaa-2222-bbbb-3333cccc4444
Enter_the_Client_Secret_Here Segredo do cliente da aplicação que registou 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/ (incluir a barra à frente)
Enter_the_Express_Session_Secret_Here Uma sequência aleatória de caracteres usada para assinar o cookie de sessão Express 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 Node.js.

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

    cd App
    npm install
    npm start
    
  2. Aceder a http://localhost:3000/.

  3. Selecione Iniciar sessão para iniciar o processo de início de sessão.

    Na primeira vez que iniciar sessão, ser-lhe-á pedido que forneça o seu consentimento para permitir que a aplicação inicie sessão e aceda ao seu perfil. Depois de iniciar sessão com êxito, será redirecionado de volta para a página inicial da aplicação.

Mais informações

Como funciona a amostra

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 do Nó MSAL. 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 token de acesso.

Nó MSAL

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

npm install @azure/msal-node

Próximos passos

Saiba mais criando um aplicativo Web ASP.NET Core que conecta usuários na seguinte série de tutoriais com várias partes: