
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Sheet Level Access in Qlik Sense SaaS
Hello,
I am trying to restrict user access to sheets in Qliksense cloud but not able to figure out how to do it yet!! For example, User1 would have access to public Sheets 1,2 and 3 in App1, User2 would have access only to Sheets 1 and 2 and User3 would have access only to Sheet 1 in the app. However, all these three users are in the same User Group and access has been provided to the User Group to App1 as a whole. Can you please help me out?
Accepted Solutions

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
1. You cannot limit users access at the sheet level .
2. You limit user access at the App level or Space level.
3. You can limit data access via section access .
Qlik Help link on section access :
1. https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/Security/manag...

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello @SudharshanK.,
Maybe this give you some inspiration:
Example: Section Access w/ Data Reduction and OMI... - Qlik Community - 1565446
Creating an OMIT group and then having different fields on the OMIT for such group.
Cheers,
Albert


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello @SudharshanK ,
There is a way to restrict access to specific users for a sheet using the "Show condition" under the sheet properties and the OSUser( ) function in Qlik SaaS.
In Edit mode for the sheet, you will need to add a “Show Condition” to restrict what users can see the sheet. This will be listed under the Sheet Properties on the right of the screen.
A basic option can use the function below, which lists out a specific list of users in the expression.
=WildMatch(Subfield(Subfield(OSUser( ),';',2),'=',2),'user1@domain.com','user2@domain.com')
If you have a lot of users a more dynamic way is to have a field in the app with the list of users to access the sheet. Then the following can be used. The field name with users in the example below is [Sheet User Access List].
=WildMatch(Subfield(Subfield(OSUser( ),';',2),'=',2),MID(Concat( Distinct [Sheet User Access List],CHR(39)&CHR(44)&CHR(39))&CHR(39),3,LEN(Concat( Distinct [Sheet User Access List],CHR(39)&CHR(44)&CHR(39))&CHR(39))-2))

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
1. You cannot limit users access at the sheet level .
2. You limit user access at the App level or Space level.
3. You can limit data access via section access .
Qlik Help link on section access :
1. https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/Security/manag...

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks a lot for sending this link. This is very helpful

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
How to specify multiple columns in OMIT? I tried separating them with commas but it does not work

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello @SudharshanK.,
Maybe this give you some inspiration:
Example: Section Access w/ Data Reduction and OMI... - Qlik Community - 1565446
Creating an OMIT group and then having different fields on the OMIT for such group.
Cheers,
Albert

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
As far as I can see the following (somewhat tedious!) workaround would provide indirect sheet level access: publish three different versions of the same App in three different Spaces, where each published version of the App has a different set of worksheet(s) made Private. Then add each user to the correct Space so they only have access to the published App version with the appropriate (Public) sheets.


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello @SudharshanK ,
There is a way to restrict access to specific users for a sheet using the "Show condition" under the sheet properties and the OSUser( ) function in Qlik SaaS.
In Edit mode for the sheet, you will need to add a “Show Condition” to restrict what users can see the sheet. This will be listed under the Sheet Properties on the right of the screen.
A basic option can use the function below, which lists out a specific list of users in the expression.
=WildMatch(Subfield(Subfield(OSUser( ),';',2),'=',2),'user1@domain.com','user2@domain.com')
If you have a lot of users a more dynamic way is to have a field in the app with the list of users to access the sheet. Then the following can be used. The field name with users in the example below is [Sheet User Access List].
=WildMatch(Subfield(Subfield(OSUser( ),';',2),'=',2),MID(Concat( Distinct [Sheet User Access List],CHR(39)&CHR(44)&CHR(39))&CHR(39),3,LEN(Concat( Distinct [Sheet User Access List],CHR(39)&CHR(44)&CHR(39))&CHR(39))-2))

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This is awesome!! Thanks a lot
