Postgres外国数据包装器适用于非管理员用户



我创建了一个外国数据包装器,并为2个用户创建了一个用户映射,一个是管理员,另一个只能阅读对表。当我尝试使用ReadOnly用户查询时,我会收到一个错误:

ERROR: permission denied for schema testing LINE 1: SELECT * FROM testing.bldg ^ ********** Error ********** ERROR: permission denied for schema testing SQL state: 42501 Character: 15

这是我的设置:Postgres 9.6.1在Amazon RDS中,两个DBS均为同一AWS RDS实例的一部分。当我使用ReadOnly用户直接连接到远程数据库时,我可以查询表,只有在使用FDW时才发生问题。

。当我查询此"从pg_foreign_table;"查询此"选择 *"时,

作为阅读的使用。我看到所有外国桌子。

我尝试了以下内容:

grant usage on schema ...
grant select on table...
GRANT USAGE ON FOREIGN SERVER ...

任何想法。

我能够解决问题,以下是:

  1. 在本地DB上创建可读的用户
  2. 在远程DB上创建ReadOnly用户
  3. 为ReadOnly用户创建FDW和用户映射
  4. 授予远程和本地数据库的使用私有(我在本地错过了(
  5. 授予本地和远程数据库上的选择私有给可读的用户。

相关内容

  • 没有找到相关文章

最新更新