Power BI Sentinel: Setup Guide
Follow each section to get your environment fully configured, your progress will save in browser
Welcome to the setup guide
Most organisations complete setup in a few hours. Select your role above to filter to your steps, or browse all sections in order. Your progress is automatically saved in your browser.
Select your server region
Your setup steps contain region-specific configuration values including IP addresses, network firewall scripts, and portal URLs. Selecting the wrong region will result in a failed connection.
This guide walks through 7 steps across three roles. Use the View as filter above to show only your steps, or work through everything in order.
Progress by step:
Authorise Power BI Sentinel
Microsoft requires a Global Admin to approve Power BI Sentinel's access to your Power BI environment. One-time, ~2 minutes.
ℹ About this step
Power BI Sentinel needs permission to read your Microsoft 365 and Power BI environment. This step registers it as an Enterprise Application in your M365 tenant through a one-time admin consent that unlocks access for all future users. Once done, anyone you invite to the portal will be able to authenticate without repeating this process. The Global Admin completing this step will not gain access to the Power BI Sentinel portal itself. They are purely approving the application's permissions to operate within your tenant.
When accepting the permissions request, you may see a checkbox labelled "Consent on behalf of your organisation". Tick this before clicking Accept.
Why this matters: if you accept without ticking this box, Power BI Sentinel will only be authorised for your individual Global Admin account. Other users in your organisation won't be able to sign in to the Power BI Sentinel portal, as Microsoft won't have recorded consent at the tenant level.
Ticking the box grants consent for the entire tenant, meaning any user you invite to the portal will be able to authenticate without needing to go through this approval step again.
Storage Account
Create an Azure Storage Account to hold your report backups, then connect it to Power BI Sentinel.
ℹ About this step
Power BI Sentinel stores backup copies of your Power BI reports as PBIX files in an Azure Storage Account within your own Azure subscription, so your report data never leaves your control. This step covers creating the storage account with the correct configuration, then opening a secure network path for Power BI Sentinel to write to it. Estimated cost: approximately £0.008 per GB per month on Cool tier.
2a. Create Azure Storage Account
Power BI Sentinel stores backup copies of your Power BI reports in your own Azure Storage, so your data never leaves your control.
- Choose Subscription, Resource Group, and a unique lowercase name (e.g.
companysentinelbackup) - Performance tab: Standard · StorageV2 · Cool · LRS or GRS
- Advanced tab: Enable Hierarchical Namespace
- Click Review + Create then Create
Once created, navigate to your storage account and go to Access Keys in the left-hand menu. Copy either connection string and send it to the person who will be configuring the Power BI Sentinel portal.
Your connection string will look like this:
2b. Configure Network Access
Open a secure network path so Power BI Sentinel's servers can reach your storage account. Choose one method based on your network setup.
Replace the placeholders with your actual values, then paste into Cloud Shell:
Verify under Storage account → Networking. You should see two new Virtual Network entries.
--subscription "YOUR_SUBSCRIPTION_ID" to the end of each of the two az storage account network-rule add lines.- Go to your Storage Account → Settings → Properties
- Copy the Resource ID
- Email to help@powerbisentinel.com
- Once Power BI Sentinel creates the endpoint, approve the pending connection under Networking
SQL Database
Create an Azure SQL Database to store usage analytics and audit data, then connect it to Power BI Sentinel.
ℹ About this step
The Azure SQL Database is the core data store for Power BI Sentinel. Everything it collects (usage analytics, audit logs, workspace change history, data lineage, user permissions, and governance data) is written here each night. The pre-built Power BI report templates connect directly to this database to power your dashboards. This step covers creating the database, ensuring the connected account can manage the schema, and opening network access so Power BI Sentinel's servers can reach it. Estimated cost: approximately £58 per month at the recommended S2 50 DTU tier.
3a. Create Azure SQL Database
Power BI Sentinel uses this database to store usage analytics, audit logs, change history, and lineage data.
- Same Subscription & Resource Group as your storage account
- Name it e.g.
PowerBISentinel - Create a new SQL Server and save the admin credentials
- Click Configure database → switch to DTU-based → Standard · S2 · 50 DTU · 250 GB
- Click Review + Create then Create
db_owner role membershipWe recommend creating a dedicated SQL account to manage the Power BI Sentinel database connection, rather than reusing an existing admin account. This account must have the db_owner fixed database role (or at minimum db_ddladmin).
Why DDL permissions matter: Power BI Sentinel needs to create and manage its own database schema (tables, indexes, views, and stored procedures). Without DDL permissions, future schema updates will fail.
Minimum permissions required:
| Object type | Minimum permission |
|---|---|
| Tables | CREATE TABLE |
| Indexes | ALTER on the relevant tables |
| Views | CREATE VIEW |
| Stored procedures | CREATE PROCEDURE |
db_owner fixed database role, which covers all of the above. Alternatively, db_ddladmin will grant DDL permissions without full ownership.Navigate to your SQL Database → Connection strings → ADO.NET tab. Copy the connection string and replace {your_password} with your actual password.
User ID and Password. Use the SQL authentication tab or Active Directory - Password tab - not Active Directory Integrated, which uses MFA.Your connection string will look like this:
⚠ Replace {your_password} with your actual password before sharing.
3b. Configure Network Access
Open firewall access so Power BI Sentinel's servers can reach your SQL database, and ensure your team can connect from Power BI Desktop.
Also add your own office IP range so your team can connect Power BI Desktop to the database.
- Go to your SQL Server (not the database) → Settings → Properties
- Copy the Resource ID and email to help@powerbisentinel.com
- Approve the pending connection in SQL Server → Networking once notified
Configure Power BI Tenant Settings
Three settings need to be enabled in the Power BI Admin portal to unlock Power BI Sentinel's full feature set.
ℹ About this step
Three settings in the Power BI Admin portal must be switched on before Power BI Sentinel can access the data it needs. Enabling PBIX file downloads allows Power BI Sentinel to back up your reports. The XMLA endpoint setting is required for dataset documentation, semantic search, and data lineage features. Service Principal API access must be enabled if you plan to connect via Service Principal, which is strongly recommended for all organisations and is mandatory if your organisation uses PIM.
- In Tenant settings → Export and sharing settings
- Find "Download reports" and enable it
- Admin portal → Tenant settings → Integration settings
- Find "Allow XMLA endpoints and Analyze in Excel..." and enable it
Setting 1: Tenant settings → Developer settings → "Service principals can call Fabric public API"
Setting 2: Tenant settings → Admin API settings → "Service principals can access read-only admin APIs"
⚠ If your org uses PIM, a Service Principal is mandatory.
Configure Power BI Workspace Access
Choose how Power BI Sentinel will connect to your tenant to collect metadata. Each option has different data coverage and ongoing maintenance requirements.
If your organisation has a large number of workspaces and manually adding your admin account to each one is impractical, you can request a PowerShell script from help@powerbisentinel.com that can automate this process.
→ Set up Service Principal (required for PIM)
A Service Principal cannot collect every data type. Even when using a Service Principal as the primary connection, a Power BI Admin user should also sign in to the Power BI Sentinel portal approximately every 90 days to ensure complete data coverage.
The following data is only accessible via a Power BI Admin user account:
- Documentation: Column & Measure Usage
- Change Tracking
- Apps Data
Set Up a Service Principal
A Service Principal is a dedicated app-based identity for Power BI Sentinel to use instead of a personal account. It avoids token expiry, provides more reliable access, and is strongly recommended for most organisations.
ℹ About this step
Instead of connecting Power BI Sentinel via a personal user account, a Service Principal uses a dedicated Azure App Registration as the identity. This eliminates the token expiry problem with user accounts (which expire roughly every 90 days and require manual re-authentication) and provides a more secure, long-lived connection. The Service Principal can also automatically grant itself Contributor access to all current and future workspaces. Strongly recommended for all organisations. Mandatory if your organisation uses PIM.
- Click New Registration
- Set a name (e.g.
PowerBISentinel) - Select Accounts in this organizational directory only
- In the Redirect URI dropdown, select Web
- Click Register
- Go to Certificates & Secrets → Client secrets → New client secret
- Set expiry to 24 months
- Important: immediately copy the Value field. You cannot view it again.
Microsoft Graph (Delegated)
User.Read(required to log in)
Power BI Service (Delegated)
App.Read.AllCapacity.Read.AllDashboard.Read.AllDataflow.Read.AllDataset.Read.AllDataset.ReadWrite.All(required for report backups)Gateway.Read.AllLakehouse.Read.All(optional, for Fabric Lakehouse data)Pipeline.Read.All(optional, for pipeline data)Report.Read.AllReport.ReadWrite.All(required for report backups)StorageAccount.Read.AllStorageAccount.ReadWrite.All(required for backups)Tenant.Read.AllTenant.ReadWrite.All(required for SP workspace access)Workspace.Read.AllWorkspace.ReadWrite.All(required for SP workspace access)
Microsoft Graph (Application, optional)
Directory.Read.All(optional, for Entra Groups and Licence data)
- Click New Group, name it e.g.
PowerBISentinel-SP - Add your App Registration as a member
- Click Create
Sign In & Configure Power BI Sentinel Portal
Connect Power BI Sentinel to your Azure resources, configure your user permissions, and set which workspaces to monitor.
ℹ About this step
With your Azure Storage Account and SQL Database in place, this step connects Power BI Sentinel to both via the portal's built-in configuration wizard. For each resource you can choose between simple credential-based authentication or a Service Principal for a more secure, key-free connection. Once both connections are confirmed, Power BI Sentinel will run its first full data collection overnight. The final substep configures your user-level API permissions to unlock additional reporting features.
6a. Connect Azure Storage Account
Sign in to the portal and open the setup wizard, then choose your preferred authentication method for the storage connection.
- Click Setup Wizard on the Storage Account tab
- Paste your Azure Storage connection string (from Step 2)
- Leave Authentication Method set to Storage Account Key
- Click Save. The wizard will display 4 green ticks to confirm success.
You have two options - either is fine:
- Reuse an existing App Registration: If you have already completed the optional Service Principal step, you can use that same App Registration here. The storage credentials are stored independently, so there is no conflict with the tenant connection.
- Create a new App Registration: If you have not yet set up a Service Principal, follow the steps in the Service Principal step of this guide to create one, then return here to continue.
Either way, have your Application (Client) ID and a valid Client Secret ready before continuing to the next step.
- Open the Storage Account Setup Wizard in the portal
- Under Authentication Method, select Service Principal
- Paste your Azure Storage connection string (from Step 2), removing
AccountKey=orSharedAccessSignature=if present - Enter your Application (Client) ID and Client Secret in the Service Principal Credentials section
- Click Save Credentials
- Run the Azure CLI commands below to grant the Service Principal the required role on your storage account
6b. Connect Azure SQL Database
Choose your preferred authentication method for the Azure SQL Database connection.
- Click Setup Wizard on the SQL Database tab
- Paste your Azure SQL Database connection string (from Step 3)
- Leave Authentication Method set to SQL User Credentials
- Click Save. The wizard will display 4 green ticks to confirm success.
You have two options - either is fine:
- Reuse an existing App Registration: If you have already completed the optional Service Principal step, you can use that same App Registration here. The SQL credentials are stored independently, so there is no conflict with the tenant connection.
- Create a new App Registration: If you have not yet set up a Service Principal, follow the steps in the Service Principal step of this guide to create one, then return here to continue.
Either way, have your Application (Client) ID and a valid Client Secret ready before continuing to the next step.
- Open the SQL Database Setup Wizard in the portal
- Under Authentication Method, select Service Principal
- Paste your Azure SQL connection string (from Step 3), removing
User ID=andPassword=if present - Enter your Application (Client) ID and Client Secret in the Service Principal Credentials section
- Click Save Credentials
- Run the SQL commands below to grant the Service Principal access to your database
Step 1 of 2: Run on the master database
Requires the loginmanager or sysadmin role. This creates the server-level login for the Service Principal.
Step 2 of 2: Run on your Power BI Sentinel database
Switch to the database created in Step 3. This creates the database user and grants it full schema management rights.
6c. Permissions Configuration (optional for Service Principal users)
Configure the API permissions for your logged-in user account. The core Power BI permissions were granted when your M365 admin authorised the app in Step 1, but there are optional permissions you can activate to extract more detailed data.
This will open the permissions summary page. You will see two tabs: a Quick permissions tab for enabling groups at once, and an Individual permissions tab for granular control.
The core Power BI permissions (listed as Required below) will already be active from the M365 admin consent in Step 1. The optional permissions can be activated individually to unlock additional features.
Full permissions reference
| Power BI permissions | ||
| Scope | Description | Status |
|---|---|---|
App.Read.All | View all Power BI apps | Required |
Capacity.Read.All | View all capacities | Required |
Dashboard.Read.All | View all dashboards | Required |
Dataflow.Read.All | View all dataflows | Required |
Dataset.Read.All | View all datasets | Required |
Gateway.Read.All | View all gateways | Required |
Report.Read.All | View all reports | Required |
Tenant.Read.All | View all content in Power BI tenant | Required |
Workspace.Read.All | View all workspaces | Required |
| Fabric permissions | ||
Pipeline.Read.All | View all deployment pipelines | Optional |
Lakehouse.Read.All | View all lakehouses | Optional |
| ABF Backup permissions | ||
Dataset.ReadWrite.All | Read and write all datasets (required for ABF dataset backups) | Optional |
StorageAccount.Read.All | View all storage accounts (required for ABF dataset backups) | Optional |
StorageAccount.ReadWrite.All | Read and write all storage accounts (required for ABF dataset backups) | Optional |
| Service Principal permissions | ||
Tenant.ReadWrite.All | Required for SP to be assigned to workspaces | Optional |
Workspace.ReadWrite.All | Required for SP to be assigned to workspaces | Optional |
| Microsoft Graph permissions | ||
Directory.Read.All | Read directory data (Entra groups, users, and apps) | Recommended |
User.Read.All | Read all users' full profiles (for user licence data) | Optional |
Directory.Read.All (strongly recommended)Directory.Read.All is strongly recommended. Without it, Power BI Sentinel cannot resolve Entra group memberships or display licensing data in your reports.Click the toggle next to Directory.Read.All in the Individual permissions list. Your browser will log you out and back in to confirm the change.
Common optional permissions to consider:
Dataset.ReadWrite.All+StorageAccount.ReadWrite.Allif you plan to use ABF dataset backupsPipeline.Read.Allif you use Power BI deployment pipelinesLakehouse.Read.Allif you use Fabric LakehousesUser.Read.Allfor detailed user licence reporting
Remember: each permission will trigger a sign-out and sign-in cycle when activated.
6d. Service Principal Configuration
Connect your Service Principal to the Power BI Sentinel portal and configure workspace access settings.
- Go to the Configure screen in the Power BI Sentinel portal
- Under Server Config, enable "Use Service Principal"
- Enter your Client ID and Client Secret
- Click Save
Advanced options
Always Use Service Principal for Backups
Uses the Service Principal as the primary account for all backups.
Only Use Service Principal
Disables fallback to other accounts. Leave disabled unless advised by support.
Grant Service Principal "Contributor" access to all workspaces automatically
When enabled, the Service Principal will automatically assign itself Contributor access to every workspace in your tenant, including workspaces created in the future.
Activate these two permissions in the portal to unlock this option:
🔗portal.powerbisentinel.com/Config/Permissions↗| Scope | Description |
|---|---|
Tenant.ReadWrite.All | Required for the SP to be assigned to workspaces |
Workspace.ReadWrite.All | Required for the SP to be assigned to workspaces |
How this works
The Service Principal uses the Power BI Admin user's access token to visit each workspace and update its own membership to Contributor. The admin does not need to remain actively signed in - their token simply needs to be active, which it will be within 90 days of their last sign-in.
Invite Users & Connect Report Templates
Add your team to the Power BI Sentinel portal and connect the pre-built Power BI dashboards to start exploring your data.
ℹ About this step
The final step is to invite your colleagues to the portal and connect the pre-built Power BI report templates to your SQL database from Step 3. The templates (covering usage dashboards, audit logs, data lineage maps, and permissions reports) are downloaded from powerbisentinel.com/reports and connect via the connection string from Step 3. Reports will populate with data once the first overnight scan has completed. Additional users can be invited to the portal at any time from the Home screen.
- Wait for the first overnight scan to complete
- Download templates from powerbisentinel.com/reports
- Open in Power BI Desktop and enter your Azure SQL connection string from step 3
- Templates include: usage dashboards, audit logs, lineage maps, permissions reports