Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Hello everyone,
for a clients project, we created a powerbi dasboard connected to a serverless synapse analytics sql endpoint. The reports are published and functioning.
As the publisher of the dashboard puts his own token into the shared link, he has to renew the token every xy days which is not desirable. For that we want to change the credentials for powerbi accessing the synapse data to a service principal.
What we did for that in synapse:
- created service principal (sp) with client id and client secret
- made the sp to synapse administrator for being able to access the serverless endpoint
- sp has storage blob reader to the storage container where the data linked to synapse is stored
(this setup works as desired and was verified by connecting to synapse and querying data via dbeaver. Thus, the azure part is set up as desired)
What we did for that in powerbi:
- followed this guide and activated the needed developer settings
- same for this guide
- made the service principal admin in the powerbi workspace
- changed dataset credentials from originally using oauth login to service principal credentials
The error we get:
As soon as we revert the dataset connection away from service principal back to oauth, the report works again. As the synapse sql endpoint can be accessed with service principal credentials as well, the error can only be powerbi related.
Thank you in advance!
Patrick
Hello Ibendlin,
thank you for your response. I'm having trouble connecting with your answer. What is then the point of PowerBI allowing the user to connect to datasets using service principal connections when each report using this dataset then breaks with the generic error message above?
Is there any other solution sharing powerbi reports without having to renew the oauth token after a while?
Here's my take: A report has a UI. A service principal is not a user and cannot look at UIs. It can only work with the underlying data sources.
User | Count |
---|---|
5 | |
5 | |
3 | |
2 | |
2 |
User | Count |
---|---|
10 | |
7 | |
4 | |
4 | |
4 |