Power BI Installation and Configuration

 

Prerequisites

IMPORTANT: Before beginning setup of SharePoint for Connect 365, please ensure that the following setup steps have been completed:

Office 365 User Account creation with Power BI Pro License

This section describes creating a service account which Connect 365 will use when connecting to Power BI.

  1. Open the users page of the Office 356 admin portal
  2. Create a user account if one doesn't already exist
  3. Assign the user a Power BI Pro license

Azure AD Application Registration

This section describes creating an Azure AD Application which is needed to allow the service account authenticate to Power BI.

  1. In the Azure AD tenant where the user is located, create an app registration

  2. Create the application registration with the following values:
    • Name: Connect 365 - Power BI
    • Application type: Native
    • Redirect URI: assigned adoxiocloud.com domain.

  3. Open the created application registration

  4. Record the application ID for future reference

    Connect 365 Power BI Application ID ___________________________
  5. Open the registered application's permissions for Azure Active Directory

  6. Select Access the directory as the signed-in user and save

  7. Add the Power BI Service to the Required Permissions

  8. Add all delegated permissions

     

  9. Select grant permissions

Power BI Workspace Creation

This section describes creating a workspace in Power BI and assigning the service account to it.

  1. In the Power BI admin portal, with a Power BI Pro licensed user, create a new app workspace

  2. Add the service account to the workspace's members list and assign it the Admin role.

  3. Record the workspace ID for future reference. It's visible in the URL when opening the workspace.

    Power BI Workspace ID _____________________________
  4. Add any desired dashboards and reports to this workspace.

Dynamics 365 Solutions Import

Import the following managed solutions into the Dynamics 365 instance to create new security roles and configuration entities:

  1. AdoxioConnect365PowerBI_<version>_managed.zip

Dynamics 365 Security Role Assignment

Assign the Connect 365 Application User to the following security roles to allow it permissions to read data from the necessary entities used for the Power BI integration:

  1. Connect 365 Application – Power BI

Dynamics 365 Portals Site Settings creation

Create a new site setting named Connect365/Url with the following values:

Name Connect365/Url
Website Choose the appropriate website
Value https://<site-provided-name>.adoxiocloud.com

Dynamics 365 Portals Web Templates creation

Create a new web template named Connect 365 - Widget with the following values:

Name Connect 365 - Widget
Website Choose the appropriate website
Source Download as text

Create a new web template named Connect 365 - Power BI Content with the following values:

Name Connect 365 - Power BI Content
Website Choose the appropriate website
Source Download as text

Connect 365 Power BI Settings data entry

This section covers creating settings that Connect 365 will use to connect to Power BI.

  1. Open the Power BI Settings menu.

  2. Create setting records with the following values:
    Feature Name Type Value
    Power BI Application ID Single Line of Text Enter the recorded value Connect 365 Power BI Application ID.
    Power BI Service Account Password Single Line of Text Enter the password of the service account.
    Power BI Service Account Username Single Line of Text Enter the email address of the service account.
    Power BI Workspace ID Single Line of Text Enter the recorded value Power BI Workspace ID.
    Power BI Workspace Name Single Line of Text Enter the recorded value Power BI Workspace Name.

Connect 365 Power BI Content record creation

This section describes creating Power BI Content records for exposing Power BI dashboards, reports, and tiles in a portal.

  1. Navigate to the Power BI Content entity

  2. Create one or more records with the following values:
    Tab Field Name Field Value
    General Name A name for referencing this record
    General ResourceType Choose Dashboard, Report, or Tile based on the type of content to be displayed.
    Content Dashboard ID

    The Dashboard ID of the Dashboard or Tile to display.

    Refer to obtaining a dashboard ID for the value to use.

    Content Report ID

    The Report ID of the Report to display.

    Refer to obtaining a report ID for the value to use.

    Content Tile ID

    The Tile ID of the Tile to display.

    Refer to obtaining a tile ID for the value to use.

    Style Height The height of the content to display. Use a CSS value such as 500px.
    Style Width The width of the content to display. Use a CSS value such as 100%.
    Security Visibility

    Choose Public if the content should be visible to all site users.

    Choose Secured to Contacts to limit the content to a named list of contacts.

    Choose Secured to Accounts to limit the content to contacts belonging to named accounts.

    Security Contacts Select one or more contacts who should be allowed to view the content. This is only available when Visibility has been set to Secured to Contacts.
    Security Accounts Select one or more accounts who should be allowed to view the content. This is only available when Visibility has been set to Secured to Accounts.
    Security Use Row Level Security Enable this value to supply row level security parameters to Power BI during report rendering.
    Security Dataset IDs

    A comma separated list of dataset IDs that are applicable to the report being embedded.

    Refer to obtaining a dataset ID for the value to use.

    Note: as of 10/09/2017, only a single dataset ID is supported by Power BI according to https://docs.microsoft.com/en-us/power-bi/developer/embedded-row-level-security#applying-user-and-role-to-an-embed-token.

    Security Roles A comma separated list of role names to use when applying row level security in the report. The Power BI report must contain a role with a DAX expression that refers to the USERNAME() function for row level security to be performed by Power BI.
    Security Username Source

    The username source controls where Connect 365 should obtain the username to be supplied to Power BI

    • Contact ID: use the ID of the currently logged in portal contact as the username.
    • Account ID: use the parent account ID of the currently logged in portal contact as the username.
    • Contact Field: obtain the username value from the logged in portal contact, from the field specified by Contact Username Field
    • Account Field: obtain the username value from the logged in portal contact's parent account, from the field specified by Account Username Field
    • Value: use a fixed value as the username. This can be used to perform row level security filtering and have all viewers of the report should see the same filtered data.
    Security Username Value Used in conjunction with Username Source, to specify which field to obtain the username from, or a fixed value to user as the username.

Dynamics 365 Portals Web Page liquid code to surface Power BI Content

Insert the following Liquid code in a web page's Copy field to surface the Power BI content:

Template "Connect 365 - Power BI Content" not found.

References

Please refer to the following documentation from Microsoft for more details on report authoring with row-level security and DAX rules: