Falta de compatibilidad para Microsoft Graph en Power Query

No se recomienda ni es compatible la conexión a las API REST de Microsoft Graph desde Power Query. En cambio, se recomienda a los usuarios explorar soluciones alternativas para recuperar datos de análisis basados en Graph, como Microsoft Graph data connect.

Es posible que descubra que se pueden realizar determinadas llamadas REST a los puntos de conexión de API de Microsoft Graph a través de las funciones Web.Contents o OData.Feed pero dichos enfoques no son confiables como soluciones a largo plazo.

En este artículo se detallan los problemas respecto a la conectividad de Microsoft Graph desde Power Query y se explican los motivos por los que no se recomienda.

Autenticación

El flujo de autenticación de la cuenta organizativa integrada para las funciones Web.Contents y OData.Feed de Power Query no admite la mayoría de los puntos de conexión de Graph. Concretamente, el cliente de Microsoft Entra ID de Power Query solicita el ámbito user_impersonation que no es compatible con el modelo de seguridad de Graph. Graph utiliza un gran número de permisos que no están disponibles a través de nuestros conectores web y OData genéricos.

La implementación flujos propios de recuperación de credenciales de Microsoft Entra ID en forma directa desde la consulta, o a través de credenciales codificadas o insertadas, tampoco es recomendable por motivos de seguridad.

Incompatibilidad de las bibliotecas de OData

Algunos puntos de conexión y extensiones de Graph pueden exigir el uso de bibliotecas y características de OData que no sean compatibles con la función integrada OData.Feed de Power Query, ya que es posible que Graph y Power Query utilicen dos versiones diferentes de las bibliotecas de OData. Estos problemas suelen provocar errores al recuperar el documento $metadata del servicio. Es posible detectar orientaciones comunes respecto al paso de la opción Implementation = "2.0" a la llamada de función OData.Feed para asegurarse de que se utilicen las bibliotecas de OData compatibles más actualizadas. Si bien este enfoque brinda solución a ciertas incompatibilidades de OData, es posible que descubra otros errores a lo largo del tiempo, ya que Graph y Power Query adoptan nuevas versiones de las bibliotecas de OData en momentos diferentes.

Rendimiento

Microsoft Graph API está diseñada para ser compatible con diversos escenarios de aplicación, pero es poco óptima para la recuperación de datos a gran escala, que es un requisito en la mayoría de los escenarios de análisis. Si intenta recuperar grandes cantidades de datos de Graph API, posiblemente descubra problemas de rendimiento. Puede encontrar más información sobre la aplicabilidad del escenario en la Documentación de Graph.

Uso de un conector personalizado

Algunos usuarios de Power Query han habilitado la conectividad de Graph mediante el uso de conectores personalizados, lo que limita la funcionalidad a determinadas partes de Graph API. Este enfoque permite a los desarrolladores de conectores solucionar problemas generales de autenticación a través de la definición de un cliente de Microsoft Entra ID propio con permisos específicos de Graph. Algunos conectores personalizados funcionan en torno a los desafíos de OData a través del uso de Web.Contents y la simulación de compatibilidad con OData dentro de la lógica del conector. No obstante, este enfoque no es recomendable, ya que los usuarios suelen encontrarse con los problemas de rendimiento y escalabilidad descritos más arriba. Los desarrolladores que toman esta ruta deben tener en cuenta estas limitaciones continuamente.