Partilhar via


Guia de início rápido: entre usuários e chame a API do Microsoft Graph a partir de um aplicativo Web Node.js

Este guia de início rápido usa um exemplo de aplicativo Web Node.js para mostrar como entrar usuários usando o fluxo de código de autorização e chamar a API do Microsoft Graph. O exemplo usa o nó MSAL para manipular a autenticação.

Pré-requisitos

Registar a aplicação e os identificadores de registo

Para concluir o registro, forneça um nome ao aplicativo e especifique os tipos de conta suportados. Uma vez registrado, o painel Visão geral do aplicativo exibe os identificadores necessários no código-fonte do aplicativo.

  1. Inicie sessão no centro de administração do Microsoft Entra.

  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 do aplicativo Aplicativos de identidade>>, selecione Novo registro.

  4. Insira um Nome para o aplicativo, como identity-client-web-app.

  5. Em Tipos de conta suportados, selecione Contas somente neste diretório organizacional. Para obter informações sobre diferentes tipos de conta, selecione a opção Ajude-me a escolher .

  6. Selecione Registar.

    Captura de ecrã que mostra como introduzir um nome e selecionar o tipo de conta no centro de administração do Microsoft Entra.

  7. O painel Visão geral do aplicativo é exibido quando o registro é concluído. Registre o ID do diretório (locatário) e o ID do aplicativo (cliente) a serem usados no código-fonte do aplicativo.

    Captura de tela que mostra os valores de identificador na página de visão geral no centro de administração do Microsoft Entra.

    Nota

    Os tipos de conta suportados podem ser alterados consultando Modificar as contas suportadas por um aplicativo.

Adicionar um URI de redirecionamento de plataforma e criar um segredo do cliente

Para especificar o tipo de aplicativo para o registro do aplicativo, siga estas etapas:

  1. Em Gerir, selecione Autenticação.
  2. Na página Configurações da plataforma, selecione Adicionar uma plataforma e, em seguida, selecione a opção Web.
  3. Para os URIs de redirecionamento, digite http://localhost:3000/auth/redirect.
  4. Em URL de logout do canal frontal, digite https://localhost:5001/signout-callback-oidc para sair.
  5. Selecione Configurar para salvar as alterações.
  6. Em Gerir, selecione Certificados e segredos Segredos do>cliente Novo segredo do>cliente. Escolha uma descrição e, em seguida, selecione Adicionar.
  7. Observe o valor do segredo do cliente para uso posterior. Esse valor é exibido apenas uma vez.

Clone ou baixe o aplicativo de exemplo

Para obter o aplicativo de exemplo, você pode cloná-lo do GitHub ou baixá-lo como um arquivo .zip .

  • Para clonar o exemplo, abra um prompt de comando e navegue até onde deseja criar o projeto e digite o seguinte comando:

    git clone https://github.com/Azure-Samples/ms-identity-node.git
    
  • Transfira o ficheiro .zip. Extraia-o para um caminho de arquivo onde o comprimento do nome é inferior a 260 caracteres.

Configurar o projeto

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

Execute o aplicativo e entre

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. Aceda 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óximo passo

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