Answer #1 - Separate Role Specific Applications
There are two solutions depending on the reason for managing the table visibility. Based on the question, it seems that the intention is to manage the table access based on different user roles.
In that case the best answer would be to create multiple applications to satisfy the different user roles. Within dbFront that is fairly straightforward and simple. This would involve some duplication of effort, but it would make sense since they are different roles with significantly different needs. The different roles likely need more than just additional/less table access. They likely need different reports, exports, access to differ procedures or workflows, visibility of different fields (more or less) etc...
To setup a new application, create a new database connection, again limited to the specific tables you need and proceed from there.
It is possible to copy the configuration from one database/application to another:
- Open the original connection and export the configuration (optional table selection),
- Open the new connection and import the configuration.
This can be done repeatedly, and it will ignore additional or missing tables. dbFront also allows you to easily restore a previous configuration so there is little risk.