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.
The Advanced Data Security Model is used for cases when the Data Security in Sisense Web does not answer your organization's data security needs, since you would like to use "And" & "Or" conditions to create more complex data security combinations.
Image 1. Default data security in with / without changes in the EC
In order to demonstrate the Data security usage we will use the Multi Fact Schema :
Image 2. Multi Fact schema
Create a security table with all possible combinations for data security (Project Manager & Projects : AA, BB & 1,2,3 respectively) and insert it into the cube. For example:
Image 2. Data security definitions per user
Make sure there are no duplicates here.
In order to connect the security we have defined, we need to create a new dim table in the cube from Projects & Project Manager dim tables and the combination itself (don't forget to make the Projects & Project Managers tables invisible).
Image 3. New dimension table (based on existing dimensions along with security combination)
For each of the remaining dimensions that are not in the security combination, you need to add the combinations to each of the values like such :
Image 4. A dimension table with the security combination
Connect all the tables like so (from right to left): Security table will be connected to the dimensions based on the security combination (Allowed); The dimensions will be connected to the facts.
Image 5. Multi fact schema with security
Use the User field from the Security table to create the security for your user/ group in Sisense Web. This will enforce the desired security combination.
Image 6. Data security admin screen
Step 6: When using this configuration, add a filter on a field from each dimension to each dashboard. This is in order to to ensure the dashboard queries always get routed through all the dimension tables.
If no filtering is needed on a specific dimension, select a field and check all values on the filter and lock the filter on the dashboard. If that filter doesn't need to be shown to the end user, you can hide the filter.