Configure Embed Power BI Control
Requirements
Azure AD Application
To use the Embed Power BI control, CXO requires an Azure AD application. This requires an Azure account and subscription.
Log into the Azure Portal.
Create Azure AD Application on the Microsoft Entra ID service.
Go to App registrations, and click New registration.
Fill in the following details:
Name
Supported account types: Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant)
Redirect URI: Platform: Public client/native | https://app.powerbi.com/embedsetup/SignInRedirect
Go to Certificates & secrets
Add a new client secret, give it a name and an expiration date.
On Authentication confirm that the Redirect URI given in the App registration is present and add the following:
urn:ietf:wg:oauth:2.0:oob
Click on Advanced settings, enable Allow public client flows
On the API permissions
Add a permission
Choose Power BI Service
Pick the permissions in the following categories: App, Capacity, Content, Dashboard, Dataflow, Dataset, Gateway, Report, StorageAccount, Tenant, Workspace (this list might be too extensive, remove the permissions that feel unnecessary)
Once everything is configured go to the Azure AD App Overview and note the following:
Directory (tenant) ID
Application (client) ID
Client secret that was configured
Power BI
Ensure the following actions on Power BI are performed:
Create a Workspace with a Power BI Pro or Premium Per User (PPU) license
Grant access to the Azure AD App for the first section to access the Workspace
-
Select Manage access on the workspace:
-
Click Add people or groups.
-
Enter the name of the Azure AD app created in the first section:
-
Configure capacity for the workspace: https://learn.microsoft.com/en-us/power-bi/developer/embedded/move-to-production. This step might be optional depending on the use case. If not configured, the embedded reports will show like this in CXO:
The rendering of the report is done by a shared resource, which might deliver unreliable performances. For a non-production environment this step may be skipped.
Acquire a license for Power BI Embedding
To use the Power BI Embedded functionality in CXO, a separate license is required.
In the configurator, under the License Key tab, you can check if you have the right license, by confirming Embed Power BI is Yes.
If this is not mentioned in your license, please contact us.
CXO Configurator
If your product is licensed as above, then you will see it reflected under the Maintenance tab with a link to Power BI Settings.
When clicked a form is presented to be filled in for the information that was collected at the end of the first section:
Azure Tenant Id: The Directory (tenant) ID of the first section
Azure Application Id: The Application (client) ID of the first section
Azure Client Secret: The Client secret that was configured
CXO Designer
In the CXO Designer, edit a free-format report using the Power BI control:
Add a control to the report, save and exit the layout mode. You will be able to configure the following settings:
Workspace Id: The identifier of the Workspace configured in the second section
Report Id: The identifier of a report added to the workspace
Dataset Id (optional): The identifier of the dataset. Optional, if not provided CXO will determine the dataset.
The values to configure for these two fields can be found in Power BI, by looking in the browser address bar. Open your report in Power BI:
-
Roles (optional): Enter one or
more RLS roles configured in the report. Use a semicolon (;) to separate multiple roles. If configured, the report data can be filtered based on the logged in user. The roles are defined in the Power BI desktop app:
In the example shown above, we are editing the role UserFilter. For the username() function, CXO will send the email address of the logged in user. The user's email address is the one being used for RLS.
This information can be used to identify the user and filter the data shown in the Power BI report. In this example, we use the email address to filter the data for the user greta.vontrapp@comma.de to the data of Germany and for the user juan.sanchez@comma.mx to the data of Mexico. You can create groups of users that have access to certain reports and filter the data based on the right DAX formula.
The Role field is optional, if not provided the Power BI data won’t be filtered based on a role.
-
Filter (optional): this field is used to filter the data in the report, based on the CXO POV filter. The filters are explained in Interaction Between CXO and Power BI Filters. It’s optional, if not entered, the data is presented without filter.
For more information, see Match EPM and Power BI Members.