Establish Connectivity to Microsoft Power BI Cloud

This article describes how to connect to Microsoft Power BI in order to load data into Datasets and Reports in Metric Insights.

PREREQUISITES

[Release 6.x]: 'Remote Data Collector' renamed to 'Remote Data Processor'

With the release of Version 6.2.1, .conf files are no longer required for advanced configuration in Metric Insights. It is recommended to use the Plugin Config page to adjust parameters and their values. See this article for more details.

1. Access Admin > Collection & Storage > Data Sources

The list page containing all data sources available in the system opens.

Below the grid, click [+ New Data Source].

2. Select the Type of New Data Source

  1. Select "Other" and choose "Microsoft Power BI" from the drop-down list
  2. Move to the [Next Step]

3. Provide Data Source Parameters

  1. Auth Type: select the authorization type:
    • Password: provide Username and Plugin Password, note that the username must be a cloud only Microsoft Power BI user, or if an AD user, the AD user must exist / be synced in Azure AD for Power BI authentication
    • OAuth: click Get Token to grant permission to Office 365 API
      • You can enable Client Secret authorization for your Azure app. After the Client Secret has been generated, the Username/Password authorization will no longer work
  1. Application ID: Application ID of the registered Azure app that represents Metric Insights (to connect to Power BI)
  1. Server: the URL of your Microsoft Power BI server (this is the same URL that you see when accessing Microsoft Power BI via your web browser)

Enabling OAuth has the following benefits compared with the Username/Password authentication model:

  • ability to view content in iframes based on user account permissions rather than service account permissions
  • row-level security (RLS) without the need to use User Maps on MI side (you only have to enable RLS in Power BI)

To configure your Azure AD application for OAuth:

  1. In Azure AD, add https://<hostname>.com/editor/service/validatepowerbioauth  to Reply URIs (Redirect URIs) (See Configure your application properties in Azure AD)
  2. In the Azure Management Portal, specify Office 365 permissions and Power BI Service Permissions      

For general information on configuring your Azure AD application, see Configure Microsoft Power BI OAuth in Azure AD.

4. Provide Optional Parameters

  1. App filter:
    • "*":  the plugin will collect Power BI objects from all available Apps
    • App names (comma-separated, or wildcard patterns): the plugin will collect Power BI objects from the specified Apps
  2. Power BI Premium: Collect native PDFs: set to "true" to get native PDFs from Power BI
    • Note that native PDFs can be generated only with Power BI Premium accounts, otherwise, PDFs are generated using collected images
  3. Get token from Plugin: specify whether the token used to display External Report images in iframes is fetched from plugin ("Y") or in the UI ("N")

Note: It is recommended to set the parameter to "Y".

  • If the parameter is set to "N", a new token is fetched in the UI for each embedding and image collection. The same applies for External Reports with Drill-Down Authentication parameter set to "Power BI OAuth" in the Report type
  1. Object types to collect: by default the plugin is configured to collect Dashboards, Reports, Datasets, Tiles and Tables (you may remove any object type you do not need to fetch)
    • Enter "Workspace" and "App" to be able to collect objects from Workspaces and Apps
  2. Workspace Filter:
    • "*":  the plugin will collect Power BI objects from all Workspaces the associated user has access to, except for My Workspace
    • Workspace names (comma-separated or wildcard patterns):  the plugin will collect Power BI objects from the specified Workspaces
  3. [Test Connection]

See Object Filters Cheat Sheet for details on configuring the App filter, Workspace filter, and Object types to collect parameters.

Object Filters Cheat Sheet
App filter Empty Empty Empty "*" or App name(s) "*" or App name(s) "*" or App name(s)
Workspace filter "*" or Workspace name(s) "*" or Workspace name(s) Empty "*" or Workspace name(s) Empty "*" or Workspace name(s)
Object types to collect Neither "Workspace" nor "App" are listed OR "Workspace" is listed "App" is listed Both "Workspace" and "App" are listed Neither "Workspace" nor "App" are listed "App" is listed Both "Workspace" and "App" are listed
Result Objects from the specified Workspace(s) are collected Object filtration error Object filtration error Object filtration error Objects from the specified App(s) are collected Objects from the specified App(s) and Workspace(s) are collected

5. Advanced Configuration

If you want to be able to get Data from Power BI Datasets (to create Metrics, Reports, and Datasets in Metric Insights), you must utilize the Metric Insights Remote Data Processor to connect to Power BI directly.

If you are using AD, you may want to run the RDP service as an AD service account:

  • Access Services > Metric Insights Data Processor Daemon > Properties > Log On, select AD service account
  1. Advanced Configuration settings can be set to default values unless Data Source requires more precise tuning
  2. Use Proxy: set to "Yes" and choose a Proxy if your Data Source connection requires a proxy server
  3. [Test connection] (this will also save your entries)

6. Other Settings

  1. You can create Datasets and view all the elements or Datasets using this Data Source from the respective tabs
  2. Click Permissions to assign Data Source access to Groups or Power Users