Guia de início rápido: entre usuários e chame o Microsoft Graph em um aplicativo da área de trabalho do Windows
Artigo
Neste início rápido, você baixa e executa um exemplo de código que demonstra como um aplicativo do Windows Presentation Foundation (WPF) pode entrar em usuários e obter um token de acesso para chamar a API do Microsoft Graph. O aplicativo de área de trabalho que você cria usa o fluxo de código de autorização emparelhado com o padrão PKCE (Proof Key for Code Exchange).
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.
Navegue até Registros do aplicativo Aplicativos de identidade>>, selecione Novo registro.
Introduza um Nome para a sua aplicação, por exemplo Win-App-calling-MsGraph. Os usuários do seu aplicativo podem ver esse nome e você pode alterá-lo mais tarde.
Na secção Tipos de conta suportados, selecione Contas em qualquer diretório organizacional e contas Microsoft pessoais (por exemplo, Skype, Xbox, Outlook.com).
Selecione Registar para criar a aplicação.
Em Gerir, selecione Autenticação.
Selecione Adicionar uma plataforma>Aplicações móveis e de ambiente de trabalho.
Na seção URIs de redirecionamento, selecione https://login.microsoftonline.com/common/oauth2/nativeclient e, em URIs de redirecionamento personalizados, adicione ms-appx-web://microsoft.aad.brokerplugin/{client_id} onde {client_id} está a ID do aplicativo (cliente) do seu aplicativo (o mesmo GUID que aparece na msal{client_id}://auth caixa de seleção).
Para evitar erros causados por limitações de comprimento de caminho no Windows, recomendamos extrair o arquivo ou clonar o repositório em um diretório perto da raiz da unidade.
Etapa 3: Configurar o projeto
Extraia o ficheiro zip para uma pasta local próxima da raiz do disco, por exemplo, C:\Azure-Samples.
Abra o projeto no Visual Studio.
Edite App.Xaml.cs e substitua os valores dos campos ClientId e Tenant com o código seguinte:
Enter_the_Application_Id_here - é o ID da Aplicação (cliente) que registou.
Para encontrar o valor da ID do aplicativo (cliente), vá para a página Visão geral do aplicativo no centro de administração do Microsoft Entra.
Enter_the_Tenant_Info_Here - está definido para uma das seguintes opções:
Se a sua aplicação suportar Contas neste diretório organizacional, substitua este valor pelo Id do Inquilino ou pelo Nome do inquilino (por exemplo, contoso.microsoft.com)
Se a sua aplicação suportar Contas em qualquer diretório organizacional, substitua este valor por organizations
Se o seu aplicativo oferecer suporte a Contas em qualquer diretório organizacional e contas pessoais da Microsoft, substitua esse valor por common.
Para encontrar os valores de ID de diretório (locatário) e Tipos de conta suportados, vá para a página Visão geral do aplicativo no centro de administração do Microsoft Entra.
Etapa 4: Executar o aplicativo
Para criar e executar o aplicativo de exemplo no Visual Studio, selecione o menu Depurar Iniciar>depuração ou pressione a tecla F5. A MainWindow do seu aplicativo é exibida.
Quando a janela principal do aplicativo for exibida, selecione o botão Chamar API do Microsoft Graph. Ser-lhe-á pedido para iniciar sessão utilizando as credenciais da sua conta Microsoft Entra (conta escolar ou profissional) ou conta Microsoft (live.com, outlook.com).
Se estiver a executar a aplicação pela primeira vez, ser-lhe-á pedido que forneça consentimento para permitir que a aplicação aceda ao seu perfil de utilizador e inicie sessão. Depois de consentir com as permissões solicitadas, o aplicativo exibe que você fez login com êxito. Você deve ver algumas informações básicas de token e dados do usuário obtidos da chamada para a API do Microsoft Graph.
Mais informações
Como funciona a amostra
MSAL.NET
MSAL (Microsoft.Identity.Client) é a biblioteca usada para entrar usuários e solicitar tokens usados para acessar uma API protegida pela plataforma de identidade da Microsoft. Pode instalar a MSAL ao executar o comando seguinte na Consola do Gestor de Pacotes do Visual Studio:
É a ID do aplicativo (cliente) para o aplicativo registrado no centro de administração do Microsoft Entra. Você pode encontrar esse valor na página Visão geral do aplicativo no centro de administração do Microsoft Entra.
Solicitar tokens
A MSAL tem dois métodos para comprar tokens: AcquireTokenInteractive e AcquireTokenSilent.
Obter um token de utilizador interativamente
Algumas situações exigem forçar os usuários a interagir com a plataforma de identidade da Microsoft por meio de uma janela pop-up para validar suas credenciais ou dar consentimento. Alguns exemplos incluem:
A primeira vez que os utilizadores iniciam sessão na aplicação
Quando os utilizadores possam ter de reintroduzir as respetivas credenciais por a palavra-passe ter expirado
Quando a aplicação está a pedir acesso a um recurso para o qual o utilizador tem de dar consentimento
Contém os escopos que estão sendo solicitados, como { "user.read" } para o Microsoft Graph ou { "api://<Application ID>/access_as_user" } para APIs da Web personalizadas.
Obter um token de utilizador automaticamente
Não vai querer exigir que o utilizador valide as suas credenciais sempre que tiver de aceder a um recurso. Na maioria das vezes, vai querer que as aquisições e renovação de tokens sejam feitas sem qualquer interação do utilizador. Pode utilizar o método AcquireTokenSilent para obter tokens para aceder a recursos protegidos após o método AcquireTokenInteractive inicial:
var accounts = await app.GetAccountsAsync();
var firstAccount = accounts.FirstOrDefault();
authResult = await app.AcquireTokenSilent(scopes, firstAccount)
.ExecuteAsync();
Em que:
Description
scopes
Contém os escopos que estão sendo solicitados, como { "user.read" } para o Microsoft Graph ou { "api://<Application ID>/access_as_user" } para APIs da Web personalizadas.
firstAccount
Especifica o primeiro utilizador na cache (a MSAL suporta vários utilizadores numa única aplicação).
Ajuda e suporte
Se precisar de ajuda, quiser comunicar um problema ou quiser saber mais sobre as suas opções de suporte, consulte Ajuda e suporte para programadores.
Próximos passos
Experimente o tutorial do ambiente de trabalho do Windows para obter um guia passo a passo completo sobre a criação de aplicações e novas funcionalidades, incluindo uma explicação completa deste início rápido.
Este caminho de aprendizagem inclui exercícios práticos que mostrarão como executar tarefas comuns, como mostrar emails de um usuário, acessar eventos do calendário, e baixar e carregar arquivos em um aplicativo ASP.NET Core usando as APIs do Microsoft Graph.
Demonstrar os recursos do Microsoft Entra ID para modernizar as soluções de identidade, implementar soluções híbridas e implementar a governança de identidade.
Neste tutorial, você cria um aplicativo WPF que usa a plataforma de identidade da Microsoft para entrar em usuários e obter um token de acesso para chamar a API do Microsoft Graph em seu nome.
Neste início rápido, saiba como um aplicativo da Plataforma Universal do Windows (UWP) pode obter um token de acesso e chamar uma API protegida pela plataforma de identidade da Microsoft.
Neste guia de início rápido, você aprenderá como um aplicativo de desktop Node.js Electron pode entrar em usuários e obter um token de acesso para chamar uma API protegida por um ponto de extremidade da plataforma de identidade da Microsoft
Saiba como iniciar sessão de utilizadores e aceder a APIs Web em aplicações de ambiente de trabalho com os nossos guias de início rápido, tutoriais e guias de instruções detalhados.
Neste tutorial, você cria um aplicativo de desktop Electron que pode entrar em usuários e usar o fluxo de código de autenticação para obter um token de acesso da plataforma de identidade da Microsoft e chamar a API do Microsoft Graph.
Neste início rápido, saiba como um aplicativo do Windows Presentation Foundation (WPF) pode obter um token de acesso e chamar uma API protegida pela plataforma de identidade da Microsoft.