I have a PostGIS database that includes multiple schemas, tables and a QGIS project. I have 3 general user roles: admin, editor and reader. I know of the issue with database connection information being saved within QGIS projects and how they can cause 'higher' privileges being given to users with 'lower' levels of access (e.g. reader).
The idea is, that the editor has read access to all database layers and read and edit privileges on QGIS projects. The reader should only have read access on everything. The editor will create virtual fields within the database tables and would like to share these with the reader.
How do I make sure, the editor doesn't accidently save his or her credentials in the QGIS project and then unvoluntarily gives out editing privileges to the reader?
Version info: QGIS 3.34 LTR, PostgreSQL 15.5, PostGIS 3.4