Forum Discussion

Jhu23's avatar
Jhu23
Frequent Visitor
5 years ago
Solved

How to test RLS for all reports that share a single dataset?

Hi all,

 

I need your help!

 

I have a single shared dataset that feeds 3 separate reports (A, B, and C). 

 

 

Report A contains the actual dataset.

 

Reports B and C reference Report A's dataset.

 

Each report's RLS set up is different. If I go to the Dataset's security settings and click on "Test as role", it always takes me to Report A. This means I can positively confirm that my RLS rules are working for Report A, but how can I do the same for Reports B and C? I even tried publishing Report B, and then immediately going to "Test as role", but it still directs me to Report A.

 

I'm also not able to test the RLS logic in the actual desktop files for Reports B and C because I'm connected to the dataset on the PBI service (Modeling tab is greyed out).

 

Any thoughts on what I'm doing wrong? Thanks all!

  • Anonymous's avatar
    Anonymous
    5 years ago

    hi Jhu23

     

    I tested the particular scenario and I am able to toggle between 2 reports - 1 built on the data model and another which is using the same data model as a shared dataset. 

     

    If you have assigned users to the different security groups then you would need to assign similar security at report level as well so users just see the report they need to see. 

     

    Please mark the post as a solution if my comment helped with solving your issue. Thanks! 

     

     

     

     

18 Replies

  • Reopening this post, as Power BI team closed this opportunity with last update of Power BI Service.

     

    Do we know how RLS could be tested in shared datasets, as we cannot expand view on reports inside given workspace? 

     

    • LalitHCL's avatar
      LalitHCL
      Advocate I

      i know of 2 options to test RLS on shared dataset. 

      First, you can create a tabular visual on shareddataset pbix, containing all columns.When you deploy that PBIX you will have a report which you can use to test RLS, using RLS "test as role" functionality

      Second, is by creating a embedded application (a kind of simulator), which can have input as user email and role id.

    • Anonymous's avatar
      Anonymous
      Not applicable

      I am also looking for a solution to the same problem

  • Anonymous's avatar
    Anonymous
    Not applicable

    hi Jhu23, Have you created seperate roles for each of the reports? 

    If you have the data setup correctly, you can defined a role for each report and then grant access to specific roles for each of the reports. 

     

    You can refer to the Mocrosoft Docs link for additional information: 

    https://docs.microsoft.com/en-us/power-bi/guidance/rls-guidance

     

    Please mark the post as a solution if my comment helped with solving your issue. Thanks!   

    • Jhu23's avatar
      Jhu23
      Frequent Visitor

      Sumanth - Yes, I have new roles for each report.  I believe the RLS is set up correctly and that end-users will only be able to see the data that they are authorized for, however I want to be able to actually test this using the "Test as role" feature.  However, I am only allowed to "test as role" for Report A, never for Reports B and C.  

       

      Greg - I am testing from the original dataset.  

      • Anonymous's avatar
        Anonymous
        Not applicable

        hi Jhu23

         

        I tested the particular scenario and I am able to toggle between 2 reports - 1 built on the data model and another which is using the same data model as a shared dataset. 

         

        If you have assigned users to the different security groups then you would need to assign similar security at report level as well so users just see the report they need to see. 

         

        Please mark the post as a solution if my comment helped with solving your issue. Thanks!