<?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 RLS filtering based on sub-group membership in DAX Commands and Tips</title>
    <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4617202#M176695</link>
    <description>&lt;P&gt;Hi and glad to add more info if it helps (as with many, I can't share precise data so I apologize in advance). I have 2 huge tables:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;AllUserRaw&lt;/STRONG&gt; - contains a lengthy list of AD Service accounts with a column of "supportgroup" among others (lots of other columns of info that would interest the owners). That SupportGroup column contains the Service Now support group name per account. It also has a dedicated owner "OwenerSamAccountName" in addition to the support group:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;U&gt;SamAccountName&lt;/U&gt;&lt;/TD&gt;&lt;TD&gt;&lt;U&gt;SupportGroup&lt;/U&gt;&lt;/TD&gt;&lt;TD&gt;OwenerSamAccountName&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;serviceAccountABC&lt;/TD&gt;&lt;TD&gt;HelpdeskGroup&lt;/TD&gt;&lt;TD&gt;fred&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;serviceAccountZYX&lt;/TD&gt;&lt;TD&gt;HelpdeskGroup&lt;/TD&gt;&lt;TD&gt;jane&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;serviceAccountQWE&lt;/TD&gt;&lt;TD&gt;Janitors&lt;/TD&gt;&lt;TD&gt;tom&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;SnowGroups&lt;/STRONG&gt; - is a dump of Service Now that has columns "groupname" and the member's "usernames". Each group is enumerated and shows the username in each group:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;U&gt;GroupName&lt;/U&gt;&lt;/TD&gt;&lt;TD&gt;&lt;U&gt;Username&lt;/U&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;HelpdeskGroup&lt;/TD&gt;&lt;TD&gt;fred&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;HelpdeskGroup&lt;/TD&gt;&lt;TD&gt;sally&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Janitors&lt;/TD&gt;&lt;TD&gt;mcrib&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Janitors&lt;/TD&gt;&lt;TD&gt;fillet&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;The issue in a nutshell&lt;/STRONG&gt;: users connect to the dashboard using RLS and it works well to display the rows where they are the "direct owner" from the "AllUserRaw" table (this is easy to use RLS to match the UserPrincipalName to the Owner column). The issue is that if the logged in users is &lt;EM&gt;not&lt;/EM&gt; a direct owner, we still want to display the rows from the Raw Users if they are a member of a support group. (In this example, &lt;EM&gt;Sally&lt;/EM&gt; cannot see any rows because they are not the direct owner yet they are a member of the support group so they still should)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;What I tried&lt;/STRONG&gt;: I tried linking the 2 tables together in the model by the "groupName" but that throws a "many to many" error as each table has many duplicate values. (eg many service accounts can have the same support group and then the support group table has many people in the same group). I tried using a DAX created bridge table between them but the issue still exists that if Sally connects, the bridge doesn't work correctly and displays nothing.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I also tried creating a dynamic table using USERPRINCAPLNAME() that would only show support groups of the viewing user but PBI doesn't let you do that in dynamic tables.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;What I'm after&lt;/STRONG&gt;: I don't mind 2 separate table visuals if it helps/matters: 1 for the "direct view" and the other for "support group view". If there was a filter/DAX way of doing a "reverse lookup" to say "if you're a direct member &lt;STRONG&gt;OR you're a member of a support group attached to that account&lt;/STRONG&gt;" then show those rows. (eg filter on snowgroups based on who's logged in, get the unique group name(s) they are a member of as it could be many, and then for each group name, display the associated accounts to those groups)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I hope I'm just overthinking this but I'll try and answer any questions. Thanks in advance!&lt;/P&gt;</description>
    <pubDate>Wed, 19 Mar 2025 20:53:38 GMT</pubDate>
    <dc:creator>gettingupthere</dc:creator>
    <dc:date>2025-03-19T20:53:38Z</dc:date>
    <item>
      <title>RLS filtering based on sub-group membership</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4617202#M176695</link>
      <description>&lt;P&gt;Hi and glad to add more info if it helps (as with many, I can't share precise data so I apologize in advance). I have 2 huge tables:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;AllUserRaw&lt;/STRONG&gt; - contains a lengthy list of AD Service accounts with a column of "supportgroup" among others (lots of other columns of info that would interest the owners). That SupportGroup column contains the Service Now support group name per account. It also has a dedicated owner "OwenerSamAccountName" in addition to the support group:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;U&gt;SamAccountName&lt;/U&gt;&lt;/TD&gt;&lt;TD&gt;&lt;U&gt;SupportGroup&lt;/U&gt;&lt;/TD&gt;&lt;TD&gt;OwenerSamAccountName&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;serviceAccountABC&lt;/TD&gt;&lt;TD&gt;HelpdeskGroup&lt;/TD&gt;&lt;TD&gt;fred&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;serviceAccountZYX&lt;/TD&gt;&lt;TD&gt;HelpdeskGroup&lt;/TD&gt;&lt;TD&gt;jane&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;serviceAccountQWE&lt;/TD&gt;&lt;TD&gt;Janitors&lt;/TD&gt;&lt;TD&gt;tom&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;SnowGroups&lt;/STRONG&gt; - is a dump of Service Now that has columns "groupname" and the member's "usernames". Each group is enumerated and shows the username in each group:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;U&gt;GroupName&lt;/U&gt;&lt;/TD&gt;&lt;TD&gt;&lt;U&gt;Username&lt;/U&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;HelpdeskGroup&lt;/TD&gt;&lt;TD&gt;fred&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;HelpdeskGroup&lt;/TD&gt;&lt;TD&gt;sally&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Janitors&lt;/TD&gt;&lt;TD&gt;mcrib&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Janitors&lt;/TD&gt;&lt;TD&gt;fillet&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;The issue in a nutshell&lt;/STRONG&gt;: users connect to the dashboard using RLS and it works well to display the rows where they are the "direct owner" from the "AllUserRaw" table (this is easy to use RLS to match the UserPrincipalName to the Owner column). The issue is that if the logged in users is &lt;EM&gt;not&lt;/EM&gt; a direct owner, we still want to display the rows from the Raw Users if they are a member of a support group. (In this example, &lt;EM&gt;Sally&lt;/EM&gt; cannot see any rows because they are not the direct owner yet they are a member of the support group so they still should)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;What I tried&lt;/STRONG&gt;: I tried linking the 2 tables together in the model by the "groupName" but that throws a "many to many" error as each table has many duplicate values. (eg many service accounts can have the same support group and then the support group table has many people in the same group). I tried using a DAX created bridge table between them but the issue still exists that if Sally connects, the bridge doesn't work correctly and displays nothing.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I also tried creating a dynamic table using USERPRINCAPLNAME() that would only show support groups of the viewing user but PBI doesn't let you do that in dynamic tables.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;What I'm after&lt;/STRONG&gt;: I don't mind 2 separate table visuals if it helps/matters: 1 for the "direct view" and the other for "support group view". If there was a filter/DAX way of doing a "reverse lookup" to say "if you're a direct member &lt;STRONG&gt;OR you're a member of a support group attached to that account&lt;/STRONG&gt;" then show those rows. (eg filter on snowgroups based on who's logged in, get the unique group name(s) they are a member of as it could be many, and then for each group name, display the associated accounts to those groups)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I hope I'm just overthinking this but I'll try and answer any questions. Thanks in advance!&lt;/P&gt;</description>
      <pubDate>Wed, 19 Mar 2025 20:53:38 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4617202#M176695</guid>
      <dc:creator>gettingupthere</dc:creator>
      <dc:date>2025-03-19T20:53:38Z</dc:date>
    </item>
    <item>
      <title>Re: RLS filtering based on sub-group membership</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4617325#M176707</link>
      <description>&lt;P&gt;you can simplify your RLS rules by checking if USERPRINCIPALNAME() is in the same group as the ticket owner.&lt;/P&gt;</description>
      <pubDate>Wed, 19 Mar 2025 23:56:37 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4617325#M176707</guid>
      <dc:creator>lbendlin</dc:creator>
      <dc:date>2025-03-19T23:56:37Z</dc:date>
    </item>
    <item>
      <title>Re: RLS filtering based on sub-group membership</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4618377#M176742</link>
      <description>&lt;P&gt;I understand what you're saying and I also have that working. RLS will also filter the "supportGroup" table. The problem is that the "AllUserRaw" table will then not be what I would call "reverse filtered" based on the support Group table. In other words, both tables are easily filtered with RLS, but I can't display rows from the first based on the second.&lt;/P&gt;</description>
      <pubDate>Thu, 20 Mar 2025 14:25:10 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4618377#M176742</guid>
      <dc:creator>gettingupthere</dc:creator>
      <dc:date>2025-03-20T14:25:10Z</dc:date>
    </item>
    <item>
      <title>Re: RLS filtering based on sub-group membership</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4618772#M176762</link>
      <description>&lt;P&gt;Use OR conditions.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;(Personal note:&amp;nbsp; This is the moment in the process where you should ask yourself:" What is the value add of RLS? Is it really, really necessary?")&lt;/P&gt;</description>
      <pubDate>Thu, 20 Mar 2025 19:18:50 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4618772#M176762</guid>
      <dc:creator>lbendlin</dc:creator>
      <dc:date>2025-03-20T19:18:50Z</dc:date>
    </item>
    <item>
      <title>Re: RLS filtering based on sub-group membership</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4684894#M179437</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="1242121" data-lia-user-login="gettingupthere" class="lia-mention lia-mention-user"&gt;gettingupthere&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;May I ask if you have gotten this issue resolved?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If it is solved, please mark the helpful reply or share your solution and &lt;FONT color="#008000"&gt;&lt;STRONG&gt;&lt;I&gt;accept it as solution&lt;/I&gt;&lt;/STRONG&gt;&lt;/FONT&gt;, it will be helpful for other members of the community who have similar problems as yours to solve it faster.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;B Manikanteswara Reddy&lt;/P&gt;</description>
      <pubDate>Thu, 08 May 2025 12:31:40 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4684894#M179437</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2025-05-08T12:31:40Z</dc:date>
    </item>
    <item>
      <title>Re: RLS filtering based on sub-group membership</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4689112#M179580</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="1242121" data-lia-user-login="gettingupthere" class="lia-mention lia-mention-user"&gt;gettingupthere&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;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?&lt;/P&gt;
&lt;P&gt;If our response addressed, please mark it as &lt;FONT color="#008000"&gt;&lt;STRONG&gt;&lt;I&gt;Accept as &lt;/I&gt;&lt;/STRONG&gt;&lt;STRONG&gt;solution&lt;/STRONG&gt;&lt;/FONT&gt; and click Yes if you found it helpful.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;B Manikanteswara Reddy&lt;/P&gt;</description>
      <pubDate>Mon, 12 May 2025 11:26:31 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4689112#M179580</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2025-05-12T11:26:31Z</dc:date>
    </item>
    <item>
      <title>Re: RLS filtering based on sub-group membership</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4694440#M179784</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="1242121" data-lia-user-login="gettingupthere" class="lia-mention lia-mention-user"&gt;gettingupthere&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;May I ask if you have gotten this issue resolved?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If it is solved, please mark the helpful reply or share your solution and &lt;FONT color="#008000"&gt;&lt;STRONG&gt;&lt;I&gt;accept it as solution&lt;/I&gt;&lt;/STRONG&gt;,&lt;/FONT&gt; it will be helpful for other members of the community who have similar problems as yours to solve it faster.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;DIV style="direction: ltr;"&gt;
&lt;TABLE style="direction: ltr; border-collapse: collapse; border: 1pt solid #A3A3A3;" title="" border="1" summary="" cellspacing="0" cellpadding="0"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style="background-color: #c5e0b3; vertical-align: top; width: 7.9659in; padding: 4pt 4pt 4pt 4pt; border: 1pt solid #A3A3A3;"&gt;
&lt;P style="margin: 0in; font-family: Arial; font-size: 11.0pt;"&gt;Please don't forget to give a "Kudos&amp;nbsp;&lt;img /&gt;&lt;SPAN&gt;" – I’d truly appreciate it!&lt;/SPAN&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;/DIV&gt;
&lt;P style="margin: 0in; margin-left: 3.0in; font-family: Arial; font-size: 11.0pt;"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Arial; font-size: 11.0pt;"&gt;Regards,&lt;/P&gt;
&lt;P style="margin: 0in; font-family: Arial; font-size: 11.0pt;"&gt;B Manikanteswara Reddy&lt;/P&gt;</description>
      <pubDate>Thu, 15 May 2025 13:21:36 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/RLS-filtering-based-on-sub-group-membership/m-p/4694440#M179784</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2025-05-15T13:21:36Z</dc:date>
    </item>
  </channel>
</rss>

