PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как да създадете потребител с PSQL

Свържете се с вашия екземпляр на PostgreSQL сървър, като използвате следната команда:

sudo -u postgres psql

Изберете базата данни, която искате да свържете с Chartio:

\c databasename;

Създайте нова роля за вашия потребител само за четене в Chartio:

CREATE ROLE chartio_read_only_user LOGIN PASSWORD 'secure_password';

Предоставете необходимите привилегии на новия потребител да се свърже с вашата
база данни:

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

Изпълнете следната команда, за да генерирате заявките, които ще предоставят select
достъп на вашия нов потребител:

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

Ще видите списък с изрази GRANT, подобен на следния:

Копирайте изразите GRANT, генерирани от заявката, и след това ги поставете във вашия терминален прозорец. За да ограничите достъпа до подмножество от таблици, изпълнете операторите GRANT само за съответните таблици. За да ограничите достъпа до конкретни колони, моля, прочетете как да ограничите достъпа на PostgreSQL с помощта на схема.

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;

Вашият нов потребител само за четене вече има необходимите разрешения, за да може Chartio да се свърже с вашата база данни.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Какво точно прави pg_escape_string?

  2. Прехвърляне на тип данни на Postgres

  3. Как to_date() работи в PostgreSQL

  4. Търсете в JSON масив за обект, съдържащ стойност, съответстваща на шаблон

  5. GeoDjango на Windows:Не можа да се намери библиотеката GDAL / OSError:[WinError 126] Посоченият модул не може да бъде намерен