我创建了一个外部数据包装器并为 2 个用户创建了用户映射,一个是管理员,另一个只有对表的只读访问权限。当我尝试使用只读用户进行查询时,出现错误:
ERROR: permission denied for schema testing LINE 1: SELECT * FROM testing.bldg ^ ********** Error ********** ERROR: permission denied for schema testing SQL state: 42501 Character: 15
这是我的设置:Amazon RDS 中的 Postgres 9.6.1,两个数据库都是同一个 AWS RDS 实例的一部分。当我使用只读用户直接连接到远程数据库时,我能够查询表,问题仅在使用 fdw 时发生。
作为我查询此“select * from pg_foreign_table;”时的只读用途 我看到所有的外国桌子。
我尝试了以下方法:
grant usage on schema ...
grant select on table...
GRANT USAGE ON FOREIGN SERVER ...
有任何想法吗。