Scénario : Application de bureau qui appelle des API web

Découvrez tout ce que dont vous avez besoin pour générer une application de bureau qui appelle des API web.

Prise en main

Si ce n’est déjà fait, créez votre première application en effectuant un démarrage rapide :

Vue d’ensemble

Vous écrivez une application de bureau et voulez connecter des utilisateurs à votre application, ainsi qu’appeler des API web telles que Microsoft Graph, d’autres API Microsoft ou votre propre API web. Vous disposez de plusieurs options :

  • Vous pouvez utiliser l’acquisition de jetons interactive :

    • Si votre application de bureau prend en charge les contrôles graphiques, par exemple s’il s’agit d’une application Windows Form, d’une application WPF (Windows Presentation Foundation) ou d’une application native macOS.
    • Ou, s’il s’agit d’une application .NET et que vous acceptez que l’interaction d’authentification avec Microsoft Entra ID se produise dans le navigateur système.
    • Ou, s’il s’agit d’une application Node.js Electron, qui s’exécute sur une instance de Chromium.
  • Pour des applications hébergées sous Windows, il est également possible que des applications s’exécutant sur des ordinateurs reliés à un domaine Windows ou joints à Microsoft Entra acquièrent un jeton en silence en utilisant l’authentification Windows intégrée.

  • Enfin, et bien que ce ne soit pas recommandé, vous pouvez utiliser un nom d’utilisateur et un mot de passe dans des applications clientes publiques. Ce flux est toujours nécessaire dans certains scénarios, par exemple, de DevOps. Son utilisation impose des contraintes sur votre application. Par exemple, il ne peut pas connecter un utilisateur qui a besoin d’effectuer une authentification multifacteur (accès conditionnel). De plus, votre application ne bénéficiera pas de l’authentification unique (SSO).

    Il va également à l’encontre des principes de l’authentification moderne et n’est fourni que pour des raisons d’héritage.

    Desktop application

  • Si vous écrivez un outil en ligne de commande portable, probablement une application .NET fonctionnant sous Linux ou Mac, et si vous acceptez que l’authentification soit déléguée au navigateur système, vous pouvez utiliser une authentification interactive. .NET ne fournissant pas de navigateur web, l’authentification se produit dans le navigateur système. Autrement, la meilleure option dans ce cas consiste à utiliser un flux de code d’appareil. Ce flux est également utilisé pour les applications sans navigateur, telles que les applications internet des objets (IoT).

    Browserless application

Spécificités

Les applications de bureau présentent peu de spécificités. Elles dépendent principalement du fait que votre application utilise ou non une authentification interactive.

Si vous débutez dans la gestion des identités et des accès (IAM) avec OAuth 2.0 et OpenID Connect, voire simplement avec IAM sur la plateforme d’identité Microsoft, les articles suivants doivent figurer en bonne position dans votre liste de lectures.

Bien que ces lectures ne soient pas requises avant d’effectuer votre premier démarrage rapide ou de suivre votre premier tutoriel, elles couvrent des aspects fondamentaux de la plate-forme, et une bonne connaissance de ceux-ci vous aidera à mesure que vous créerez des scénarios plus complexes.

Étapes suivantes

Passez à l’article suivant de ce scénario, Inscription d’application.