I want to create a read-only role for a third party to access a handful of tables through the public schema without being able to view the rest of the tables publicly.
My original idea was to create a new scheme & # 39; readonly & # 39; to create and then create views in this scheme:
create view readonly.table1 as select * from public.table1
Then change the search path for the read-only user to only change it to the & # 39; read-only & # 39; Restrict scheme. However, it looks like I can still view the public schema as this role (although I can't select anything from tables in schema public).
Is there a way to remove all public schema visibility from a role? Unfortunately, it is not possible to move everything into a different scheme.