GRANT SELECT Simply not working
我有一个用户,我需要允许
我已经尝试了所有以下链接的建议解决方案:
如何在PostgreSQL中创建只读用户?
错误:在尝试将SELECT作为只读用户时,Postgres上关系表名的权限被拒绝
关系允许被拒绝
......以及对PSQL文档,博客和用户组的更多参考。什么都行不通。
以下是我最近用作授予权限的postgres用户的命令:
1 2 3 4 5 6 7 8 9 10 | postgres@dev:~$ psql psql (9.1.9) TYPE"help" FOR help. postgres=# GRANT usage ON SCHEMA public TO proton_read; GRANT postgres=# GRANT SELECT ON ALL TABLES IN schema public TO proton_read; GRANT postgres=# ALTER DEFAULT privileges IN schema public GRANT SELECT ON TABLES TO proton_read; ALTER DEFAULT PRIVILEGES |
以下是用作只读用户的命令:
1 2 3 4 5 6 | proton_read@dev:~$ psql proton psql (9.1.9) TYPE"help" FOR help. proton=> SELECT * FROM leads_lead LIMIT 1; ERROR: permission denied FOR relation leads_lead |
这是踢球者,我有一次工作。我有一个示例数据库转储,我用它来向业务同事讲授基本的SQL。我们介绍了简单的命令,如
任何帮助将不胜感激。
在PostgreSQL中,每个连接都是针对特定的数据库,并且您运行的几乎所有内容都只在该数据库中生效。 (一个例外是用户/角色本身的创建对于整个"集群"是全局的,即运行Postgres服务器。)
在您显示的
因此,只有这个数据库才会被
您的第二个示例使用正确的命令连接到特定数据库
因此,您需要做的就是以