diff --git a/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/airflow.md b/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/airflow.md index 309af926aa8..d148eb7ad51 100644 --- a/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/airflow.md +++ b/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/airflow.md @@ -27,6 +27,8 @@ Configure and schedule PowerBI metadata and profiler workflows from the OpenMeta To deploy OpenMetadata, check the Deployment guides. {%/inlineCallout%} +Please follow the steps mentioned [here](/connectors/dashboard/powerbi/powerbi-account-setup) to setup the permissions required for the PowerBI connector. + To run the Ingestion via the UI you'll need to use the OpenMetadata Ingestion Container, which comes shipped with custom Airflow plugins to handle the workflow deployment. @@ -146,10 +148,24 @@ By default, the pagination limit is set to 100 records, which is also the maximu Option for using the PowerBI admin APIs: - Enabled (Use PowerBI Admin APIs) -Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the powerbi instance +Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance. + +{% note %} + +When using the PowerBI Admin APIs there are no limitations on the Datasets that are retrieved for creating lineage information. + +{% /note %} - Disabled (Use Non-Admin PowerBI APIs) Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them. + +{% note %} + +When using the PowerBI Non-Admin APIs, the lineage information can only be generated if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets). +For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations). + +{% /note %} + {% /codeInfo %} #### Source Configuration - Source Config diff --git a/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/cli.md b/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/cli.md index be740149185..9d9e8498cdb 100644 --- a/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/cli.md +++ b/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/cli.md @@ -27,6 +27,8 @@ Configure and schedule PowerBI metadata and profiler workflows from the OpenMeta To deploy OpenMetadata, check the Deployment guides. {%/inlineCallout%} +Please follow the steps mentioned [here](/connectors/dashboard/powerbi/powerbi-account-setup) to setup the permissions required for the PowerBI connector. + To run the Ingestion via the UI you'll need to use the OpenMetadata Ingestion Container, which comes shipped with custom Airflow plugins to handle the workflow deployment. @@ -146,10 +148,24 @@ By default, the pagination limit is set to 100 records, which is also the maximu Option for using the PowerBI admin APIs: - Enabled (Use PowerBI Admin APIs) -Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the powerbi instance +Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance. + +{% note %} + +When using the PowerBI Admin APIs there are no limitations on the Datasets that are retrieved for creating lineage information. + +{% /note %} - Disabled (Use Non-Admin PowerBI APIs) Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them. + +{% note %} + +When using the PowerBI Non-Admin APIs, the lineage information can only be generated if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets). +For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations). + +{% /note %} + {% /codeInfo %} #### Source Configuration - Source Config diff --git a/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/index.md b/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/index.md index b1071b2028f..ca5a48da635 100644 --- a/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/index.md +++ b/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/index.md @@ -45,6 +45,8 @@ the following docs to connect using Airflow SDK or with the CLI. To deploy OpenMetadata, check the Deployment guides. {%/inlineCallout%} +Please follow the steps mentioned [here](/connectors/dashboard/powerbi/powerbi-account-setup) to setup the permissions required for the PowerBI connector. + To run the Ingestion via the UI you'll need to use the OpenMetadata Ingestion Container, which comes shipped with custom Airflow plugins to handle the workflow deployment. @@ -222,11 +224,24 @@ By default, the pagination limit is set to 100 records, which is also the maximu Option for using the PowerBI admin APIs: - Enabled (Use PowerBI Admin APIs) -Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the powerbi instance +Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance. + +{% note %} + +When using the PowerBI Admin APIs there are no limitations on the Datasets that are retrieved for creating lineage information. + +{% /note %} - Disabled (Use Non-Admin PowerBI APIs) Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them. +{% note %} + +When using the PowerBI Non-Admin APIs, the lineage information can only be generated if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets). +For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations). + +{% /note %} + {% /extraContent %} {% step srNumber=6 %} diff --git a/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/setup-powerbi-account.md b/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/setup-powerbi-account.md index b6435592713..ebae321d3ba 100644 --- a/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/setup-powerbi-account.md +++ b/openmetadata-docs-v1/content/v1.0.0/connectors/dashboard/powerbi/setup-powerbi-account.md @@ -6,23 +6,29 @@ slug: /connectors/dashboard/powerbi/powerbi-account-setup # PowerBI Account Setup ### Requirements - - PowerBi Pro license is required to access the APIs + - To access the PowerBI APIs and import dashboards, charts, and datasets from PowerBI into OpenMetadata, a `PowerBI Pro` license is necessary. ### Step 1: Create an Azure AD app and configure the PowerBI Admin consle Please follow the steps mentioned [here](https://docs.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal) for setting up the Azure AD application service principle and configure PowerBI admin settings -Login to Power BI as Admin and from `Tenant` settings allow below permissions. +Login to [Power BI](https://app.powerbi.com/) as Admin and from `Tenant` settings allow below permissions. - Allow service principles to use Power BI APIs - Allow service principals to use read-only Power BI admin APIs - Enhance admin APIs responses with detailed metadata ### Step 2: Provide necessary API permissions to the app Go to the `Azure Ad app registrations` page, select your app and add the dashboard permissions to the app for PowerBI service and grant admin consent for the same: -- Dashboard.Read.All -- Dashboard.ReadWrite.All -{% note %} +The required permissions are: +- `Dashboard.Read.All` +- `Dashboard.ReadWrite.All` + +Optional Permissions: (Without granting these permissions, the dataset information cannot be retrieved and the lineage processing will be skipped) +- `Dataset.Read.All` +- `Dataset.ReadWrite.All` + +{% note %} Make sure that in the API permissions section **Tenant** related permissions are not being given to the app Please refer [here](https://stackoverflow.com/questions/71001110/power-bi-rest-api-requests-not-authorizing-as-expected) for detailed explanation diff --git a/openmetadata-ui/src/main/resources/ui/public/locales/en-US/Dashboard/PowerBI.md b/openmetadata-ui/src/main/resources/ui/public/locales/en-US/Dashboard/PowerBI.md index 49a7df1b249..4462cb2bd3a 100644 --- a/openmetadata-ui/src/main/resources/ui/public/locales/en-US/Dashboard/PowerBI.md +++ b/openmetadata-ui/src/main/resources/ui/public/locales/en-US/Dashboard/PowerBI.md @@ -12,7 +12,7 @@ To access the PowerBI APIs and import dashboards, charts, and datasets from Powe Please follow the steps mentioned [here](https://docs.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal) for setting up the Azure AD application service principle and configure PowerBI admin settings. -Login to Power BI as Admin and from the `Tenant` settings allow the following permissions: +Login to [Power BI](https://app.powerbi.com/) as Admin and from the `Tenant` settings allow the following permissions: - Allow service principles to use Power BI APIs, - Allow service principals to use read-only Power BI admin APIs, - Enhance admin APIs responses with detailed metadata. @@ -104,7 +104,7 @@ Instructions for adding these scopes to your app can be found by following this $$ $$section -### Pagination_entity_per_page $(id="pagination_entity_per_page") +### Pagination Entity Per Page $(id="pagination_entity_per_page") The pagination limit for Power BI APIs can be set using this parameter. The limit determines the number of records to be displayed per page. @@ -116,8 +116,12 @@ $$section Option for using the PowerBI admin APIs: - `Enabled` (Use PowerBI Admin APIs) -Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance +Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance. +There are no limitations on the Datasets that are retrieved for creating lineage information. - `Disabled` (Use Non-Admin PowerBI APIs) Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them. +Also lineage information can only be generated if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets). +For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations). + $$