Partager via


Configuration de l'authentification (préversion)

Remarque

Pour configurer les paramètres d’authentification suivants dans le guide d’installation, un rôle d’administrateur général est requis.

Pour pouvoir travailler avec l'authentification, vous devez mettre en place les trois éléments qui la composent :

Pour travailler avec l'authentification dans Fabric, suivez ce guide.

Approvisionnement de service Stockage Azure

L’exemple montre comment stocker et lire des données en provenance et à destination des lakehouses. Cela nécessite la génération de jetons pour le service Stockage Azure dans les flux OBO. Pour générer des jetons, les utilisateurs doivent donner leur consentement à l’application à l’aide de Stockage Azure. Pour donner son consentement, Stockage Azure doit être approvisionné dans le locataire.

Pour vous assurer que Stockage Azure est approvisionné dans le client :

  1. Connectez-vous au portail Azure

  2. Sélectionnez Microsoft Entra ID>Applications d’entreprise

  3. Dans les filtres, choisissez type d’application = toutes les applications. L’ID d’application commence par e406a681-f3d4-42a8-90b6-c2b029497af1

    Capture d’écran montrant l’approvisionnement Stockage Azure.

Si vous voyez l’application Stockage Azure, cela signifie qu’elle est déjà configurée et que vous pouvez passer à l’étape suivante. Si ce n’est pas le cas, un administrateur général doit la configurer.

Ouvrez Windows PowerShell en tant qu’administrateur, puis exécutez les commandes suivantes :

Install-Module az  
Import-Module az  
Connect-AzureAD  
New-AzureADServicePrincipal -AppId e406a681-f3d4-42a8-90b6-c2b029497af1

Configurer manuellement votre application dans Microsoft Entra ID

Pour travailler avec l’authentification, vous devez avoir une application enregistrée dans Microsoft Entra ID. Si vous n’avez pas d’application inscrite, suivez ce guide pour créer une application.

  1. Appliquer les configurations suivantes à votre application :

    • Définissez l’application comme application multi-locataire.
    • Pour les applications de développement, configurez l'URI de redirection comme http://localhost:60006/close avec la plateforme SPA. Cette configuration est nécessaire pour notre support de consentement. Vous pouvez ajouter d’autres URI de redirection comme vous le souhaitez.

    Remarque

    • L’URI de redirection doit être un URI qui ferme simplement la page lors de sa navigation. L’URI http://localhost:60006/close est déjà configuré dans l’exemple front-end et vous pouvez le modifier dans Frontend/src/index.ts (si vous le modifiez, assurez-vous qu’il correspond à celui configuré pour votre application).
    • Vous pouvez configurer l’URI de redirection après avoir créé l’application dans le menu Gérer sous Authentification.
    • L’URL de redirection doit retourner une page HTML qui appelle JS « windows.close() ».

    Capture d’écran de l’IU d’inscription d’application.

  2. Modifiez l'URI d'identification de l'application pour votre application. Accédez à Gérer>l’exposition d’une API et modifiez l’URI d’ID d’application de votre application :

    Pour le scénario de développement, l’URI de l’ID d’application doit commencer par : api://localdevinstance/<Workload publisher's tenant ID in lower case (the tenant ID of the user used in Fabric to run the sample)>/<Name of your workload> et un sous-chemin facultatif à la fin qui commence par / (voir des exemples).

    Où :

    • Le nom de la charge de travail est exactement tel qu’il est spécifié dans le manifeste.
    • L’URI d’ID ne se termine pas par une barre oblique.
    • À la fin de l’URL d’ID, il peut y avoir un sous-chemin facultatif constitué d'une chaîne de lettres minuscules ou majuscules anglais, de chiffres et de tirets, d'une longueur maximale de 36 caractères.

    Conseil

    Pour savoir comment rechercher votre ID de client, consultez Comment trouver votre ID de client Microsoft Entra.

    Par exemple, si l’ID client de l’éditeur est 853d9f4f-c71b-4420-b6ec-60e503458946 et que le nom de la charge de travail est Fabric.WorkloadSample, puis :

    • Les URI suivants sont valides

      • api://localdevinstance/853d9f4f-c71b-4420-b6ec-60e503458946/Fabric.WorkloadSample
      • api://localdevinstance/853d9f4f-c71b-4420-b6ec-60e503458946/Fabric.WorkloadSample/abc
    • Les URI suivants ne sont pas valides

      • api://localdevinstance/853d9f4f-c71b-4420-b6ec-60e503458946/Fabric.WorkloadSample/af/
      • api://localdevinstance/853d9f4f-c71b-4420-b6ec-60e503458946/Fabric.WorkloadSample/af/a
      • URI d’ID qui ne commence pas par api://localdevinstance/853d9f4f-c71b-4420-b6ec-60e503458946/Fabric.WorkloadSample

Ajouter une étendue pour CRUD/tâches

Pour utiliser les API Créer, Lire, Mettre à jour et Supprimer pour les éléments de charge de travail et effectuer d’autres opérations avec des tâches, ajoutez une étendue. En outre, ajoutez deux applications Fabric dédiées aux applications pré-autorisées pour cette étendue pour indiquer que votre API (l’étendue que vous avez créée) approuve Fabric :

  • Sous Exposer une API, sélectionnez Ajouter une étendue. Nommez l’étendue FabricWorkloadControl et fournissez les détails nécessaires.

  • Sous Applications clientes autorisées, sélectionnez Ajouter une application cliente. Ajoutez d2450708-699c-41e3-8077-b0c8341509aa (client Fabric pour l’application des charges de travail) et sélectionnez votre étendue.

Ajouter des étendues pour l’API de plan de données

D’autres étendues doivent être inscrites pour représenter des groupes d’opérations, exposées par l’API de plan de données. Dans l'exemple de backend, nous fournissons quatre exemples. Vous pouvez les voir dans Backend/src/Constants/scopes.cs. Les étendues sont les suivantes :

  • Item1.Read.All : utilisé pour lire les éléments de charge de travail
  • Item1.ReadWrite.All : utilisé pour lire/écrire des éléments de charge de travail
  • FabricLakehouse.Read.All : utilisé pour lire des fichiers lakehouse
  • FabricLakehouse.ReadWrite.All : utilisé pour la lecture/écriture des fichiers lakehouse

Préautoriser 871c010f-5e61-4fb1-83ac-98610a7e9110 (l’application cliente Fabric) pour ces étendues.

Les ID d’application de ces applications se trouvent sous Microsoft Power BI et le service Power BI.

Voici à quoi doit ressembler la section Exposer une API dans votre application. Dans cet exemple, l’ID URL est api://localdevinstance/853d9f4f-c71b-4420-b6ec-60e503458946/Fabric.WorkloadSample :

Capture d’écran montrant ce à quoi votre section Exposer une API doit ressembler.

Générez un secret pour votre application

Sous Certificats et secrets, sélectionnez l'onglet Secrets et ajoutez un secret. Donnez-lui le nom souhaité et enregistrez-le. Utilisez ce secret lors de la configuration de l’exemple de back-end.

Capture d’écran de la boîte de dialogue Générer des secrets.

Ajouter une revendication facultative « idtyp »

Sous Configuration du jeton, sélectionnez Ajoutez une revendication facultative. Choisissez jeton d’accès et ajoutez idtyp.

Capture d’écran montrant l’ajout d’idtyp de revendication.

Ajouter des autorisations API

Sous Autorisations d’API, ajoutez les autorisations souhaitées pour votre application. Pour l'exemple de backend, ajoutez Stockage user_impersonation (pour les API OneLake) et Power BI Workspace.Read.all (pour les API de contrôle de la charge de travail) :

Une capture d’écran montrant l’ajout des autorisations des API.

Pour en savoir plus sur les autorisations d’API, consultez Mettre à jour les autorisations demandées par une application dans Microsoft Entra ID.

Vérifiez que votre application est définie pour fonctionner avec le jeton d’authentification v1

Sous Manifeste, assurez-vous que accessTokenAcceptedVersion est défini sur null ou « 1 ».

Configurer automatiquement votre application dans Microsoft Entra Identity à l'aide d'un script

Pour une configuration simplifiée de votre application dans Microsoft Entra Identity, vous pouvez choisir d'utiliser un script PowerShell automatisé. Suivez les étapes suivantes pour configurer votre application :

  1. Installer Azure CLI : Commencez par installer la interface de ligne de commande Azure (CLI) Installer Azure CLI pour Windows | Microsoft Learn2.
  2. Exécutez le script CreateDevAADApp.ps1 : exécutez le script CreateDevAADApp. Vous êtes invité à vous connecter en utilisant les informations d’identification du compte d’utilisateur sous lequel vous avez l’intention de créer l’application.
  3. Fournissez les informations requises : Lorsque vous y êtes invité, entrez le nom souhaité pour votre demande, le nom de la charge de travail (préfixé par "Org.") et votre numéro d'identification de locataire.

Une fois le script exécuté avec succès, il fournit tous les détails nécessaires à la configuration de votre charge de travail. En outre, il fournit une URL directe vers votre application et une URL de consentement administratif pour l’autorisation de l’application à l’échelle du locataire.

Exemple d'utilisation

Pour créer une application nommée "myWorkloadApp" avec le nom de charge de travail "Org.Myworkload" pour le locataire spécifié, exécutez la commande suivante dans PowerShell :

powershell .\CreateDevAADApp.ps1 -applicationName "myWorkloadApp" -workloadName "Org.Myworkload" -tenantId "cb1f79ad-7930-43c0-8d84-c1bf8d15c8c7"

Cet exemple montre comment utiliser le script CreateDevAADApp.ps1 avec des arguments de ligne de commande pour automatiser le processus d'installation de l'application. L'identifiant du locataire fourni est un exemple et doit être remplacé par l'identifiant de votre locataire.

Configuration de votre charge de travail (back-end)

  1. Dans l’exemple backend, accédez au fichier src/appsettings.json dans le référentiel et configurez les paramètres :

    • PublisherTenantId : L’ID client de l’éditeur
    • ClientId : votre ID d’application (vous pouvez le trouver dans Microsoft Entra ID sous vue d'ensemble).
    • ClientSecret : le secret que vous avez créé lors de la configuration de l’application Microsoft Entra.
    • Audience : l’URI d’ID que nous avons configuré dans l’application Microsoft Entra.
  2. Configurez votre workloadManifest.xml. Accédez au fichier src/Packages/manifest/files/WorkloadManifest.xml dans le référentiel et configurez vos AppId, redirectUri et ResourceId (URL d’ID) sous AADApps.

<AADApp>
    <AppId>YourApplicationId</AppId>
    <RedirectUri>YourRedirectUri</RedirectUri>
    <ResourceId>YourResourceId</ResourceId>
</AADApp>

Configurer le manifeste local de la charge de travail

Remarque

Cette étape s’applique uniquement au scénario devmode.

Après avoir configuré votre application, mettez à jour les configurations suivantes dans le fichier de configuration .env.dev situé dans le dossier Frontend :

"DEV_AAD_CONFIG_AUDIENCE": "", // The ID URI configured in your application for developer scenario

"DEV_AAD_CONFIG_REDIRECT_URI": "http://localhost:60006/close", // or the path you configured in index.ts

"DEV_AAD_CONFIG_APPID": "" // your app Id

Capture d’écran montrant la configuration d’un fichier « .env.dev ».

Pour comprendre comment utiliser l’authentification dans les charges de travail, consultez Lignes directrices pour l'authentification des charges de travail et exploration approfondie.