En lista över saker du missförstått:
-
ALTER DEFAULT PRIVILEGES
ändrar inte behörigheterna för något befintligt objekt, i ditt fall schemat.Du måste bevilja
CREATE
privilegium på schemat:GRANT CREATE ON SCHEMA tn_schema TO tn_beta_migrator;
-
ALTER DEFAULT PRIVILEGES
uttalande du körde kommer endast att påverka behörigheterna för tabeller skapade av användarenpostgres
i schemattn_schema
, men det verkar som att du vill hatn_beta_migrator
för att skapa tabeller.Du behöver inte
ALTER DEFAULT PRIVILEGES
alls, eftersom användaren som skapar tabellen blir tabellägare och har alla privilegier på tabellen som standard. -
Du kan se standardbehörigheter med
\ddp
ipsql
. -
Scheman är en del av en databas, så du måste ansluta till databasen för att se dess scheman.
Om du vill att tabellerna skapas av tn_beta_migrator
få vissa behörigheter som standard måste du definiera standardbehörigheter för den användaren (och inte för postgres
, som du gjorde):
ALTER DEFAULT PRIVILEGES FOR ROLE tn_beta_migrator IN SCHEMA tn_schema GRANT ...;