Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:
Locatários da força de trabalho
Locatários externos (saiba mais)
Neste início rápido, você irá usar um SPA (aplicativo de página única) de exemplo para mostrar como conectar usuários usando o fluxo de código de autorização com a PKCE (Chave de Prova para Troca de Código) e chamar a API do Microsoft Graph. O exemplo usa a Biblioteca de Autenticação da Microsoft para lidar com a autenticação.
Pré-requisitos
- Uma conta do Azure com uma assinatura ativa. Se você ainda não tiver uma, Crie uma conta gratuitamente.
- Essa conta do Azure deve ter permissões para gerenciar aplicativos. Qualquer uma das seguintes funções do Microsoft Entra inclui as permissões necessárias:
- Administrador de aplicativos
- Desenvolvedor de aplicativos
- Um componente da força de trabalho. Você pode usar o Diretório Padrão ou configurar um novo locatário.
- Visual Studio Code ou qualquer outro editor de código.
- Registre um novo aplicativo no Centro de administração do Microsoft Entra, configurado apenas para Contas neste diretório organizacional. Consulte Registrar um aplicativo para obter mais detalhes. Registre os seguintes valores na página visão geral do aplicativo para uso posterior:
- ID do aplicativo (cliente)
- ID do diretório (locatário)
- Adicione as SEGUINTEs URIs de redirecionamento usando a configuração da plataforma de aplicativo de página única . Consulte Como adicionar um URI de redirecionamento em seu aplicativo para obter mais detalhes.
-
URI de redirecionamento:
http://localhost:3000/
-
URI de redirecionamento:
- Node.js
Clonar ou baixar 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 insira o seguinte comando:
git clone https://github.com/Azure-Samples/ms-identity-docs-code-javascript.gitBaixe o arquivo .zip. Extraia-o para um caminho de arquivo em que o comprimento do nome tenha menos de 260 caracteres.
Configurar o projeto
No seu IDE, abra a pasta do projeto ms-identity-docs-code-javascript, que contém o exemplo.
Abra vanillajs-spa/App/public/authConfig.js e atualize os seguintes valores com as informações registradas no centro de administração.
/** * Configuration object to be passed to MSAL instance on creation. * For a full list of MSAL.js configuration parameters, visit: * https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-browser/docs/configuration.md */ const msalConfig = { auth: { clientId: "Enter_the_Application_Id_Here", // WORKFORCE TENANT authority: "https://login.microsoftonline.com/Enter_the_Tenant_Info_Here", // Replace the placeholder with your tenant info // EXTERNAL TENANT // authority: "https://Enter_the_Tenant_Subdomain_Here.ciamlogin.com/", // Replace the placeholder with your tenant subdomain redirectUri: '/', // You must register this URI on App Registration. Defaults to window.location.href e.g. http://localhost:3000/ navigateToLoginRequestUrl: true, // If "true", will navigate back to the original request location before processing the auth code response. }, cache: { cacheLocation: 'sessionStorage', // Configures cache location. "sessionStorage" is more secure, but "localStorage" gives you SSO. storeAuthStateInCookie: false, // set this to true if you have to support IE }, system: { loggerOptions: { loggerCallback: (level, message, containsPii) => { if (containsPii) { return; } switch (level) { case msal.LogLevel.Error: console.error(message); return; case msal.LogLevel.Info: console.info(message); return; case msal.LogLevel.Verbose: console.debug(message); return; case msal.LogLevel.Warning: console.warn(message); return; } }, }, }, }; /** * Scopes you add here will be prompted for user consent during sign-in. * By default, MSAL.js will add OIDC scopes (openid, profile, email) to any login request. * For more information about OIDC scopes, visit: * https://learn.microsoft.com/en-us/entra/identity-platform/permissions-consent-overview#openid-connect-scopes */ const loginRequest = { scopes: ["User.Read"], }; /** * An optional silentRequest object can be used to achieve silent SSO * between applications by providing a "login_hint" property. */ // const silentRequest = { // scopes: ["openid", "profile"], // loginHint: "example@domain.net" // }; // exporting config object for jest if (typeof exports !== 'undefined') { module.exports = { msalConfig: msalConfig, loginRequest: loginRequest, }; }-
clientId- O identificador do aplicativo, também conhecido como o cliente. Substitua o texto entre aspas pelo valor da ID do Aplicativo (cliente) que foi registrado anteriormente. -
authority- A autoridade é uma URL que indica um diretório do qual a MSAL pode solicitar tokens. Substitua Enter_the_Tenant_Info_Here pelo valor da ID do Diretório (locatário) registrado anteriormente. -
redirectUri– O URI de redirecionamento do aplicativo. Se necessário, substitua o texto entre aspas pelo URI de redirecionamento que foi registrado anteriormente.
-
Executar o aplicativo, entrar e sair
Execute o projeto com um servidor Web usando o Node.js:
Para iniciar o servidor, execute os seguintes comandos de dentro do diretório do projeto:
cd vanillajs-spa/App npm install npm startCopie a URL de
httpsque aparece no terminal, por exemplo,https://localhost:3000e cole-a em um navegador. É recomendável usar uma sessão de navegador privada ou anônima.Siga as etapas e insira os detalhes necessários para entrar com sua conta da Microsoft. Você receberá um endereço de email para que uma senha única possa ser enviada a você. Insira o código quando solicitado.
O aplicativo solicitará permissão para manter o acesso aos dados aos quais você lhe deu acesso e para entrar e ler seu perfil. Selecione Aceitar. A captura de tela a seguir é exibida, indicando que você entrou no aplicativo e acessou os detalhes do perfil da API do Microsoft Graph.
Pré-requisitos
- Uma conta do Azure com uma assinatura ativa. Se você ainda não tiver uma, Crie uma conta gratuitamente.
- Essa conta do Azure deve ter permissões para gerenciar aplicativos. Qualquer uma das seguintes funções do Microsoft Entra inclui as permissões necessárias:
- Administrador de aplicativos
- Desenvolvedor de aplicativos
- Um inquilino externo. Para criar um, escolha entre os seguintes métodos:
- Use a Extensão de ID externa do Microsoft Entra para configurar um locatário externo diretamente no Visual Studio Code. (Recomendado)
- Crie um novo inquilino externo no Centro de administração Microsoft Entra.
- Um fluxo de usuário. Para obter mais informações, consulte Criar fluxos de usuário de inscrição de autoatendimento para os aplicativos nos locatários externos. Esse fluxo de usuário pode ser usado para vários aplicativos.
- Visual Studio Code ou qualquer outro editor de código.
- Registre um novo aplicativo no Centro de administração do Microsoft Entra, configurado apenas para Contas neste diretório organizacional. Consulte Registrar um aplicativo para obter mais detalhes. Registre os seguintes valores na página visão geral do aplicativo para uso posterior:
- ID do aplicativo (cliente)
- ID do diretório (locatário)
- Adicione as SEGUINTEs URIs de redirecionamento usando a configuração da plataforma de aplicativo de página única . Consulte Como adicionar um URI de redirecionamento em seu aplicativo para obter mais detalhes.
-
URI de redirecionamento:
http://localhost:3000/
-
URI de redirecionamento:
- Adicionar seu aplicativo ao fluxo de usuário
- Node.js
Clonar ou baixar o SPA 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 insira o seguinte comando:
git clone https://github.com/Azure-Samples/ms-identity-ciam-javascript-tutorial.gitBaixe o exemplo. Extraia-o para um caminho de arquivo em que o comprimento do nome tenha menos de 260 caracteres.
Configurar o SPA de exemplo
Abra
App/public/authConfig.jse substitua o seguinte pelos valores obtidos do Centro de administração do Microsoft Entra:-
Enter_the_Application_Id_Heree substitua pela ID de Aplicativo (Cliente) do aplicativo registrado anteriormente. -
Enter_the_Tenant_Subdomain_Heree substitua-o pelo subdomínio do Diretório (locatário). Por exemplo, se o domínio primário do locatário forcontoso.onmicrosoft.com, usecontoso. Se você não tiver o nome do locatário, saiba como ler os detalhes do locatário.
-
Salve o arquivo.
Execute seu projeto e faça login
Para iniciar o servidor, execute os seguintes comandos de dentro do diretório do projeto:
cd 1-Authentication\0-sign-in-vanillajs\App npm install npm startCopie a URL de
httpsque aparece no terminal, por exemplo,https://localhost:3000e cole-a em um navegador. É recomendável usar uma sessão de navegador privada ou anônima.Entre com uma conta registrada no locatário.
A captura de tela a seguir é exibida, indicando que você entrou no aplicativo e acessou os detalhes do perfil da API do Microsoft Graph.
Sair do aplicativo
- Localize o botão Sair na página e selecione-o.
- Você será solicitado a escolher uma conta da qual deseja sair. Selecione a conta usada para entrar.
Uma mensagem é exibida indicando que você se desconscreveu. Agora você pode fechar a janela do navegador.
Conteúdo relacionado
- Guia de início rápido: Proteger uma API Web ASP.NET Core com a plataforma de identidade da Microsoft.
- Saiba mais criando um REACT SPA que conecta usuários na série de tutoriais de várias partes a seguir.
- Habilitar a redefinição de senha.
- Personalize a identidade visual padrão.
- Configurar entrada com o Google.