Partager via


Vue d’ensemble de l’authentification

Les charges de travail Fabric s’appuient sur l’intégration à Microsoft Entra ID pour l’authentification et l’autorisation.

Toutes les interactions entre les charges de travail et d’autres composants Fabric ou Azure doivent être accompagnées d’une prise en charge d’authentification appropriée pour les demandes reçues ou envoyées. Les jetons envoyés doivent être générés correctement, et les jetons reçus doivent également être validés correctement.

Il est recommandé de vous familiariser avec les plateforme Microsoft Identity avant de commencer à utiliser des charges de travail Fabric. Il est également recommandé de passer en meilleures pratiques et recommandations de la plateforme d’identités Microsoft.

Flux

  • De la charge de travail front-end à la charge de travail back-end

    Un exemple d’une telle communication est n’importe quelle API de plan de données. Cette communication s’effectue avec un jeton Objet (jeton délégué).

    Pour plus d’informations sur l’acquisition d’un jeton dans la charge de travail FE, lisez l’API d’authentification. De plus, veillez à passer à la validation des jetons dans l’aperçu de l’authentification et de l’autorisation back-end.

  • Du back-end Fabric au back-end de la charge de travail

    Un exemple de telle communication est Créer un élément de charge de travail. Cette communication s’effectue au moyen d’un jeton SubjectAndApp, qui est un jeton spécial composé d’une combinaison entre un jeton d’application et un jeton d’objet (pour en savoir plus sur ce jeton, consultez la Vue d’ensemble de l’authentification et l’autorisation du back-end).

    Pour que cette communication fonctionne, l’utilisateur utilisant cette communication doit donner son consentement à l’application Microsoft Entra.

  • Du back-end de la charge de travail au back-end Fabric

    Cela est effectué avec un jeton SubjectAndApp pour les API de contrôle de charge de travail (par exemple ResolveItemPermissions) ou avec un jeton Sujet (pour d’autres API Fabric).

  • Du back-end de la charge de travail aux services externes

    Un exemple de telle communication consiste à écrire dans un fichier Lakehouse. Cela est effectué avec le jeton Objet ou un jeton d’application, en fonction de l’API.

    Si vous envisagez de communiquer avec des services à l’aide d’un jeton Objet, assurez-vous que vous êtes familiarisé avec Pour le compte des flux.

    Reportez-vous au didacticiel d’authentification pour configurer votre environnement pour qu’il fonctionne avec l’authentification.

API Javascript d’authentification

Le front-end Fabric offre une API Javascript pour les charges de travail Fabric afin d’acquérir un jeton pour son application dans Microsoft Entra ID. Avant de travailler avec l'API JavaScript d'authentification, veillez à consulter la documentation de l'API JavaScript d'authentification.

Consentements

Pour comprendre pourquoi les consentements sont requis, vérifiez le consentement de l’utilisateur et de l’administrateur dans Microsoft Entra ID.

Comment fonctionnent les consentements dans les charges de travail Fabric ?

Pour accorder un consentement pour une application spécifique, Fabric FE crée une instance MSAL configurée avec l’ID d’application de la charge de travail et demande un jeton pour les étendues fournies (additionalScopesToConsent - consultez AcquireAccessTokenParams).

Lorsque vous demandez un jeton avec l’application de charge de travail pour une étendue spécifique, l’ID Microsoft Entra affiche un consentement contextuel en cas d’absence, puis redirige la fenêtre contextuelle vers l’URI de redirection configuré dans l’application.

En règle générale, l’URI de redirection se trouve dans le même domaine que la page qui a demandé le jeton, afin que la page puisse accéder à la fenêtre contextuelle et la fermer.

Dans notre cas, ce n'est pas dans le même domaine puisque Fabric demande le jeton et que l'URI de redirection de la charge de travail n'est pas dans le domaine Fabric, donc lorsque la boîte de dialogue de consentement s'ouvre, elle doit être fermée manuellement après la redirection - nous n'utilisons pas le code renvoyé dans l'URI de redirection, et donc nous la fermons automatiquement (lorsque Microsoft Entra ID redirige la fenêtre contextuelle vers l'URI de redirection, elle se ferme).

Vous pouvez voir le code/configuration de l’URI de redirection dans le fichier index.ts. Ce fichier se trouve dans Microsoft-Fabric-workload-development-sample, sous le dossier front-end.

Voici un exemple de fenêtre contextuelle de consentement pour notre application « mon application de charge de travail » et ses dépendances (stockage et Power BI) que nous avons configurées lors de la configuration de l’authentification :

Capture d’écran de la fenêtre contextuelle de consentement.