Discussion board where members can learn more about Qlik Sense deployments which are governed and self-service.
I would like to create a sheet specifically for the purpose of nprinting in an app and what to hide it from everyone except the developer user group.
We have several streams and several apps. So I am just planning to name the sheets that needs to be created specifically for nprinting in the same way.
For this
1. I am modifying the general security rule adding resource.name != "nprinting", which I thought would hide the sheet from everyone including developers.
2. then create a new security rule just to provide access to the developers to that sheet.
@Nicole-Smith any thoughts here?
So my questions are
1. when I made the change to the existing general security rule as mentioned in point 1, its not hiding the sheet. what am I doing incorrectly? Also is this approach correct?
2. I want to understand if I could used the charts from the hidden sheet in the nprinting.
Version of Qlik sense: Qlik Sense April 2020
Version of Nprinting: Qlik NPrinting June 2020, Version: 20.19.3.0
Thanks
Lekha
Appreciate the insights. It worked and this what I did.
1. duplicate the general security rule "Stream" and add a condition resource.name != "nprinting"
2. disable the general security rule "Stream"
3. create another new rule as below
Filter: App.Object_*
Logic: (user.group = "dev-group" or user.name = "nprinting-user") and resource.objectType="sheet" and user.sheets=resource.name and resource.name="nprinting"
Not in your question, but best practice is to NOT edit default security rules. If you need to edit a default rule, you should disable it, then create a new custom rule. This is because you cannot get the default rules back after they have been changed to custom.
That said, I believe the rule you need should be something like this (this may take care of both the hide and show, but it's impossible for me to test):
Filter: App.Object_*
Logic: (group.groupname = "dev-group" or user.username = "nprinting-user") and resource.objectType="sheet" and user.sheets=resource.name and resource.name="nprinting"
Note: Replace the groupname and username above with your dev group and nprinting user. Giving the nprinting user access should allow it to use the objects on the hidden sheet.
If you're unable to get any of this to work using the security rules, a workaround would be to create a new QVF file where you binary load the data into it so you can create the objects for nprinting. You could store that QVF in a stream that is only visible to developers.
Appreciate the insights. It worked and this what I did.
1. duplicate the general security rule "Stream" and add a condition resource.name != "nprinting"
2. disable the general security rule "Stream"
3. create another new rule as below
Filter: App.Object_*
Logic: (user.group = "dev-group" or user.name = "nprinting-user") and resource.objectType="sheet" and user.sheets=resource.name and resource.name="nprinting"