Forum Discussion

sumanthkakarla's avatar
1 year ago
Solved

How to filter dimension based on Dynamic RLS applied to another dimension

I have this below data model where i have implemented Dynamic RLS, however the three visual filters are getting populated from Fact table which is taking lot of time to load the filters, to get rid of this kind of approach i have introduced three new dim tables where i am deriving these using fact table to load the filters faster, however the issue that i am experiencing here is, if i pass a user to my Dynamic RLS the user is able to see all the healthsystems ratherthan the ones that are assigned to him and its similar problem to the rest of the two filters that i created ,

Here is how i created a new 4 dim tables based on fact tables, 

Health System Dimension = DISTINCT('TAT Only'[HEALTH_SYSTEM])
Facility = DISTINCT('TAT Only'[CLIENT_FACILITY_ACCOUNT_NAME])
TEST_ID = DISTINCT('TAT Only'[TEST_ID_NAME])
so i pass username as [email protected], where he has access to only two helath systems, 10 client faciclity account names and 20 Test ID names,  he is suppose to see only those values in my visual filters, rahter he is seeing the enire data, how can i restrict these three visual filters highlighted in yellow to show only data assigned to him when i click on that drop down filters
Any help is greatly appriciated.
Tried applying Cross filter direction to Both did not help, tried to apply "Apply sercurity filters in both dirctions" is only working for one relationship and for the rest of the relathionships i am getting this error. 

 

 
 

 

 
  • Hi sumanthkakarla , Please let us know if your issue is solved. If it is, consider marking the answer that helped 'Accept as Solution', so others with similar queries can find it easily. If not, please share the details.
    Thank you.

14 Replies

  • My issue got resolved by applying DAX to each and every dimension, i did not find any other solution othe than this at this point in time.

  • It is not clear which table has the USERPRINCIPALNAME() RLS rule applied, but that table must be able to control the parts of the data model where you want RLS to apply.  If you have bidirectional links then RLS will be ineffective unless it is applied on both sides.

    • sumanthkakarla's avatar
      sumanthkakarla
      Helper II

      Thank you for your replu lbendlin , here is the Dynamic RLS that i have applied to one of the bridge table.

      if the logged in user has access to 'ALL' accounts then i sould not apply any filters and show all the data to the logged in user if not i should display data only access to that particular user.

      • lbendlin's avatar
        lbendlin
        Super User

        That looks ok (aside from the unfortunate table name. The actual bridge table is client_lookup). 

         

        With this setup in place, what is the issue you are observing?

  • v-hashadapu's avatar
    v-hashadapu
    Community Support

    Hi sumanthkakarla , Please let us know if your issue is solved. If it is, consider marking the answer that helped 'Accept as Solution', so others with similar queries can find it easily. If not, please share the details.
    Thank you.

  • v-hashadapu's avatar
    v-hashadapu
    Community Support

    Hi @sumanthkakarla , Please let us know if your issue is solved. If it is, consider marking the answer that helped 'Accept as Solution', so others with similar queries can find it easily. If not, please share the details.
    Thank you.