This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreDid you hear? There's a new SQL AI Developer certification (DP-800). Start preparing now and be one of the first to get certified. Register now
Power BI’s mission is to empower every individual, team, and organization to make confident decisions with data. With the increased focus on governance, compliance, and policy, customers need increased visibility within the Power BI environment to support workflows related to these areas. Power BI administrators need to support access review audits, understand oversharing risks, and see who has access to Power BI assets.
Today, I am pleased to announce the Public Preview of a suite of new admin APIs that provide much-enhanced visibility into user access and permission levels. These new APIs allow you to programmatically retrieve user and permission information for most Power BI assets (reports, dashboards, datasets, dataflows, workspaces, and capacities), or asset permission for any user or security group. Additionally, we are enhancing the read-only scanner admin API by including user permission information in the scan results. With these versatile new tools, you will be able to easily produce access reports for various Power BI assets on demand. You can even automate and schedule reviews based this information to proactively analyze oversharing risk and sleep better at night.
To include user and permission information in the scan result, simply add the following parameter in the query string in the PostWorkspaceInfo API to initiate a scan (remember, the scanner API is designed as an asynchronous operation):
getArtifactUsers=true
POST https://api.powerbi.com/v1.0/myorg/admin/workspaces/getInfo?getArtifactUsers=true
{
"workspaces": [
{
"id": "d507422c-8d6d-4361-ac7a-30074a8cd0a1",
"name": "John Doe's workspace",
"type": "Workspace",
"state": "Active",
"isOnDedicatedCapacity": false,
"reports": [
{
"id": "d507422c-8d6d-4361-ac7a-30074a8cd0a1",
"name": "QuickCreate",
"datasetId": "d507422c-8d6d-4361-ac7a-30074a8cd0a1",
"createdDateTime": "2021-04-28T18:57:02.677",
"modifiedDateTime": "2021-04-28T18:57:02.677",
"modifiedBy": "john@contoso.com",
"sensitivityLabel": {
"labelId": "d507422c-8d6d-4361-ac7a-30074a8cd0a1"
},
"users": [
{
"reportUserAccessRight": "Owner",
"emailAddress": "john@contoso.com",
"displayName": "John Doe",
"identifier": "john@contoso.com",
"graphId": "d507422c-8d6d-4361-ac7a-30074a8cd0a1",
"principalType": "User"
},
// other users who have access to this report
]
},
// other reports
],
// similar structure with users[] for dashboard, dataset, dataflow
"users": [
{
"groupUserAccessRight": "Admin",
"emailAddress": "john@contoso.com",
"displayName": "John Doe",
"identifier": "john@contoso.com",
"graphId": "d507422c-8d6d-4361-ac7a-30074a8cd0a1",
"principalType": "User"
},
// other users who have access to this workspace
]
},
//other workspaces
]
}{
"reportUserAccessRight": "ReadReshare",
"displayName": "Whole Organization",
"identifier": "d507422c-8d6d-4361-ac7a-30074a8cd0a1",
"graphId": "d507422c-8d6d-4361-ac7a-30074a8cd0a1",
"principalType": "None"
}GET https://api.powerbi.com/v1.0/myorg/admin/reports/{reportId}/usersThe Power BI assets below are supported: capacity, workspace, report, dashboard, app, dataset, and dataflow. You can make similar HTTP calls to retrieve user access information for these assets, by replacing the “/reports/{reportId}” part with the asset of your choice.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.