Supplies are limited. Contact info@espc.tech right away to save your spot before the conference sells out.
Get your discountScore big with last-minute savings on the final tickets to FabCon Vienna. Secure your discount
How do I give my service principal profile access to a gateway datasource?
I'm currently trying to call https://docs.microsoft.com/en-us/rest/api/power-bi/gateways/add-datasource-user with gatewayid, datasourceid, identifier (service principal app id) and profile (service principal profile).
The API call is authenticated using the service principal in question. (not the profile)
The service principal is member of an AD security group that is "Admin" for the gateway, and "Owner" for the datasource.
The API call results in an "Unathourized" response.
Solved! Go to Solution.
Problem was solved by sending the correct object id as "identifier" to the API. Ref https://docs.microsoft.com/en-us/power-bi/developer/embedded/embedded-troubleshoot#what-is-the-diffe...
Problem was solved by sending the correct object id as "identifier" to the API. Ref https://docs.microsoft.com/en-us/power-bi/developer/embedded/embedded-troubleshoot#what-is-the-diffe...
Thanks, this was useful, I will only add this in case someone else needs it. The correct payload for a service principal profile is the one below:
{
"datasourceAccessRight": "Read",
"identifier": "{{Object ID}}", //fix, this is the enterprise application
"principalType":"App", //enterprise application
"profile": {
"id": "{{Service Principal Profile ID}}",
"displayName": "{{Service Principal Profile Name}}" //this is optional.
}
}
Gateway data sources are consumed by developer personas. The regular report users do not need to know about that setup at all. Are you saying that your service principal is a developer?
User | Count |
---|---|
10 | |
5 | |
4 | |
4 | |
3 |
User | Count |
---|---|
14 | |
9 | |
5 | |
5 | |
4 |