role level security - multiple levels
5 TopicsDynamic RLS with Hierarchy for Embedded Paginated Reports in Power BI Desktop
Hello Power BI Community, I hope this message finds you well. I am reaching out to seek your expertise and guidance on a challenge I am currently facing with implementing dynamic Row-Level Security (RLS) with Organizational Hierarchy in an embedded paginated report. I have successfully implemented dynamic Hierarchy RLS for standard Power BI reports. The RLS is designed to allow Level 1 employees to view only their data, Level 2 employees to see their data as well as the data of all employees at Level 1 reporting to them, and so forth. While this dynamic Hierarchy RLS is working seamlessly for Power BI reports, I have encountered an issue with embedded paginated reports. Example, Level 1 employees can see not only their own data but also the data of their peers at the same level. I would greatly appreciate any guidance or assistance from the community on resolving this issue. If anyone has experience resolving such challenges with embedded paginated reports in Power BI Desktop, your insights would be invaluable. Any suggestions, best practices, or troubleshooting tips to ensure that the RLS filters out data accurately, maintaining the hierarchical structure for embedded paginated reports as well. Thank you in advance for your time and expertise. I look forward to your insights and suggestions.Solved985Views0likes3CommentsRLS on Cosmos DB
Hi, The data soruce i have connected to is Azure Cosmos DB for PostgreSQL. RLS is enabled on this database as it is for a multi tenant solution. When i connect to power bi, only public tables are accessible due to RLS on the data base and i am getting the following error - DataSource.Error: PostgreSQL: 42704: unrecognized configuration parameter "platform.current_organisation" Platform is the database name. Do i need to do a direct query when connecting or write a specific sql statement before connecting so i can see private and public tables in the schema?570Views0likes1CommentConditional/Multi-Layered Row-Level-Security
Hi Power BI Community, I am having trouble figuring out a multi-layered, dynamic RLS problem. Essentially, I have a table of transactions and employee email adresses. I also have another table of employee emails and their departments. Depending on which department the user belongs to, I want to provide them with either: Access to their own transactions only Access to 1 or more department's transactions How do I go about implementing this?765Views0likes1CommentHow to keep original values in a rankx measure and apply it on table with role level security?
Hi all, I have a table like this: The rank column in this created table is a caluclated measure that displays the ranking of each employee filtered by their channel and based on their total score: Rank Employee = RANKX( ALL('table1'[Employee]), [Total Score] ) This works fine. However, the table will be viewed by individual employees to see only their performance and I need to hide other employees rank and scores. Right now, this is how the 2nd ranked employee from channel a views the table: It is showing his rank as 1 when it should be 2. Similarly, all employees view their rank as 1st. Thus, how do i keep the original rank values even when there is role level security view being implemented?Solved1.5KViews0likes6CommentsRole Level Security Dax Measure - looking at different fields to determine access
I have a security table that indicates what level a person can access data. I am trying to build the Dax filter in the Roles to make it apply secuirty at differnt levels. Below I got it working to look at department or specialty but I am stuck how to write this for RPT_GRP_2 and NPI levels. Total newbie to Power bi and Dax so if their is better way to write this metric I am open to suggestions VAR Specialty = CALCULATETABLE ( VALUES (SecurityAccess[SPECIALTY]), SecurityAccess[USER EMAIL] = USERPRINCIPALNAME() ) VAR DEPT_ID = CALCULATETABLE ( VALUES ( SecurityAccess[DEPT_ID] ), SecurityAccess[USER EMAIL] = USERPRINCIPALNAME() ) RETURN AND ( OR ( "ALL" IN DEPT_ID, DimDeptClarity[Department Id] IN DEPT_ID ), OR ( "ALL" IN Specialty, DimDeptClarity[Specialty] IN Specialty ) ) Example of Security Table USER EMAIL USER AREA LEVEL DEPT_ID SPECIALTY RPT_GRP_TWO NPI_ID [email protected] Executive EXEC All ALL ALL ALL Division [email protected] Division Chief CP Specialty ALL Primary Care ALL [email protected] Director CP Mulitiple Specialties ALL ALL Ambulatory [email protected] Manager CP Clinic 1005019 ALL ALL [email protected] Provider CP Provider ALL ALL ALL 123456781KViews0likes4Comments