Я посмотрел на страницу, которую вы упомянули, и сделал следующие шаги:
Подключение к облачному экземпляру SQL:
psql -h $HOST -U postgres -W -d app_development
Password for user postgres:
psql (9.6.10, server 9.6.6)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES128-GCM-SHA256, bits: 128, compression: off)
Type "help" for help.
Создал таблицу users
:
app_development=> create table users (id int);
CREATE TABLE
Создал пользователя / роль "data-studio" и предоставил соединение с этой схемой:
app_development=> CREATE USER "data-studio";
CREATE ROLE
app_development=> \password "data-studio"
Enter new password:
Enter it again:
app_development=> GRANT CONNECT ON DATABASE app_development TO "data-studio";
GRANT
И наконец предоставил SELECT
привилегии для таблицы:
app_development=> GRANT SELECT ON users TO "data-studio";
GRANT
Чтобы проверить, работает ли он, свяжитесь с пользователем «data-studio»:
psql -h 104.154.148.111 -U "data-studio" -W -d app_development
Password for user data-studio:
psql (9.6.10, server 9.6.6)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES128-GCM-SHA256, bits: 128, compression: off)
Type "help" for help.
app_development=> select * from users;
id
----
(0 rows)
app_development=> insert into users (id) values (1);
ERROR: permission denied
По этой ссылке есть комментарий, показывающий, что первая команда неверна.Надеюсь, это поможет.