Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Qlik Sense section access

Hello guys, I have a problem with Section Access in Qlik Sense server.

I have implemented section access for row level security as the below code shows:

Section Access;

LOAD * inline [

ACCESS, USERID

USER, xx\xx

USER, yy\yy

USER, zz\zz

];

section application;

Load * inline [

USERID, TL2

xx\xx, *

yy\yy, Cars

zz\zz, *

];

Now for user yy\yy, everything is as desired and is restricting the meta-data of column TL2 to "Cars" only.

However for xx\xx and zz\zz, the data should not be restricted but however when they open the report, there is absolutely no data.

The users are being authenticated but the data is completely absent.

When I change the * to any parameter, it works but * does not work.

Thanks in advance.

1 Solution

Accepted Solutions
marcohadiyanto
Partner - Specialist
Partner - Specialist

Hi Siddharth,

Section access script that you build already correct only miss list of data for (*).

A common misconception in section access is the use of “*” (star) in section access.

“Star” means “all listed values” not all values for the field. This will be explained in

detail in the script examples.

Section Access;

LOAD * inline [

ACCESS, USERID, TL2

USER, xx\xx, *

USER, yy\yy, Cars

USER, zz\zz, *

];

Section Application;

Example you have data

Load * inline [

TL2

Cars

Bus

Motorcycle

];

Then your section access script must include all the data for TL2 and user using dummy it's ok, it should be like this.

Section Access;

LOAD * inline [

ACCESS, USERID, TL2

USER, xx\xx, *

USER, yy\yy, Cars

USER, zz\zz, *

];

Load * inline [

ACCESS, USERID, TL2

USER, dummy\dummy, Cars

USER,dummy\dummy Bus

USER, dummy\dummy, Motorcycle

Section Application;

Attached documents that i get from community about section access on QlikView

Regards,

Marco

View solution in original post

10 Replies
Gysbert_Wassenaar

If you want to use TL2 to reduce the data for the users then you need to put it in the section access table.


talk is cheap, supply exceeds demand
Anonymous
Not applicable
Author

Tips and tricks for section access in Qlik Sense (2.0+)

Have a look through this - Section Access has changed for Qlik Sense from QlikView you may know -  you can now add

REDUCTION field in order to determine the field on which the reduction is performed.

OMIT - Fields that should not be available to the GROUP or USERID

Not applicable
Author

‌Thanks for your reply but I'm firstly wondering as to how the script worked for the user yy/yy. If the code itself was wrong, nothing should have worked, right?

Besides, only the * is not working, others are.

thanks in advance.

regards,

SS.

Not applicable
Author

Adding on,

I tried this

Section Access;

LOAD * inline [

ACCESS, USERID, TL2, OMIT

USER, xx\xx, *, TL

USER, yy\yy, *,

USER, zz\zz, *,

];

This just says access denied to add users.

What is weird is that when I change user xx\xx to "Cars" instead of *, all users can see only "cars", it does not show access denied but limits everyone  to "Cars" only.

Also, don't I need Section Application?

reddys310‌, you have helped me in the past. Any advice?

Not applicable
Author

Can anyone help me on this please?

marcohadiyanto
Partner - Specialist
Partner - Specialist

Hi Siddharth,

Section access script that you build already correct only miss list of data for (*).

A common misconception in section access is the use of “*” (star) in section access.

“Star” means “all listed values” not all values for the field. This will be explained in

detail in the script examples.

Section Access;

LOAD * inline [

ACCESS, USERID, TL2

USER, xx\xx, *

USER, yy\yy, Cars

USER, zz\zz, *

];

Section Application;

Example you have data

Load * inline [

TL2

Cars

Bus

Motorcycle

];

Then your section access script must include all the data for TL2 and user using dummy it's ok, it should be like this.

Section Access;

LOAD * inline [

ACCESS, USERID, TL2

USER, xx\xx, *

USER, yy\yy, Cars

USER, zz\zz, *

];

Load * inline [

ACCESS, USERID, TL2

USER, dummy\dummy, Cars

USER,dummy\dummy Bus

USER, dummy\dummy, Motorcycle

Section Application;

Attached documents that i get from community about section access on QlikView

Regards,

Marco

Not applicable
Author

Thanks Marco just one clarification. When you say listed values, you mean listed values in the Load statement of section access?

If that is the case then my * should only load an aggregate of Cars, Buses and Motorcycles acc to your statement?

Pretty useless feature if you ask me.

But thanks a lot for the clarification. Made a lot of sense.

marcohadiyanto
Partner - Specialist
Partner - Specialist

Hi,

Yes, all data should listed in section access, if you want limit by that data.

Regards,

Not applicable
Author

Okay, thanks a lot.