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

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
Anonymous
Not applicable

Url filter on Dataset query parameters

 https://docs.microsoft.com/en-us/power-bi/service-parameters  - Following these steps I can now just return the data I want to a specific user's report. The problem is that we have alot of users and uploading one report per user is not the solution for me. 

Is there any way I can upload one Report with a Query filter to my on-premise Report Server and dynamicly pass a UserId and the report only shows that user's data?

 

Regular report filters wont work since that filter show all users available and they can just filter on other users and show there data, which of course won't work. 

I don't know if I can use the new preview feature where filters can be hidden and be sure that that function will not dissapear. Since I'm using Report Server and Power BI Desktop (January) I'm not sure this is something that I can trust to work with the warnings being displayed at the moment opening a report from a newer version of PBI Desktop

 

Does anyone have any suggestions for me on how I can achieve this? 

4 REPLIES 4
ITGeek555
Helper II
Helper II

I do not know how you have configured the parameter and what data mode is in use (Import/DirectQuery/Live) but there are a couple of ways to effect limiting the data to only what a given user is allowed to see:

  1. Row Level Security is a possible answer (the parameter will not be required).  
  2. If the report uses a direct data source where the data is security trimmed per user then configuring the data source to connect in the user's security context will work (the parameter will not be required).
  3. Creating a SSAS tabular cube configured with row level security will work (and the parameter will not be required). Bonus with this approach is that you can create additional reports against the cube and RLS will be in effect. 
Anonymous
Not applicable

Thank you for the suggestions, I'll have a look at these ! 

 

For now it's DirectQuery but I'll need to make this work for Live connections as well. 

The parameter is set up like this : Anteckning 2019-05-13 080929 - Copy.png

 

And then i want to filter on the Id parameter in the URL http://localhost/Reports/powerbi/my-report?Id=myId

 

I've got custom secturity set up so if someone enters the wrong Id they won't get authenticated. So the only problem with this solution is that the report isn't filtered on Id

For Live Connections you do not need the parameter as SSAS cubes perform the RLS for you if you set it up in the cube and configure the report data source to connect to the cube in the security context of the user running the report.

 

In terms of the DirectQuery parameter, what is the data source type and how are you using the parameter value?

Anonymous
Not applicable

Okay I'll need to read up on Cubes and RLS

 

The parameter is used when querying the DB for data

i.e. SELECT * FROM data_table where CustomerId = Id

This query will then query the data_table, which contains data for all customers, and only return data for that CustomerId.

Helpful resources

Announcements
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel1

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.