Hi team!
We have run into some puzzling App > Module permissions behaviour.
We have an large app which contains a number of modules embedded within.
We ran into an issue where suddenly the app would no longer load for users after embedding a new module to the app (and somehow permissions changed).
I've narrowed the issue down to permissions as once we grant explicit permissions to the modules, it now loads successfully.
What's confusing is that if I:
- Create a new app
- Add all the same modules to this new app
- Add a user to a user permission group with only use permissions granted to the new app (that has the same modules embedded)
- The user is able to access the app and it's modules are successfully loaded
I can then:
- Remove the access to the new app
- Grant access to the older app
- The user is unable to load the old app (access denied to the embedded modules)
Some tedious troubleshooting has shown:
-
The user cannot access these modules directly when given access to the old app only, but CAN once also given access to the modules themselves OR the new app (which also embeds the modules in the old app)
-
The initial lookupPage payload includes the embedded module in the new app. It is not fetched after like it is in the old app (I'm assuming this is due to the size of the old app or something?), however;
-
The user is indeed being given access to the linked modules when given use access to the new app ...
I can see this because I can load the modules themselves directly as that user (by navigating to the modules app 'id')...
This seems to indicate that this is permission based, and not due to some payload related cause
..
Could anyone point me to an explainer on why I'm seeing this differing permission behaviour?
I have only two guesses at why this is happening:
- The old app is using an older template version that has different module/permissions behaviour...
- The old app is much larger and that is somehow effecting module/permission scoping...
I found one article which went in the right direction: Advanced permissions in Retool: The Fundamentals (Retool for Enterprises) but stops short of speaking to Module related permission behaviour.
For now I will ensure we set explicit use access where required to embedded resources.
Thanks in advance, H