Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:
Locatários da força de trabalho
Inquilinos externos (saiba mais)
Neste tutorial, você aprenderá a criar um aplicativo Web Node/Express.js que conecta usuários em um aplicativo voltado para o cliente em um locatário externo ou funcionários em um locatário da força de trabalho. O tutorial também demonstra como adquirir um token de acesso para chamar a API do Microsoft Graph.
Este tutorial é a parte 1 de uma série de 3 partes.
Neste tutorial, irá aprender;
- Configurar um projeto Node.js
- Instalar dependências
- Adicionar vistas da aplicação e componentes UI
Pré-requisitos
- Registre um novo aplicativo no centro de administração do Microsoft Entra, configurado para Contas somente neste diretório organizacional. Consulte Registar uma candidatura para obter mais detalhes. Registre os seguintes valores na página Visão geral do aplicativo para uso posterior:
- ID da aplicação (cliente)
- ID do diretório (inquilino)
- Adicione os seguintes URIs de redirecionamento usando a configuração da plataforma Web . Consulte Como adicionar um URI de redirecionamento em seu aplicativo para obter mais detalhes.
-
Redirecionar URI:
http://localhost:3000/auth/redirect -
URL de término de sessão do canal frontal:
https://localhost:5001/signout-callback-oidc
-
Redirecionar URI:
- Adicione um segredo de cliente ao registro do seu aplicativo. Não use segredos de cliente em aplicativos de produção. Em vez disso, use certificados ou credenciais federadas. Para obter mais informações, consulte Adicionar credenciais ao seu aplicativo.
- Node.js.
- Visual Studio Code ou outro editor de código.
Criar o projeto Node.js
Em um local à tua escolha no teu computador, cria uma pasta para hospedar a tua aplicação em Node.js, como ciam-sign-in-node-express-web-app.
No terminal, altere o diretório para a pasta do aplicativo Web Node, como
cd ciam-sign-in-node-express-web-appe, em seguida, execute o seguinte comando para criar um novo projeto Node.js:npm init -yO comando
init -ycria um arquivo de package.json padrão para seu projeto Node.js.Crie pastas e arquivos adicionais para obter a seguinte estrutura de projeto:
ciam-sign-in-node-express-web-app/ ├── server.js └── app.js └── authConfig.js └── package.json └── .env └── auth/ └── AuthProvider.js └── controller/ └── authController.js └── routes/ └── auth.js └── index.js └── users.js └── views/ └── layouts.hbs └── error.hbs └── id.hbs └── index.hbs └── public/stylesheets/ └── style.css
Instalar dependências de aplicativos
Para instalar os pacotes npm necessários de identidade e relacionados a Node.js, execute o seguinte comando no seu terminal.
npm install express dotenv hbs express-session axios cookie-parser http-errors morgan @azure/msal-node
Criar componentes da interface do usuário do aplicativo
No editor de códigos, abra arquivo de views/index.hbs e adicione o seguinte código:
<h1>{{title}}</h1> {{#if isAuthenticated }} <p>Hi {{username}}!</p> <a href="/users/id">View ID token claims</a> <br> <a href="/auth/signout">Sign out</a> {{else}} <p>Welcome to {{title}}</p> <a href="/auth/signin">Sign in</a> {{/if}}Nesta visualização, se o utilizador for autenticado, mostramos o seu nome de utilizador e links para visitar os pontos de extremidade
/auth/signoute/users/id; caso contrário, o utilizador precisará visitar o ponto de extremidade/auth/signinpara iniciar sessão. Definimos as rotas expressas para esses pontos de extremidade mais adiante neste artigo.No editor de código, abra o ficheiro views/id.hbs e adicione o seguinte código:
<h1>Azure AD for customers</h1> <h3>ID Token</h3> <table> <tbody> {{#each idTokenClaims}} <tr> <td>{{@key}}</td> <td>{{this}}</td> </tr> {{/each}} </tbody> </table> <a href="/">Go back</a>Usamos esta vista para mostrar as declarações do token de ID que o Microsoft Entra External ID retorna a esta aplicação depois que um utilizador inicia sessão com sucesso.
No editor de código, abra o ficheiro views/error.hbs e adicione o seguinte código:
<h1>{{message}}</h1> <h2>{{error.status}}</h2> <pre>{{error.stack}}</pre>Utilizamos esta vista para apresentar quaisquer erros que ocorram quando a aplicação é executada.
No editor de código, abra o ficheiro views/layout.hbs e adicione o seguinte código:
<!DOCTYPE html> <html> <head> <title>{{title}}</title> <link rel='stylesheet' href='/stylesheets/style.css' /> </head> <body> {{{content}}} </body> </html>O arquivo
layout.hbsestá no arquivo de layout. Ele contém o código HTML que precisamos em toda a visualização do aplicativo.No editor de código, abra o arquivo public/stylesheets/style.csse adicione o seguinte código:
body { padding: 50px; font: 14px "Lucida Grande", Helvetica, Arial, sans-serif; } a { color: #00B7FF; }