Een lijst met dingen die je verkeerd hebt begrepen:
-
ALTER DEFAULT PRIVILEGES
verandert niets aan de machtigingen voor een bestaand object, in uw geval het schema.U moet toekennen de
CREATE
voorrecht op het schema:GRANT CREATE ON SCHEMA tn_schema TO tn_beta_migrator;
-
De
ALTER DEFAULT PRIVILEGES
verklaring die u hebt uitgevoerd, heeft alleen invloed op de machtigingen voor tabellen die zijn gemaakt door gebruikerpostgres
in schematn_schema
, maar het lijkt erop dat utn_beta_migrator
. wilt om tabellen te maken.U hebt
ALTER DEFAULT PRIVILEGES
niet nodig helemaal niet, aangezien de gebruiker die de tafel aanmaakt de eigenaar van de tafel wordt en standaard alle privileges op de tafel heeft. -
U kunt standaardrechten bekijken met
\ddp
inpsql
. -
Schema's maken deel uit van een database, dus u moet verbinding maken met de database om de schema's te zien.
Als u wilt dat de tabellen die zijn gemaakt door tn_beta_migrator
standaard bepaalde machtigingen krijgt, moet u standaardrechten voor die gebruiker define definiëren (en niet voor postgres
, zoals jij deed):
ALTER DEFAULT PRIVILEGES FOR ROLE tn_beta_migrator IN SCHEMA tn_schema GRANT ...;