<?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 using any source data base / file in Report Server</title>
    <link>https://community.fabric.microsoft.com/t5/Report-Server/Row-Level-Security-using-any-source-data-base-file/m-p/562854#M8779</link>
    <description>&lt;P&gt;I believe that Row Level Security is a feature that is expected to be added in the January update (it was slated for November update but just now saw that it changed).&amp;nbsp; I may be looking at using your solution until this update as I am currently deploying a large solution using the Report Server and RLS is a requirement.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://docs.microsoft.com/en-us/business-applications-release-notes/october18/intelligence-platform/power-bi-report-server/index" target="_blank"&gt;https://docs.microsoft.com/en-us/business-applications-release-notes/october18/intelligence-platform/power-bi-report-server/index&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 09 Nov 2018 01:08:41 GMT</pubDate>
    <dc:creator>healthEteam</dc:creator>
    <dc:date>2018-11-09T01:08:41Z</dc:date>
    <item>
      <title>Row Level Security using any source data base / file</title>
      <link>https://community.fabric.microsoft.com/t5/Report-Server/Row-Level-Security-using-any-source-data-base-file/m-p/413307#M5555</link>
      <description>&lt;P&gt;Hi Guys,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;After scanning through the forums to find a way to implement Row Level Security using Power BI Report Server and not finding anything positive, I decided to build my own. I would like to share this with you all so others can overcome this challenge.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Requirements&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Implement Row Level Security on a database based on A User belonging to a certain Department or&amp;nbsp;Division or any other field that you want to filter the data based on&lt;/LI&gt;&lt;LI&gt;Use Microsoft AD Login for authentication&lt;/LI&gt;&lt;LI&gt;Reports to contain all data by default and only filter on user view.&amp;nbsp;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Assumptions&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Users are only browsers on the Report Server and will not be editing the reports / dashboards&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;The User to Department mapping will be sotred in at able or file&amp;nbsp;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Design&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Create a Tables USER_ACCESS with the following&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;UID, Name, Role Type and Department&amp;nbsp;/&amp;nbsp;Division (or similar column)&lt;/LI&gt;&lt;LI&gt;Populate the data in the table&amp;nbsp;assigning users to a Department / Division&lt;/LI&gt;&lt;LI&gt;Load this table in the Power BI Data Set and Join to the other table where Department / Division exists i.e. user_access.department = &amp;lt;fact_name&amp;gt;.department or &amp;lt;dimension_name&amp;gt;.department&lt;/LI&gt;&lt;LI&gt;Cross Filter Direction = &lt;STRONG&gt;Both&amp;nbsp;&lt;/STRONG&gt;&lt;/LI&gt;&lt;LI&gt;Apply Security Filter in both direction = &lt;STRONG&gt;Yes&amp;nbsp;&lt;/STRONG&gt;&lt;/LI&gt;&lt;LI&gt;If you want to filter further objects based on this column join it to the USER_ACCESS table or the Target table you joined to and&amp;nbsp;ensure the Cross Filter Direction is &lt;STRONG&gt;Single&lt;/STRONG&gt;.&amp;nbsp;&lt;/LI&gt;&lt;LI&gt;Reload the data and ensure the filter works&lt;/LI&gt;&lt;LI&gt;On the Table&amp;nbsp;USER_ACCESS create ameasure&amp;nbsp;&lt;I&gt;UserID_Match = IF(CONTAINS(USER_ACCESS,USER_ACCESS[FULL_USER_ID], USERNAME()), 1 , 0)&lt;/I&gt;&lt;/LI&gt;&lt;LI&gt;&lt;I&gt;When a user logs in their record will automatically return a value one.&amp;nbsp;&lt;/I&gt;&lt;/LI&gt;&lt;LI&gt;&lt;I&gt;Now add this Filter to the Visual Level Filter with a value set to 0.&amp;nbsp;&lt;/I&gt;&lt;/LI&gt;&lt;LI&gt;&lt;I&gt;Add the data along with the Department / Divion Columns on the Graph or Cross Table&amp;nbsp;&amp;nbsp;&lt;/I&gt;&lt;/LI&gt;&lt;LI&gt;&lt;I&gt;The data should automatically filter to the user using the Report on the Power BI Desktop and Power BI Report Server.&amp;nbsp;&lt;/I&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Disclaimer&amp;nbsp;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;This&amp;nbsp;solution may not work for all depdneing on how your data joins. We have tested this on a Star Schema with 1 Fact and 9 Dimensions and it worked for all the Dimensions and Fact records.&amp;nbsp;if you need help on this solution, please put your comments in below.&amp;nbsp;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Thanks to Greg King for helping me desig and test&amp;nbsp;this.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Good Luck.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 09 May 2018 04:24:48 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Report-Server/Row-Level-Security-using-any-source-data-base-file/m-p/413307#M5555</guid>
      <dc:creator>rajiv_tarafdar</dc:creator>
      <dc:date>2018-05-09T04:24:48Z</dc:date>
    </item>
    <item>
      <title>Re: Row Level Security using any source data base / file</title>
      <link>https://community.fabric.microsoft.com/t5/Report-Server/Row-Level-Security-using-any-source-data-base-file/m-p/562611#M8776</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Thank you&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://community.powerbi.com/t5/user/viewprofilepage/user-id/53701" target="_blank"&gt;@rajiv_tarafdar&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;for sharing your solution, I have a question are you able to apply the same filter by current user to slicer?&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 08 Nov 2018 15:28:53 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Report-Server/Row-Level-Security-using-any-source-data-base-file/m-p/562611#M8776</guid>
      <dc:creator>mohammadhijazi</dc:creator>
      <dc:date>2018-11-08T15:28:53Z</dc:date>
    </item>
    <item>
      <title>Re: Row Level Security using any source data base / file</title>
      <link>https://community.fabric.microsoft.com/t5/Report-Server/Row-Level-Security-using-any-source-data-base-file/m-p/562854#M8779</link>
      <description>&lt;P&gt;I believe that Row Level Security is a feature that is expected to be added in the January update (it was slated for November update but just now saw that it changed).&amp;nbsp; I may be looking at using your solution until this update as I am currently deploying a large solution using the Report Server and RLS is a requirement.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://docs.microsoft.com/en-us/business-applications-release-notes/october18/intelligence-platform/power-bi-report-server/index" target="_blank"&gt;https://docs.microsoft.com/en-us/business-applications-release-notes/october18/intelligence-platform/power-bi-report-server/index&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 09 Nov 2018 01:08:41 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Report-Server/Row-Level-Security-using-any-source-data-base-file/m-p/562854#M8779</guid>
      <dc:creator>healthEteam</dc:creator>
      <dc:date>2018-11-09T01:08:41Z</dc:date>
    </item>
  </channel>
</rss>

