The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
I am having real issues with permissions.
We have a service principle account with no permissions as stated in the documentation.
We have assigned it to a security group and gave the security group access to the 2 api permissions in fabric.
We are running using a fabric admin account. The initial notebook runs to create all objects but when we run the pipeline load fuam data we get an access error.
When I test the load capacity pipeline on its own the fuam pbi- service-api admin connection is successful but the relative capacities url fails
Solved! Go to Solution.
Just an update on this. I discovered my issue was that the group with the SP account in it was not a member of the Admin Monitoring Workspace. When i added the group to this the pipeline ran successfully.
You do not need to add ANY permissions to the SP account in Azure.
Just an update on this. I discovered my issue was that the group with the SP account in it was not a member of the Admin Monitoring Workspace. When i added the group to this the pipeline ran successfully.
You do not need to add ANY permissions to the SP account in Azure.
Hi @higgy7 ,
This sounds like a classic case of partial permission propagation with service principals in Fabric.
Here are a few things to double-check:
API Permissions Scope
Make sure the security group assigned to the service principal has both:
Admin Consent
Even if the permissions are assigned, they won’t take effect unless admin consent has been granted in Azure AD. You can verify this in the Azure portal under Enterprise Applications > API permissions.
Service Principal Role in Fabric
Ensure the service principal is added as a Fabric Admin or at least has Capacity Admin rights in the Fabric portal. Sometimes being in the security group isn’t enough unless the group itself is granted Fabric-level roles.
Token Scope
When generating the token for the service principal, make sure the scope includes:
https://analysis.windows.net/powerbi/api/.default
Otherwise, the token might not carry the right claims for capacity endpoints.
Let me know if you want help testing the token or checking the group setup.
If my response resolved your query, kindly mark it as the Accepted Solution to assist others. Additionally, I would be grateful for a 'Kudos' if you found my response helpful.
Hi Just on point 1. Does this not conflict with what has been described in the steps provided on github?
Yes it does, and I have seen it cause issues.
On a side note, are you using the latest version of the install from the fabric-toolbox collection?
https://github.com/microsoft/fabric-toolbox/tree/main/monitoring/fabric-unified-admin-monitoring
Hi Kevin, so does this mean that permissions DO need to be added within here?
No, if you follow the steps in the laest guidelines you should be just fine. Only issue may be your own permissions in Fabric.
Thanks i have been following those instructions and have had no luck so far. The only things that i might have done incorrectly and need to check/confirm are as follows:
Does SP have to be added to the Admin Monitoring Workspace?
Does SP have to be added as a capacity admin?
Does SP have to have grant admin consent turned off?
Good question. What I shared doesn’t contradict the GitHub steps, but rather adds some extra checks that are sometimes missed in real-world setups.
The GitHub guide usually assumes:
In practice, though, we often see issues when:
So no contradiction — just a few extra layers to double-check when things don’t behave as expected.
Let me know if you want to walk through your setup step-by-step and compare it with the GitHub flow.
If my response resolved your query, kindly mark it as the Accepted Solution to assist others. Additionally, I would be grateful for a 'Kudos' if you found my response helpful.
I think a step by step would be really useful if possible. Thanks
Sure, here’s a step-by-step guide to setting up a service principal for use with Fabric APIs and pipelines. This assumes you're using it for automation (like notebooks or pipelines) and need access to capacity or workspace-level resources.
Use a tool like Postman or a script to get a token:
Token URL:
https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token
Body (x-www-form-urlencoded):
client_id: <your-app-id> client_secret: <your-client-secret> scope: https://analysis.windows.net/powerbi/api/.default grant_type: client_credentials
Try calling a simple endpoint like:
GET https://api.powerbi.com/v1.0/myorg/capacities Authorization: Bearer <your-access-token>
If this works, your setup is good.7
Thank you i will give this a go. However, the instructions are not very clear then as it says
It specifically says without any api permissions then in your instructions you are assigning api permissions? Should the github not say what permissions need added instead of don't give any permissions ?
Great catch, and I totally get why that might seem confusing.
Here’s the clarification:
When the documentation says the service principal should have “no permissions,” it usually refers to not assigning any user-level roles or workspace access manually at first — especially when testing token generation or basic connectivity.
However, for the service principal to actually call Fabric or Power BI APIs, it absolutely needs API permissions assigned in Azure AD (Step 2 in the guide). These are application-level permissions like Tenant.Read.All or Capacity.Read.All, and they must be granted with admin consent.
So in short:
Let me know if you want me to walk through the permission scopes or show how to verify them in Azure.
Thanks for this, i guess my query then is isn't the permission applied via the following:
So within the admin settings of Fabric/Power BI rather than within the app registration? If this is the case i have added the SP to a security group and then added the group to the 2 settings stated
User | Count |
---|---|
21 | |
18 | |
6 | |
2 | |
2 |
User | Count |
---|---|
50 | |
49 | |
18 | |
6 | |
5 |