cancel
Showing results for 
Search instead for 
Did you mean: 
intapiuser
Community Team Member
Community Team Member

mceclip1.png Analytical Need

Data security is implemented when there is a need to prevent the users from seeing the entire set of data. Each user only needs to see a data set based on permissions that is defined in Sisense Web.
Here we will discuss how to solve a situation where an organization requires for its employees to view data based on their location in the hierarchy tree.

mceclip2.png Modeling Challenge 

The security only works with one field to filter on in advance. We will need to prepare a table in the cube specifically for this purpose.
The table will include a structure where every user needs to see his own data and his subordinates.

mceclip3.png Solution

Let's say we have the following organizational structure :
security_hierarchy.PNG
Image 1. Organizational Hierarchy
We would like for:
  • Manager 1 to see all the employees in the company (including himself).
  • Manager 2 will only see himself
  • Manager 3 will see himself and 4 & 5
  • Employees 4 & 5 will see only their own data
This solution proposes the following:
We will need to have the following table in the data source.
This table lists each employee and his managers (not just the direct one, but all of them). 
Also, each employee (be it manager or not) appears with himself as a manager. This is in order for each employee to be able to see his own data.
The Data Security will be defined on the Manager field. This way each employee will see himself and his subordinates. The connection to the Dim Employee will be on Employee.
The level field describes how many levels differentiate between the manager and the employee. This can be used in the dashboard as a filter to determine how many levels down does the manager wants to see.
Rate this article:
Version history
Last update:
‎03-02-2023 08:29 AM
Updated by:
Contributors