Cenário: Aplicativo da área de trabalho que chama APIs Web

Saiba tudo o que você precisa para criar um aplicativo da área de trabalho que chama APIs Web.

Introdução

Se você ainda não tiver feito, crie seu primeiro aplicativo seguindo um início rápido:

Visão geral

Você escreve um aplicativo da área de trabalho e deseja conectar usuários ao seu aplicativo e chamar APIs Web, como Microsoft Graph, outras APIs da Microsoft ou sua própria API Web. Você tem várias opções:

  • Usar a aquisição de token interativo:

    • Se o seu aplicativo da área de trabalho dá suporte a controles gráficos, por exemplo, se é um aplicativo Windows.Form, um aplicativo WPF (Windows Presentation Foundation) ou um aplicativo nativo do macOS.
    • Ou, se é um aplicativo do .NET Core e você concorda em fazer a interação de autenticação com o Azure Active Directory (Azure AD) no navegador do sistema.
    • Ou, se for um aplicativo de Node.js Electron, que é executado em uma instância do Chromium.
  • Para aplicativos hospedados do Windows, também é possível para aplicativos em execução em computadores ingressados em um domínio do Windows ou ingressados no Azure Active Directory adquirir um token silenciosamente usando a autenticação integrada do Windows.

  • Por fim, e embora não seja recomendado, é possível usar o nome de usuário e a senha em aplicativos cliente públicos. Isso ainda é necessário em alguns cenários, tais como o DevOps. E usá-los impõe restrições em seus aplicativos. Por exemplo, não é possível conectar um usuário que precisa realizar autenticação multifator (acesso condicional). Além disso, seus aplicativos também não se beneficiam do logon único (SSO).

    Isso também vai contra os princípios da autenticação moderna e só é oferecido por ser herdado.

    Desktop application

  • Se você gravar uma ferramenta de linha de comando portátil, provavelmente um aplicativo .NET Core que é executado no Linux ou no Mac, e aceitar que a autenticação será delegada ao navegador do sistema, você poderá usar a autenticação interativa. O .NET Core não fornece um navegador da Web, portanto, a autenticação ocorre no navegador do sistema. Caso contrário, a melhor opção é usar o fluxo de código do dispositivo. Esse fluxo também é usado para aplicativos sem um navegador, como aplicativos baseados em IoT (Internet das Coisas).

    Browserless application

Especificações

Os aplicativos de área de trabalho têm poucas especificidades. Eles baseiam-se principalmente no uso ou não de autenticação interativa pelo seu aplicativo.

Se você é novo no gerenciamento de identidades e acesso (IAM) com o OAuth 2.0 e o OpenID Connect, ou até mesmo apenas no IAM na plataforma de identidade da Microsoft, o seguinte conjunto de artigos deve ter destaque na sua lista de leitura.

Embora não seja obrigatório ler antes de concluir seu primeiro início rápido ou tutorial, eles abrangem os tópicos integrantes da plataforma e a familiaridade com eles o ajudará no seu caminho à medida que você criar cenários mais complexos.

Próximas etapas

Vá para o próximo artigo neste cenário, Registro de aplicativo.