<?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 Table Row Filter with a criteria on CURRENT_USER() belonging to a Unity Catalog group in Data Engineering</title>
    <link>https://community.databricks.com/t5/data-engineering/table-row-filter-with-a-criteria-on-current-user-belonging-to-a/m-p/81315#M36266</link>
    <description>&lt;P&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;Hello&lt;/FONT&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;I defined a Row Filter to exclude some rows for a given user 'user@mail.com' in SQL.&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;Instead of providing a list of users to exclude, I would like to define my criteria on Unity Catalog groups instead of users.&lt;/FONT&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;Here is my current filter:&lt;/FONT&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;-- apply filter only for &lt;A href="mailto:user@mail.com," target="_blank"&gt;user@mail.com,&lt;/A&gt;&amp;nbsp;otherwise bypass filter&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;CREATE&lt;/SPAN&gt; &lt;SPAN&gt;FUNCTION&lt;/SPAN&gt;&lt;SPAN&gt; rd.my_schema.my_filter(&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;filter_column &lt;/SPAN&gt;&lt;SPAN&gt;INTEGER&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;)&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;RETURNS&lt;/SPAN&gt; &lt;SPAN&gt;BOOLEAN&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;RETURN&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;IF(CURRENT_USER(&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;'user@mail.com'&lt;/SPAN&gt;&lt;SPAN&gt;, filter_column &lt;/SPAN&gt;&lt;SPAN&gt;IN&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;15&lt;/SPAN&gt;&lt;SPAN&gt;), &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;true&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;And I apply this Row Filter to 2 of my tables like so:&lt;BR /&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;ALTER&lt;/SPAN&gt; &lt;SPAN&gt;TABLE&lt;/SPAN&gt;&lt;SPAN&gt; rd.my_schema.my_table_1&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;SET&lt;/SPAN&gt; &lt;SPAN&gt;ROW&lt;/SPAN&gt; &lt;SPAN&gt;FILTER&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;rd.my_schema.my_filter &lt;/SPAN&gt;&lt;SPAN&gt;ON&lt;/SPAN&gt;&lt;SPAN&gt; (id_col);&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;ALTER&lt;/SPAN&gt; &lt;SPAN&gt;TABLE&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;rd.my_schema.my_table_2&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;SET&lt;/SPAN&gt; &lt;SPAN&gt;ROW&lt;/SPAN&gt; &lt;SPAN&gt;FILTER&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;rd.my_schema.my_filter &lt;/SPAN&gt;&lt;SPAN&gt;ON&lt;/SPAN&gt;&lt;SPAN&gt; (id_col);&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;Could someone help me adapt this filter so that it only applies if the user executing the query is member of a given group (let's say it is named 'restricted_users_group') ?&lt;BR /&gt;Thanks&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;</description>
    <pubDate>Wed, 31 Jul 2024 12:36:09 GMT</pubDate>
    <dc:creator>Antoine_B</dc:creator>
    <dc:date>2024-07-31T12:36:09Z</dc:date>
    <item>
      <title>Table Row Filter with a criteria on CURRENT_USER() belonging to a Unity Catalog group</title>
      <link>https://community.databricks.com/t5/data-engineering/table-row-filter-with-a-criteria-on-current-user-belonging-to-a/m-p/81315#M36266</link>
      <description>&lt;P&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;Hello&lt;/FONT&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;I defined a Row Filter to exclude some rows for a given user 'user@mail.com' in SQL.&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;Instead of providing a list of users to exclude, I would like to define my criteria on Unity Catalog groups instead of users.&lt;/FONT&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;Here is my current filter:&lt;/FONT&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;-- apply filter only for &lt;A href="mailto:user@mail.com," target="_blank"&gt;user@mail.com,&lt;/A&gt;&amp;nbsp;otherwise bypass filter&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;CREATE&lt;/SPAN&gt; &lt;SPAN&gt;FUNCTION&lt;/SPAN&gt;&lt;SPAN&gt; rd.my_schema.my_filter(&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;filter_column &lt;/SPAN&gt;&lt;SPAN&gt;INTEGER&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;)&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;RETURNS&lt;/SPAN&gt; &lt;SPAN&gt;BOOLEAN&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;RETURN&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;IF(CURRENT_USER(&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;'user@mail.com'&lt;/SPAN&gt;&lt;SPAN&gt;, filter_column &lt;/SPAN&gt;&lt;SPAN&gt;IN&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;15&lt;/SPAN&gt;&lt;SPAN&gt;), &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;true&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;And I apply this Row Filter to 2 of my tables like so:&lt;BR /&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;ALTER&lt;/SPAN&gt; &lt;SPAN&gt;TABLE&lt;/SPAN&gt;&lt;SPAN&gt; rd.my_schema.my_table_1&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;SET&lt;/SPAN&gt; &lt;SPAN&gt;ROW&lt;/SPAN&gt; &lt;SPAN&gt;FILTER&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;rd.my_schema.my_filter &lt;/SPAN&gt;&lt;SPAN&gt;ON&lt;/SPAN&gt;&lt;SPAN&gt; (id_col);&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;ALTER&lt;/SPAN&gt; &lt;SPAN&gt;TABLE&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;rd.my_schema.my_table_2&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;SET&lt;/SPAN&gt; &lt;SPAN&gt;ROW&lt;/SPAN&gt; &lt;SPAN&gt;FILTER&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;rd.my_schema.my_filter &lt;/SPAN&gt;&lt;SPAN&gt;ON&lt;/SPAN&gt;&lt;SPAN&gt; (id_col);&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;&lt;FONT face="arial,helvetica,sans-serif"&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;Could someone help me adapt this filter so that it only applies if the user executing the query is member of a given group (let's say it is named 'restricted_users_group') ?&lt;BR /&gt;Thanks&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Wed, 31 Jul 2024 12:36:09 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/table-row-filter-with-a-criteria-on-current-user-belonging-to-a/m-p/81315#M36266</guid>
      <dc:creator>Antoine_B</dc:creator>
      <dc:date>2024-07-31T12:36:09Z</dc:date>
    </item>
  </channel>
</rss>

