Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Authentification par identité managée pour l'exportation vers Power BI permet aux tâches Stream Analytics d’accéder directement à un espace de travail dans votre compte Power BI. Cette fonctionnalité permet aux déploiements de travaux Stream Analytics d’être entièrement automatisés, car un utilisateur n’a plus besoin de se connecter de manière interactive à Power BI via le portail Azure. En outre, les travaux longs qui écrivent dans Power BI sont désormais mieux pris en charge, car vous n'avez pas besoin de réauthoriser régulièrement le travail.
Cet article explique comment activer l’identité managée pour les sorties Power BI d’un travail Stream Analytics via le portail Azure et via un déploiement Azure Resource Manager.
Important
Le streaming en temps réel dans Power BI est mis hors service. À compter du 31 octobre 2027, les utilisateurs ne peuvent pas créer de travaux Azure Stream Analytics qui utilisent le connecteur de sortie Power BI et les travaux existants qui utilisent ce connecteur ne s'exécutent plus. Microsoft recommande d’explorer Real-Time Intelligence dans Microsoft Fabric pour les scénarios en temps réel. Pour obtenir des conseils sur la migration, consultez l’article power-bi-output.md.
Remarque
Seules les identités gérées attribuées par le système sont prises en charge avec la sortie Power BI. Actuellement, l'utilisation d'identités managées affectées par l'utilisateur avec la sortie Power BI n'est pas prise en charge.
Prerequisites
Pour utiliser cette fonctionnalité, vous avez besoin des prérequis suivants :
- Un compte Power BI avec une licence Pro.
- Espace de travail mis à niveau dans votre compte Power BI. Pour plus d'informations, consultez l'annonce de Power BI.
Créer un travail Stream Analytics à l’aide du portail Azure
Créez un travail Stream Analytics ou ouvrez un travail existant dans le portail Azure.
Dans la barre de menus située à gauche de l’écran, sélectionnez Identité managée sous Paramètres.
Dans Sélectionner une identité, sélectionnez Identité affectée par le système. Ensuite, cliquez sur Enregistrer.
Pour l'identité managée, vérifiez que vous voyez l'identifiant de principal et le nom du principal attribués à votre tâche Stream Analytics. Le nom du principal doit être identique au nom de votre tâche de Stream Analytics.
Avant de configurer la sortie, donnez à la tâche Stream Analytics l’accès à votre espace de travail Power BI en suivant les instructions dans la section Donner l'accès à la tâche Stream Analytics à votre espace de travail Power BI de cet article.
Accédez à la section Outputs de votre travail Stream Analytics, sélectionnez + Ajouter, puis choisissez Power BI. Sélectionnez ensuite le bouton Authorize et connectez-vous avec votre compte Power BI.
Une fois que vous êtes autorisé, une liste déroulante remplit tous les espaces de travail auquel vous avez accès. Sélectionnez l’espace de travail que vous avez autorisé à l’étape précédente. Sélectionnez Ensuite Managed Identity comme mode d’authentification. Enfin, sélectionnez le bouton Enregistrer .
Déploiement Azure Resource Manager
Azure Resource Manager vous permet d’automatiser entièrement le déploiement de votre travail Stream Analytics. Vous pouvez déployer des modèles Resource Manager à l’aide de Azure PowerShell ou du Azure CLI. Les exemples suivants utilisent le Azure CLI.
Créez un Microsoft. StreamAnalytics/streamingjobs ressource avec une identité managée en incluant la propriété suivante dans la section ressource de votre modèle Resource Manager :
"identity": { "type": "SystemAssigned", }Cette propriété indique à Azure Resource Manager de créer et manager l’identité de votre travail Stream Analytics. L’exemple suivant montre un modèle Resource Manager qui déploie un travail Stream Analytics avec une identité managée activée et un récepteur de sortie Power BI qui utilise l’identité managée :
{ "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "resources": [ { "apiVersion": "2017-04-01-preview", "name": "pbi_managed_id", "location": "[resourceGroup().location]", "type": "Microsoft.StreamAnalytics/StreamingJobs", "identity": { "type": "systemAssigned" }, "properties": { "sku": { "name": "standard" }, "outputs":[ { "name":"output", "properties":{ "datasource":{ "type":"PowerBI", "properties":{ "dataset": "dataset_name", "table": "table_name", "groupId": "01234567-89ab-cdef-0123-456789abcdef", "authenticationMode": "Msi" } } } } ] } } ] }Déployez le travail précédent dans le groupe de ressources ExampleGroup à l’aide de la commande Azure CLI suivante :
az deployment group create --resource-group ExampleGroup -template-file StreamingJob.jsonAprès avoir créé le travail, utilisez Azure Resource Manager pour récupérer la définition complète du travail.
az resource show --ids /subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.StreamAnalytics/StreamingJobs/<resource-name>La commande précédente retourne une réponse comme suit :
{ "id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.StreamAnalytics/streamingjobs/<resource-name>", "identity": { "principalId": "<principal-id>", "tenantId": "<tenant-id>", "type": "SystemAssigned", "userAssignedIdentities": null }, "kind": null, "location": "West US", "managedBy": null, "name": "<resource-name>", "plan": null, "properties": { "compatibilityLevel": "1.0", "createdDate": "2019-07-12T03:11:30.39Z", "dataLocale": "en-US", "eventsLateArrivalMaxDelayInSeconds": 5, "jobId": "<job-id>", "jobState": "Created", "jobStorageAccount": null, "jobType": "Cloud", "outputErrorPolicy": "Stop", "package": null, "provisioningState": "Succeeded", "sku": { "name": "Standard" } }, "resourceGroup": "<resource-group>", "sku": null, "tags": null, "type": "Microsoft.StreamAnalytics/streamingjobs" }Si vous envisagez d’utiliser l’API REST Power BI pour ajouter le travail Stream Analytics à votre espace de travail Power BI, notez le
principalIdretourné.Maintenant que le travail est créé, passez à la section Donner l'accès du job Stream Analytics à votre espace de travail Power BI de cet article.
Donnez à la tâche Stream Analytics l’accès à votre espace de travail Power BI
Après avoir créé le travail Stream Analytics, donnez-lui accès à un espace de travail Power BI. Une fois que vous avez donné l’accès à votre travail, laissez quelques minutes pour que l’identité se propage.
Utiliser l’interface utilisateur Power BI
Remarque
Pour ajouter le job Stream Analytics à votre espace de travail Power BI à l’aide de l’interface utilisateur, vous devez également activer l’accès au principal du service dans les paramètres Developer dans le portail d’administration Power BI. Pour plus d’informations, consultez Commencer avec un principal de service.
Accédez aux paramètres d’accès de l’espace de travail. Pour plus d’informations, consultez Donner accès à votre espace de travail.
Entrez le nom de votre travail Stream Analytics dans la zone de texte, puis sélectionnez Contributeur comme niveau d’accès.
Sélectionnez Ajouter et fermer le volet.
Utiliser les cmdlets PowerShell de Power BI
Installez les applets de commande PowerShell Power BI
MicrosoftPowerBIMgmt.Important
Vérifiez que vous utilisez la version 1.0.821 ou ultérieure des applets de commande.
Install-Module -Name MicrosoftPowerBIMgmtConnectez-vous à Power BI.
Login-PowerBIAjoutez votre tâche Stream Analytics en tant que contributeur à l’espace de travail.
Add-PowerBIWorkspaceUser -WorkspaceId <group-id> -PrincipalId <principal-id> -PrincipalType App -AccessRight Contributor
Utiliser l’API REST Power BI
Vous pouvez ajouter la tâche Stream Analytics en tant que Contributeur à l’espace de travail en utilisant directement l’API REST « Add Group User ». Pour obtenir une documentation complète, consultez Groupes - Ajouter un utilisateur de groupe.
Exemple de demande
POST https://api.powerbi.com/v1.0/myorg/groups/{groupId}/users
Corps de la requête
{
"groupUserAccessRight": "Contributor",
"identifier": "<principal-id>",
"principalType": "App"
}
Utiliser un principal de service pour accorder l’autorisation pour l’identité managée d’un travail ASA
Pour les déploiements automatisés, utiliser une connexion interactive pour permettre à une tâche ASA d'accéder à un espace de travail Power BI n'est pas possible. Vous pouvez utiliser un principal de service pour accorder l’autorisation pour l’identité managée d’un travail ASA. Vous pouvez utiliser PowerShell pour cette approche :
Connect-PowerBIServiceAccount -ServicePrincipal -TenantId "<tenant-id>" -CertificateThumbprint "<thumbprint>" -ApplicationId "<app-id>"
Add-PowerBIWorkspaceUser -WorkspaceId <group-id> -PrincipalId <principal-id> -PrincipalType App -AccessRight Contributor
Supprimer l’identité managée
L’identité managée que vous créez pour un travail Stream Analytics est supprimée uniquement lorsque vous supprimez le travail. Il n’existe aucun moyen de supprimer l’identité managée sans supprimer le travail. Si vous ne souhaitez plus utiliser l’identité managée, vous pouvez modifier la méthode d’authentification pour la sortie. L’identité managée continue d’exister jusqu’à ce que vous supprimiez le travail. Si vous décidez d’utiliser à nouveau l’authentification d’identité managée, l’identité managée est utilisée.
Limitations
Cette fonctionnalité présente les limitations suivantes :
Les espaces de travail de Power BI classiques ne sont pas pris en charge.
Azure comptes sans Microsoft Entra ID ne sont pas pris en charge.
L’accès multilocataire n’est pas pris en charge. Le principal de service que vous créez pour un job Stream Analytics donné doit résider dans le même client Microsoft Entra dans lequel vous avez créé le job. Vous ne pouvez pas l'utiliser avec une ressource qui réside dans un autre locataire Microsoft Entra.
Identité attribuée par l'utilisateur n'est pas prise en charge. Vous ne pouvez pas entrer votre propre principal de service à utiliser par votre travail Stream Analytics. Azure Stream Analytics doit générer le principal du service.