Integration with Power BI

Overview

Integrating Power BI with MangoApps allows companies to embed Power BI reports directly within MangoApps. This integration provides centralized access to valuable data insights, enhancing the workflow and user experience by eliminating the need to switch between applications. Users without individual Power BI licenses can view embedded reports within MangoApps, and data access can be restricted based on user roles using Row-level Security (RLS).

Using this integration offers several benefits. View and interact with Power BI reports directly within MangoApps, providing centralized access to important data. Additionally, users without Power BI licenses can access embedded reports, eliminating the need for additional licenses. Furthermore, the integration utilizes Row-level Security (RLS) to restrict data access based on user roles, ensuring that sensitive information is only accessible to authorized individuals.

Set up of this integration will include 3 parts: Service Principal in Azure Setup, PowerBI Setup, and finally MangoApps Setup.


Create a Service Principal on Azure

To create a service principal on Azure, start by logging into the Azure portal with administrator credentials. Navigate to the Enterprise Applications section and click on New Application.

Select the option to Create your own application and choose the setting to Integrate any other application you don't find in the gallery (Non-gallery).

Once the app is created, go to the Properties tab and select application registration. From the resulting redirect, navigate to the Certificates & Secrets section to create a client secret. One generated, copy and store the client secret value securely.

Finally, go to the Overview section and copy both the Application ID and Tenant ID.


Enabling Authentication in MangoApps

To enable authentication in MangoApps, log in to the MangoApps portal using admin credentials. Navigate to the admin portal and access the Integrations configuration menu. Then, select Power BI from the list of available integrations.

Enter the Application Secret, Tenant ID, and Application ID that you copied from Azure, and save the configuration. This will enable MangoApps to authenticate with Power BI using the service principal created above.


Create & Share Reports from Power BI

In Power BI

To create and share reports from Power BI, log in to Power BI using administrator credentials. Navigate to the Admin portal and enable the settings for Admin and Integration API under tenant settings.

Create a new workspace in Power BI, and then proceed to create a new report using a published semantic model or by manually adding data.

Once the report is created and finalized, go to the Manage access section and provide admin rights to the enterprise application (i.e. service principal) created in Azure.

Open the report and copy the Workspace ID and Report ID from the browser for later use.


In MangoApps

Transitioning over to MangoApps, first log in to your MangoApps using admin credentials. Navigate to the Home module, Company page, or Team pages where you want to add the Power BI widget.

Use the page tools to add a new page and select the Power BI widget from the widget gallery.

Enter the Workspace ID and Report ID that you copied earlier and save the widget settings.


Row Level Security (RLS)

Setup on Power BI

In the Power BI desktop application, navigate to the Modeling tab and select the Manage Roles option.

Define and apply row-level conditions based on the roles within your organization. After setting up these roles, publish the report to ensure that the row-level security settings are applied.


Setup on MangoApps

Within MangoApps, create a custom profile field that matches the role titles used in Power BI (e.g., Region). This can be done from the admin portal by navigating to Admin Portal -> Modules -> People Module -> Setup Custom Fields.

Assign the appropriate role values to users either manually through user profiles or via integration methods.

Enable Row-level Security by navigating to Admin-> Integrations-> Power BI in MangoApps and selecting the custom field for RLS.

Test the setup by logging in with different user roles to ensure data is correctly restricted.


Testing Considerations

To test the integration, an administrator should verify the service principal authentication credentials configured in MangoApps.

Ensure that Power BI workspace access permissions are granted to the service principal. Add valid workspace and report IDs to the MangoApps widget and validate that the report renders correctly. Additionally, test the Row-level Security settings by logging in with different user roles to confirm that data access is appropriately restricted.


End User Experience

Once the Power BI and MangoApps integration is successfully set up, users will be able to access Power BI reports directly within the MangoApps portal without needing a Power BI license. The reports will be accessible both on the web and on mobile devices, ensuring that users can view and interact with critical data insights from anywhere.


Security Considerations

Security is paramount when integrating Power BI with MangoApps. Ensure that the Azure admin shares the service principal details only with the network admin of MangoApps. Workspace access must be enabled for the service principal to maintain secure and controlled access to the data.


Rollout Recommendations

Before rolling out the integration to the entire organization, network admins should identify key members who will validate the Power BI reports in MangoApps. Test the integration in a sandbox environment or a private team within the production environment to ensure a smooth experience. Once validated, embed reports and test the user experience on both web and mobile applications to ensure everything functions as expected.


Congratulations, you have completed the integration. By following these detailed steps, you can seamlessly integrate Power BI with MangoApps, providing your team with centralized, role-based access to important data insights while enhancing workflow efficiency.

Last updated