Partager via


Absence de prise en charge de Microsoft Graph dans Power Query

La connexion aux API REST Microsoft Graph à partir de Power Query n'est ni prise en charge ni recommandée. Au lieu de cela, nous vous recommandons d’explorer d’autres solutions pour récupérer des données d’analyse basées sur Graph, telles que la connexion aux données Microsoft Graph.

Il se peut que vous puissiez effectuer certains appels REST aux points de terminaison de l’API Microsoft Graph en utilisant les fonctions Web.Contents ou OData.Feed, mais ces approches ne constituent pas une solution fiable à long terme.

Cet article décrit les problèmes liés à la connectivité Microsoft Graph à partir de Power Query et explique pourquoi il n’est pas recommandé.

Authentication

Le flux d’authentification intégré de compte organisationnel pour les fonctions Web.Contents et OData.Feed de Power Query n’est pas compatible avec la plupart des points de terminaison Graph. Plus précisément, le client Microsoft Entra ID de Power Query demande l’étendue user_impersonation , qui n’est pas compatible avec le modèle de sécurité de Graph. Graph utilise un ensemble complet d’autorisations qui ne sont pas disponibles via nos connecteurs Web et OData génériques.

L’implémentation de vos propres flux d’informations d’identification Microsoft Entra ID directement à partir de votre requête, ou l’utilisation d’informations d’identification codées en dur ou incorporées, n’est pas recommandée pour des raisons de sécurité.

Incompatibilité des bibliothèques OData

Certains points de terminaison et extensions Graph peuvent nécessiter l'utilisation de bibliothèques et de fonctionnalités OData qui ne sont pas prises en charge par la fonction intégrée de Power Query, car Graph et Power Query peuvent utiliser des versions différentes des bibliothèques OData. Ces problèmes entraînent généralement des erreurs lors de la récupération du document du $metadata service. Vous pouvez découvrir des recommandations standard liées à la transmission de l’option Implementation = "2.0" à l’appel de fonction OData.Feed pour vous assurer que les bibliothèques OData les plus récentes et prises en charge sont utilisées. Bien que cette approche résout certaines incompatibilités OData, vous pouvez toujours rencontrer des erreurs au fil du temps, car Graph et Power Query adoptent de nouvelles versions des bibliothèques OData à différents moments.

Performance

L’API Microsoft Graph est conçue pour prendre en charge de nombreux scénarios d’application, mais elle n’est pas optimale pour la récupération de données à grande échelle requise pour la plupart des scénarios d’analyse. Si vous essayez de récupérer de grandes quantités de données à partir d’API Graph, vous pouvez rencontrer des problèmes de performances. Vous trouverez des détails sur l’applicabilité du scénario dans la documentation Graph.

Utilisation d’un connecteur personnalisé

Certains utilisateurs de Power Query ont activé la connectivité Graph via des connecteurs personnalisés, limitant leurs fonctionnalités à certaines parties de l’API Graph. Cette approche permet aux développeurs de connecteurs de résoudre les problèmes d’authentification généraux en définissant leur propre client Microsoft Entra ID avec des autorisations spécifiques à Graph. Certains connecteurs personnalisés contournent les défis de OData en utilisant Web.Contents et en simulant la prise en charge d’OData dans leur logique de connecteur. Toutefois, cette approche n’est pas recommandée, car les utilisateurs atteignent fréquemment les problèmes de performances et d’extensibilité décrits ci-dessus. Les développeurs qui prennent cette route doivent continuer avec ces limitations à l’esprit.