Forum Discussion

gautamj's avatar
gautamj
New Member
2 years ago
Solved

REST API - Remove User Access Not Working

I want to revoke user access to a dataset using REST APIs. According to the documentation, I can use this API endpoint with `datasetUserAccessRight: None` to remove all the dataset permissions of the specified user.

 

Upon using this API endpoint, I get a 200 successful response, but the user still has access to the dataset. I also tried refreshing the user permissions as mentioned here.

 

Is there a bug in the API itself or is my request wrong?

EDIT: This issue happens only when I first grant access to a user via this API endpoint. After this, I can confirm that the user has been given the permissions using this API endpoint as well as by manually checking in PowerBI under Manage Permissions. Now, if I try to revoke access using this API endpoint, the user permission IS removed when checking using this API endpoint as well as in PowerBI Manage Permissions. However, the user still has access to the dataset.

 

SOLUTION: There was a link configured for the dataset that allowed Read access to everyone in the organization. Thus, even though I revoked the permission individually for the user, they were still able to view because of the link. Removing the global read access link solved the issue.

 

 

 

    headers = {
        'Content-Type': 'application/json',
        'Authorization': f'Bearer {access_token}'
    }

    api_url = f'https://api.powerbi.com/v1.0/myorg/groups/{group_id}/datasets/{dataset_id}/users'

    share_details = {
        "identifier": user,
        "principalType": "User",
        "datasetUserAccessRight": "None"
    }

    response = requests.put(api_url, headers=headers,
                            data=json.dumps(share_details))

 

 

  • SOLUTION: There was a link configured for the dataset that allowed Read access to everyone in the organization. Thus, even though I revoked the permission individually for the user, they were still able to view because of the link. Removing the global read access link solved the issue.

5 Replies

    • gautamj's avatar
      gautamj
      New Member

      Yes, the user is indeed removed from the list of users with access to the dataset under Manage Permissions in PowerBI. However, the user still has access to it.

  • aj1973's avatar
    aj1973
    Community Champion

    Hi gautamj 

    Are you the Dataset owner? Do you have all rights on the folder of the dataset? Please read the limitations of the API you might fall into one of them 

    • gautamj's avatar
      gautamj
      New Member

      I've updated my post. I am able to remove the user permissions, but it looks like the user still has access to the dataset.

  • SOLUTION: There was a link configured for the dataset that allowed Read access to everyone in the organization. Thus, even though I revoked the permission individually for the user, they were still able to view because of the link. Removing the global read access link solved the issue.