lad mig hjælpe dig med dette:
-
1. :fordi
pg_catalog
ejes af superbrugeren postgres , så sørg for at logge ind på serveren med denne rolle:pg_catalog-skematilladelse -
2. :sørg for at oprette forbindelse til højre database, der skal GIVE/REVOKE tilladelser på. GRANT/REVOKE påvirker kun den aktuelle database, som du har oprettet forbindelse til. Det betyder, at efter du har logget ind med en superbrugerkonto, problemet:\c [db] for at oprette forbindelse til den database, ændres skallen til:[db]=>
-
3. :tabeller i
pg_catalog
standarder tildelt SELECT til PUBLIC:tabeller i pg_catalog. Så du skal køre REVOKE SELECT FROM PUBLIC og derefter GRANTE SELECT til relevante brugere:TILBAGE VALG PÅ ALLE TABELLER I SCHEMA pg_catalog FROM OFFENTLIGT;
TILDEL VALG PÅ TABEL [tabel] TIL [bruger];
For listetabeller i en database:pg_class og pg_namespace .
Og det er alt :)