What's the simplest way to grant read-only access to an existing
database? One approach I guess would be to create a user who has
SELECT but not INSERT etc privileges. But it appears that GRANT SELECT
does not work at the schema or database level. This means I'd not only
have to create hundreds of GRANT statements, but also remember to
issue an additional GRANT whenever a new table is created!
I came across some PL/pgSQL procedures for doing batch GRANTs, but
they appear to be outdated (i.e. don't work with 8.3) and are "run at
your own risk". There was also mention that pgAdmin had a function to
batch GRANTs, but I couldn't find any such thing in the current
version...
Any other ideas?