App can be duplicated successfully by a user that does not have full access but the script is empty in the script editor.
The App can be used as expected, but not reloaded.
Environment:
Resolution:
A user that has read access to an app and to the related sections in the Qlik Sense Management Console (QMC) will be able to duplicate an app. If the user does not have full access to it, then only the front end of the app will be duplicated, and the script will not be copied.
The user will be able to use the app, but unable to access the original script.
This is working as design:
"Another user is not supposed to be able to duplicate the script, but the rest of the App should be able to be duplicated.
This is due to the fact that you can otherwise load data that you should not have access to removing the section access inside the script."
The reason why no error is printed, and the app can be duplicated successfully, is because the user should still be able to duplicate the rest of the App, without the script.
If full rights to the App and its App objects are given to the user, he will be able to duplicate the whole App including the script.
This behavior is documented on Qlik Sense help site.
A work-around solution is to duplicate the app with a user having RootAdmin or ContentAdmin role. (or) Create another rule to provide App objects access to the respective user or group.
Resource Filter: App.Object_*
Action: Read
Context: QMC and HUB
Conditions: user.name="User1"