Maak verbinding met uw PostgreSQL-serverinstantie met behulp van de volgende opdracht:
sudo -u postgres psql
Selecteer de database die u wilt koppelen aan Chartio:
\c databasename;
Maak een nieuwe rol aan voor uw Chartio alleen-lezen gebruiker:
CREATE ROLE chartio_read_only_user LOGIN PASSWORD 'secure_password';
Verleen de benodigde rechten voor de nieuwe gebruiker om verbinding te maken met uw
database:
GRANT CONNECT ON DATABASE exampledb TO chartio_read_only_user;
GRANT USAGE ON SCHEMA public TO chartio_read_only_user;
Voer de volgende opdracht uit om de query's te genereren die select
toegang verlenen aan uw nieuwe gebruiker:
SELECT 'GRANT SELECT ON '||schemaname||'."'||tablename||'" TO chartio_read_only_user;' FROM pg_tables WHERE schemaname IN ('public') ORDER BY schemaname, tablename;
U ziet een lijst met GRANT-verklaringen die er ongeveer als volgt uitzien:
Kopieer de GRANT-instructies die door de query zijn gegenereerd en plak ze in uw terminalvenster. Als u de toegang tot een subset van tabellen wilt beperken, voert u alleen de GRANT-instructies uit voor de bijbehorende tabellen. Als u de toegang tot specifieke kolommen wilt beperken, leest u hoe u PostgreSQL-toegang kunt beperken met behulp van een schema.
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;
Uw nieuwe alleen-lezen gebruiker heeft nu de benodigde machtigingen voor Chartio om verbinding te maken met uw database.