I have these users:
postgres | Create role, Create DB | {cloudsqlsuperuser}
proxyuser | Create role, Create DB | {cloudsqlsuperuser}
qa|Create role, Create DB | {cloudsqlsuperuser}
And these tables:
List of relations
Schema | Name | Type | Owner
--------+--------------------+-------+-----------
public | member_preferences | table | proxyuser
public | message_queue | table | proxyuser
public | pubsub_queue | table | proxyuser
I am currently logged in as a postgres user and would like to give qa user permissions to read and write from any of those tables and any tables created in that schema in the future.
I was trying to follow this.
However, when I run
GRANT SELECT ON ALL TABLES IN SCHEMA public TO qa;
It responds with:
ERROR: permission denied for relation message_queue
How do I troubleshoot this further? What am I missing?
PostgreSQL 9.6.1 on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4, 64-bit
is the version the instance displays
UPDATE:
I had to login as the proxyuser that was generating the tables in the first place to be able to give the permissions to the other user to read and write. This is really uncomfortable because all the users have the cloudsqlsuperuser
role applied to them. As such, I expect the grant on the table to work from any of these users to any of them.