One of the data sources in the Power Bi dataset points to Azure SQL straight (No Data Gateways). Service Principal can take ownership of the data set, but I do not see a way to assign credentials to the SQL data source inside this data set. In this case the credentials of the "managing" service principal would be fine.
2 Answers
You can fetch an access token for the resource / audience https://database.windows.net/. Then, update the credentials of the dataset's data source with the Power BI API.
I happen to have written a blog post about this. The core is a PowerShell script (from line 43) that you can use as is or as the blog post suggests within an Azure DevOps release pipeline:
https://www.tackytech.blog/how-to-make-a-service-principal-the-owner-of-a-power-bi-dataset/

- 51
- 2
Connecting to cloud datasources with powerbi happens also using a gateway, it is like a virtual one for the user. You can find more information here on how to update the credentials for the datasource created.
https://learn.microsoft.com/en-us/rest/api/power-bi/gateways/update-datasource
One draw back, is that using the oauth2 method to pass an accesstoken will work but you will need to trigger it frequently as the accesstoken will expire after one hour ( with default configuration from azureAD)

- 11
- 2