sql >> Database >  >> RDS >> PostgreSQL

PostgreSQL Machtigingen van pg_catalog-tabellen intrekken

laat me je hierbij helpen:

  • 1e :omdat de pg_catalog is eigendom van de supergebruiker postgres , dus zorg ervoor dat u inlogt op de server met deze rol:pg_catalog schematoestemming

  • 2e :zorg ervoor dat u verbinding maakt met de rechts database die moet VERLENEN/INTREKKEN machtigingen aan. VERLENEN/INTREKKEN alleen van invloed op de huidige database waarmee u verbinding hebt gemaakt. Dat betekent dat nadat u zich heeft aangemeld met een superuser-account, het volgende probleem moet zijn:\c [the db] om verbinding te maken met die database, verandert de shell in:[the db]=>

  • 3e :tabellen in pg_catalog defaults toegekend SELECT aan PUBLIC:tabellen in pg_catalog. U moet dus REVOKE SELECT FROM PUBLIC uitvoeren en vervolgens GRANT SELECT aan de juiste gebruikers:

    SELECTEER SELECTEREN OP ALLE TABELLEN IN SCHEMA pg_catalog VAN PUBLIEK;

    VERLENEN SELECTEREN OP TABEL [tabel] AAN [gebruiker];

    Voor lijsttabellen in een database:pg_class en pg_namespace .

En dat is alles :)



  1. Eerste rij per groep selecteren

  2. Een tafel controleren op tijdoverlap?

  3. Hoe AppArmor te configureren voor PostgreSQL en TimescaleDB

  4. Meer transactielogvet bijsnijden