I'm new to PostGIS (reasonably) - but I'm plagued with one on-going problem:
I'm able to access PostGIS from various GIS systems using the main 'postgres' user. Using a newly created user 'gis_viewer' - I've granted SELECT and USAGE on SCHEMA etc. Perhaps the only thing I have not done yet is try to get 'gis_viewer' to INHERIT from a role 'rl_gis_viewer'.
Opening QGIS db manager - I can see that the 'gis_viewer' has access to various schema and rights within those schema.
However when I drag that content into QGIS - I get an error message:
Layer is not valid -The layer dbname='MasterMap' host=VMSER-ITG-063 port=5432 user='gis_viewer' password='****' sslmode=disable table="garages"."garages_merge" (wkt_geometry) sql= is not a valid layer and can not be added to the map.
The GIS stackexchange also implies that this is a problem with the layer (unique ID issue) - but that layer is accessible using 'postgres' without these messages. So unless there is a conditional access to layers - I can only assume I've set up gis_viewer incorrectly or PostGIS incorrectly.
Using CADCORP 7.1 - I don't even get that far - apparently the Database does not have PostGIS configured.
This is very much a stumbling block to providing my workplace with access to PostGIS at a SELECT, USAGE level.