Forum Discussion

Gopal_PV's avatar
Gopal_PV
Helper III
1 year ago
Solved

How to implenent Dynamic RLS in Power BI Projects

Hi Folks,

 

I am new to RLS. Never worked . 

 

Can you please help me how to implemnt Dynamic RLS on Power BI. How companies implementing in relatime.

Ex Source: SQL Server, Excel

if you can detail that would be great help for me.

 

 

Regards,

 

    1. Create a User Mapping Table
      Prepare a table (from Excel or SQL Server) that maps users to specific data segments.                                                                                                                   

      UserEmail

      Region

      [email protected]

      East

       
    2. Load Data into Power BI
      Import both your main data (e.g., sales data with a 'Region' column) and the user mapping table into Power BI.
    3. Establish Relationships
      Create a relationship between the 'Region' field in both tables:

                   UserAccess[Region] β†’ SalesData[Region]

     

           4. Define RLS Roles in Power BI Desktop

               Navigate to Modeling β†’ Manage Roles.

               Create a new role (e.g., 'RegionalAccess').

               Apply the following DAX filter on the 'UserAccess' table:

               DAX

               [UserEmail] = USERPRINCIPALNAME()

     

               5. Test the Role
               Use Modeling β†’ View as Roles to simulate and verify the RLS behavior for different users.

     

               6. Publish and Assign Roles in Power BI Service

      • Publish the report to the Power BI Service.
      • In the workspace, go to Datasets β†’ Security.
      • Assign users to the defined roles.

     

    Refer these links for more details,

     

3 Replies

    1. Create a User Mapping Table
      Prepare a table (from Excel or SQL Server) that maps users to specific data segments.                                                                                                                   

      UserEmail

      Region

      [email protected]

      East

       
    2. Load Data into Power BI
      Import both your main data (e.g., sales data with a 'Region' column) and the user mapping table into Power BI.
    3. Establish Relationships
      Create a relationship between the 'Region' field in both tables:

                   UserAccess[Region] β†’ SalesData[Region]

     

           4. Define RLS Roles in Power BI Desktop

               Navigate to Modeling β†’ Manage Roles.

               Create a new role (e.g., 'RegionalAccess').

               Apply the following DAX filter on the 'UserAccess' table:

               DAX

               [UserEmail] = USERPRINCIPALNAME()

     

               5. Test the Role
               Use Modeling β†’ View as Roles to simulate and verify the RLS behavior for different users.

     

               6. Publish and Assign Roles in Power BI Service

      • Publish the report to the Power BI Service.
      • In the workspace, go to Datasets β†’ Security.
      • Assign users to the defined roles.

     

    Refer these links for more details,

     

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Gopal_PV ,

     

    We would like to follow up to see if the solution provided by the super user resolved your issue. Please let us know if you need any further assistance.

     

    If our super user response resolved your issue, please mark it as "Accept as solution" and click "Yes" if you found it helpful.

     

    Regards,

    B Manikanteswara Reddy

    • Anonymous's avatar
      Anonymous
      Not applicable

      Hi Gopal_PV ,

       

      As we haven’t heard back from you, we wanted to kindly follow up to check if the solution provided for the issue worked? or Let us know if you need any further assistance?

      If our response addressed, please mark it as Accept as solution and click Yes if you found it helpful.

       

      Regards,

      B Manikanteswara Reddy