While left side menu Pages are great for building dedicated interfaces they are currently missing the access control. We have scenarios where additional Pages unnecessarily reveal tables to ‘outsiders’. Using the access control logic for Pages might be a powerful solution.
If we use column access control, there will be still strange looking left side menu Pages available.
Or is there some way to filter out Pages (not just tables) being displayed to all users?
The solution I use right now for pages is to create a simple table with a single column. I make that table unreadable by anyone not the owner. Then I add a widget of it in every page I don´t anyone byt the owner looking around and just reduce it until the limit of visibility.
This is ideal for tables that you want people to have access to (because they will be used as references for example) but you don´t want people to access the page where the whole table is available for viewing and editing.
it’s burdensome, specially if you need more complex rules. Like pages that only GROUP A can´t see. And others only GROUP B can´t see. You would need to create tables with such rules then add them to pages… and it can quickly become a mess.
Yes, that would indeed be a very useful feature. I have to make a lot of pages for debugging, and regular users don’t need them. It would also solve several problems with organizing access to different data for different roles very easily.
Now that you mention “lot of pages for debugging, and regular users don’t need them” same applies to me > that leads to simplified (additional?) feature: simply “hide/ unhide” pages (from other than OWNER and/or EDITORS). Though not an easy to answer design choice where the balance of simplicity / tailoring should be. I might still vote for the more advanced setup even if more most cases the need is to just hide it from all other users.
I have the same need, but grist does not allow it yet directly
My solution:
I create different tables AccessManagementAccessTracking etc.
These tables are empty, but only serve to define permissions by a user.Email table (see Intro to access rules - Grist Help Center )
Then I add the table in question in the view to allow access only to authorized people.