<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Row Level Security with Multiple levels (Complicated) in DAX Commands and Tips</title>
    <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2663698#M79072</link>
    <description>&lt;P&gt;hi All,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i need to implement row level securtiy for multiple rows. Is it possible Please help.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Slicers used are three levels&lt;/P&gt;&lt;P&gt;1. Location&lt;/P&gt;&lt;P&gt;2.Business Area&lt;/P&gt;&lt;P&gt;3.Segment / Discipline&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;User should see slicer 1,2 &amp;amp; 3 only for his Location for other locations 2&amp;amp;3 slicers should be hidden. Can anyone please help??&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;For example&lt;/STRONG&gt; : Bangalore Location head should only be able to view business area and discipline only for Bangalore &amp;amp; also should see only other Location level data and not the other sub slicers Business area and Discplines&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 27 Jul 2022 03:59:23 GMT</pubDate>
    <dc:creator>Parikrish25</dc:creator>
    <dc:date>2022-07-27T03:59:23Z</dc:date>
    <item>
      <title>Row Level Security with Multiple levels (Complicated)</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2307630#M57226</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am looking to implement RLS for multiple levels.&lt;/P&gt;&lt;P&gt;I have 2 tables as below.&lt;/P&gt;&lt;P&gt;1) Groups&lt;/P&gt;&lt;P&gt;2) Tasks&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;Groups table will have , Group name and Member email.&lt;/P&gt;&lt;P&gt;&lt;img /&gt;&lt;/P&gt;&lt;P&gt;And tasks will have below columns&lt;/P&gt;&lt;P&gt;&lt;img /&gt;&lt;/P&gt;&lt;P&gt;Upon login by the user i want to filter my report in below ways.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;Rule: 1) all the records should be visible wherer Isrestricted = NO for every user.&lt;BR /&gt;Rule 2: 2) Up on login by User, Rule 1 above should be applied and also, Isrestricted group = Yes and it should look at group table who is the user and how many groups the user is part of and only those groups in Tasks table should be filtered.&lt;BR /&gt;Rule 3: 3) Irrespective of above, who ever part of submitted by in the tasks table they have to see all the submitted by records along with Isrestricted access = NO.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have tried relaly very hard to crack this and finally coming here for help from great minds.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Attaching the PBIX for your perusal. Appriciate your help guys.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://1drv.ms/u/s!ApY7Qk9reuaNiw9L76Qr3dkIwHC6?e=LAe1al" target="_blank" rel="noopener"&gt;https://1drv.ms/u/s!ApY7Qk9reuaNiw9L76Qr3dkIwHC6?e=LAe1al&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="81077" data-lia-user-login="Pragati11" class="lia-mention lia-mention-user"&gt;Pragati11&lt;/a&gt;&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="148838" data-lia-user-login="amitchandak" class="lia-mention lia-mention-user"&gt;amitchandak&lt;/a&gt;&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="343431" data-lia-user-login="ValtteriN" class="lia-mention lia-mention-user"&gt;ValtteriN&lt;/a&gt;&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="313" data-lia-user-login="Greg_Deckler" class="lia-mention lia-mention-user"&gt;Greg_Deckler&lt;/a&gt;&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="38" data-lia-user-login="GilbertQ" class="lia-mention lia-mention-user"&gt;GilbertQ&lt;/a&gt;&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="38927" data-lia-user-login="MikeJohnsonZA" class="lia-mention lia-mention-user"&gt;MikeJohnsonZA&lt;/a&gt;&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="39298" data-lia-user-login="AlexisOlson" class="lia-mention lia-mention-user"&gt;AlexisOlson&lt;/a&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 28 Jan 2022 15:15:30 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2307630#M57226</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2022-01-28T15:15:30Z</dc:date>
    </item>
    <item>
      <title>Re: Row Level Security with Multiple levels (Complicated)</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2308046#M57268</link>
      <description>&lt;P&gt;Is this the filtering expression you're after?&lt;/P&gt;
&lt;LI-CODE lang="php"&gt;Tasks[SubmittedBy] = USERPRINCIPALNAME ()
    || Tasks[IsRestricted] = "No"
    || Tasks[RestrictedAccess]
        IN CALCULATETABLE (
            VALUES ( Groups[GroupName] ),
            Groups[Members] = USERPRINCIPALNAME ()
        )&lt;/LI-CODE&gt;</description>
      <pubDate>Fri, 28 Jan 2022 15:51:50 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2308046#M57268</guid>
      <dc:creator>AlexisOlson</dc:creator>
      <dc:date>2022-01-28T15:51:50Z</dc:date>
    </item>
    <item>
      <title>Re: Row Level Security with Multiple levels (Complicated)</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2308186#M57279</link>
      <description>&lt;P&gt;Hi&amp;nbsp;Anonymous&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;you can distribute the rules into own role and then apply them additively to the users.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;img /&gt;&lt;/P&gt;
&lt;P&gt;&lt;img /&gt;&lt;/P&gt;
&lt;P&gt;&lt;img /&gt;&lt;/P&gt;
&lt;P&gt;&lt;img /&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 28 Jan 2022 17:07:36 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2308186#M57279</guid>
      <dc:creator>mwegener</dc:creator>
      <dc:date>2022-01-28T17:07:36Z</dc:date>
    </item>
    <item>
      <title>Re: Row Level Security with Multiple levels (Complicated)</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2309353#M57354</link>
      <description>&lt;P&gt;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="93408" data-lia-user-login="mwegener" class="lia-mention lia-mention-user"&gt;mwegener&lt;/a&gt;&amp;nbsp;thsi is really great. working out well. could you please explain me how you derive it?&amp;nbsp;&lt;/P&gt;&lt;P&gt;thanks for your time.&lt;/P&gt;</description>
      <pubDate>Sun, 30 Jan 2022 11:54:44 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2309353#M57354</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2022-01-30T11:54:44Z</dc:date>
    </item>
    <item>
      <title>Re: Row Level Security with Multiple levels (Complicated)</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2309355#M57355</link>
      <description>&lt;P&gt;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="39298" data-lia-user-login="AlexisOlson" class="lia-mention lia-mention-user"&gt;AlexisOlson&lt;/a&gt;&amp;nbsp;really brilliant and you got it with just one rule, i was doing 3 rules all these times.&lt;/P&gt;&lt;P&gt;but this is really great. thanks for your time.&lt;/P&gt;</description>
      <pubDate>Sun, 30 Jan 2022 11:55:48 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2309355#M57355</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2022-01-30T11:55:48Z</dc:date>
    </item>
    <item>
      <title>Re: Row Level Security with Multiple levels (Complicated)</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2310052#M57388</link>
      <description>&lt;P&gt;Hi Anonymous&lt;/a&gt;, I think the 3 roles align very well with your 3 rules and the split helps simplify the requirements. Rule 1 and 3 are quite simple as the criteria are already present in the Tasks table. Rule 2 is a typical pattern when assigning groups.&lt;/P&gt;</description>
      <pubDate>Mon, 31 Jan 2022 07:20:34 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2310052#M57388</guid>
      <dc:creator>mwegener</dc:creator>
      <dc:date>2022-01-31T07:20:34Z</dc:date>
    </item>
    <item>
      <title>Re: Row Level Security with Multiple levels (Complicated)</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2310148#M57392</link>
      <description>&lt;P&gt;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="93408" data-lia-user-login="mwegener" class="lia-mention lia-mention-user"&gt;mwegener&lt;/a&gt;&amp;nbsp;I agree, Rule 2 is little tricky.&lt;/P&gt;&lt;P&gt;can you please help me understand the DAX we used for Rule 2?&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;CONTAINS( FILTER(Groups, Groups[Members] = USERPRINCIPALNAME() ), Groups[GroupName] , [RestrictedAccess],&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;the same DAX expression when i add it as a measure it is throwing an error but the same is working in Roles.&lt;/SPAN&gt;&lt;SPAN&gt;How do you know that this expression will work in Roles?&lt;/SPAN&gt;&lt;SPAN&gt;we usually test the DAX in a measure and then we copy the same to Roles right then how did you know thaqt this will work? please answer me&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 31 Jan 2022 08:16:59 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2310148#M57392</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2022-01-31T08:16:59Z</dc:date>
    </item>
    <item>
      <title>Re: Row Level Security with Multiple levels (Complicated)</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2310227#M57404</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Hi, in this case the function must iterate over the Tasks table, so it is easier to check it over a calculated column.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 31 Jan 2022 09:05:46 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2310227#M57404</guid>
      <dc:creator>mwegener</dc:creator>
      <dc:date>2022-01-31T09:05:46Z</dc:date>
    </item>
    <item>
      <title>Re: Row Level Security with Multiple levels (Complicated)</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2663698#M79072</link>
      <description>&lt;P&gt;hi All,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i need to implement row level securtiy for multiple rows. Is it possible Please help.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Slicers used are three levels&lt;/P&gt;&lt;P&gt;1. Location&lt;/P&gt;&lt;P&gt;2.Business Area&lt;/P&gt;&lt;P&gt;3.Segment / Discipline&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;User should see slicer 1,2 &amp;amp; 3 only for his Location for other locations 2&amp;amp;3 slicers should be hidden. Can anyone please help??&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;For example&lt;/STRONG&gt; : Bangalore Location head should only be able to view business area and discipline only for Bangalore &amp;amp; also should see only other Location level data and not the other sub slicers Business area and Discplines&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 27 Jul 2022 03:59:23 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Row-Level-Security-with-Multiple-levels-Complicated/m-p/2663698#M79072</guid>
      <dc:creator>Parikrish25</dc:creator>
      <dc:date>2022-07-27T03:59:23Z</dc:date>
    </item>
  </channel>
</rss>

