Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
SudharshanK
Contributor III
Contributor III

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?

Labels (4)
3 Solutions

Accepted Solutions
Ray_Strother
Support
Support

Hello ,

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...

View solution in original post

Albert_Candelario

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

Please, remember to mark the thread as solved once getting the correct answer

View solution in original post

tross2018
Partner - Contributor
Partner - Contributor

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.

tross2018_0-1683899721906.png

 

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))

View solution in original post

7 Replies
Ray_Strother
Support
Support

Hello ,

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...
SudharshanK
Contributor III
Contributor III
Author

Thanks a lot for sending this link. This is very helpful

SudharshanK
Contributor III
Contributor III
Author

How to specify multiple columns in OMIT? I tried separating them with commas but it does not work

Albert_Candelario

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

Please, remember to mark the thread as solved once getting the correct answer
BastiaanBrak
Contributor II
Contributor II

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.





tross2018
Partner - Contributor
Partner - Contributor

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.

tross2018_0-1683899721906.png

 

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))

SudharshanK
Contributor III
Contributor III
Author

This is awesome!! Thanks a lot