Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Calling all Data Engineers! Fabric Data Engineer (Exam DP-700) live sessions are back! Starting October 16th. Sign up.

Reply
Anonymous
Not applicable

How to Batch Add User Permissions to a Report in Power BI Report Server

I need to add permissions for users in the reports on Power BI Report Server. There are more than 1000 users that need to be added, and I have a list of users. However, due to IT restrictions, I cannot use AD. Currently, I can add them one by one in the web portal, but since there are so many users, adding them this way is very cumbersome. Therefore, I need to add them in bulk. Additionally, for Row-level security (RLS), it is also necessary to add user permissions in bulk. I think it's not possible to achieve this through the UI interface and would need to use API calls or programming methods to accomplish this.

 

After reviewing the following three official documents, it seems that there is no API information regarding this operation.

1. Modify or delete a role assignment (SSRS web portal) => Modify or delete an item role assignment

https://learn.microsoft.com/en-us/sql/reporting-services/security/role-assignments-modify-or-delete?...

2. Row-level security (RLS) in Power BI Report Server => add-members-to-roles

https://learn.microsoft.com/en-us/power-bi/report-server/row-level-security-report-server?source=rec...

3. Developer handbook overview, Power BI Report Server => API
https://learn.microsoft.com/en-us/power-bi/report-server/developer-handbook-overview#apis

 

Furthermore, I am very regretful to see that the Power BI Service API does not include an API for adding users to reports. Based on this description, it is very likely that Power BI Report Server also does not have this API

Re: Add users access on a specific report/Data in ... - Microsoft Fabric Community

 

Could you please let me know if the above requirements can be met? How can they be achieved?

Or, Is there a way to add 1,000 users in bulk to a group using PowerShell on Power BI Report Server? This way, I only need to add one group in the Portal.

4 REPLIES 4
hackcrr
Super User
Super User

hi, @Anonymous 

There is no direct PowerShell cmdlet or API for batch adding users to reports or row-level security (RLS) roles in Power BI Reporting Server. However, you can use the ReportingServicesTools PowerShell module to automate the process of adding users to reports and RLS roles.

The ReportingServicesTools PowerShell module provides cmdlets that can be used to manage all aspects of the Power BI Reporting Server, including creating and modifying roles and assigning users to them.

To accomplish this task using PowerShell, you need to write custom scripts that utilize the ReportingServicesTools module. This will involve the following steps:

Import the ReportingServicesTools module >> Authenticate using the Power BI Reporting Server >> Retrieve existing roles for the report or RLS >> Create new roles or update existing roles as needed >> Add users to the appropriate roles.
The following is a sample PowerShell script that demonstrates how to add multiple users to an RLS role:

# Import the ReportingServicesTools module
Import-Module ReportingServicesTools

# Connect to the Power BI Report Server
$serverUrl = "https://myreportserver.contoso.com/reportserver"
$credential = Get-Credential
Connect-RsReportServer -ReportServerUrl $serverUrl -Credential $credential

# Retrieve the existing RLS roles for a report
$reportPath = "/path/to/report"
$roles = Get-RsRole -RsFolder $reportPath

# Find the existing RLS role you want to add users to
$roleName = "MyRLSRole"
$role = $roles | Where-Object { $_.Name -eq $roleName }

# Add users to the RLS role
$users = @("DOMAIN\user1", "DOMAIN\user2", "DOMAIN\user3")
foreach ($user in $users) {
    Add-RsRoleUser -RsFolder $reportPath -RoleName $roleName -UserName $user
}

 

If I have answered your question, please mark my reply as solution and kudos to this post, thank you!

 

 

Your script looks amazing!!

However my ReportingServicesTools PowerShell module doesn't recognize the functions that you used :

 

 

Get-RsRole
Add-RsRoleUser

 

 

Could you help please?

lbendlin
Super User
Super User

 due to IT restrictions, I cannot use AD.

Please explain.   They won't let you use distribution lists?

Anonymous
Not applicable

Yes, for AD, a special application needs to be made to the headquarters. The approval process is cumbersome, so we have abandoned the AD approach

Helpful resources

Announcements
FabCon Global Hackathon Carousel

FabCon Global Hackathon

Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.