sql >> Databáze >  >> RDS >> PostgreSQL

Jak vytvořit uživatele s PSQL

Připojte se k instanci serveru PostgreSQL pomocí následujícího příkazu:

sudo -u postgres psql

Vyberte databázi, kterou chcete připojit k Chartio:

\c databasename;

Vytvořte novou roli pro svého uživatele Chartio pouze pro čtení:

CREATE ROLE chartio_read_only_user LOGIN PASSWORD 'secure_password';

Udělte potřebná oprávnění, aby se nový uživatel mohl připojit k vaší
databázi:

GRANT CONNECT ON DATABASE exampledb TO chartio_read_only_user;
GRANT USAGE ON SCHEMA public TO chartio_read_only_user;

Spuštěním následujícího příkazu vygenerujte dotazy, které vašemu novému uživateli udělí
výběrový přístup:

SELECT 'GRANT SELECT ON '||schemaname||'."'||tablename||'" TO chartio_read_only_user;' FROM pg_tables WHERE schemaname IN ('public') ORDER BY schemaname, tablename;

Zobrazí se seznam prohlášení GRANT podobný následujícímu:

Zkopírujte příkazy GRANT vygenerované dotazem a vložte je do okna terminálu. Chcete-li omezit přístup k podmnožině tabulek, spusťte pouze příkazy GRANT pro odpovídající tabulky. Chcete-li omezit přístup ke konkrétním sloupcům, přečtěte si prosím, jak omezit přístup k PostgreSQL pomocí schématu.

GRANT SELECT ON public."album" TO chartio_read_only_user;
GRANT SELECT ON public."artist" TO chartio_read_only_user;
GRANT SELECT ON public."customer" TO chartio_read_only_user;
GRANT SELECT ON public."employee" TO chartio_read_only_user;
GRANT SELECT ON public."genre" TO chartio_read_only_user;
GRANT SELECT ON public."invoice" TO chartio_read_only_user;
GRANT SELECT ON public."invoiceline" TO chartio_read_only_user;
GRANT SELECT ON public."mediatype" TO chartio_read_only_user;
GRANT SELECT ON public."playlist" TO chartio_read_only_user;
GRANT SELECT ON public."playlisttrack" TO chartio_read_only_user;
GRANT SELECT ON public."track" TO chartio_read_only_user;

Váš nový uživatel pouze pro čtení má nyní potřebná oprávnění, aby se Chartio mohlo připojit k vaší databázi.


  1. Převod číslic/čísel ve slovech pro měnu INR (indické rupie) v Oracle PL/SQL

  2. Jak mohu uvést VŠECHNY granty, které uživatel obdržel?

  3. Zpětné inženýrství databáze MySQL pomocí MySQL Workbench

  4. Systém správy relačních databází (RDBMS):MSSQL vs MySQL