首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于非管理用户的postgres外部数据包装器

问用于非管理用户的postgres外部数据包装器
EN

Stack Overflow用户
提问于 2017-04-17 19:45:15
回答 1查看 2.8K关注 0票数 1

我创建了一个外部数据包装器,并为两个用户创建了用户映射,一个是admin,另一个是只读访问表。当我试图使用只读用户进行查询时,我会得到一个错误:

代码语言:javascript
复制
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中,两个DB都是同一个AWS RDS实例的一部分。当我使用只读用户直接连接到远程数据库时,我能够查询表,只有使用fdw时才会出现问题。

当我查询这个"select * from pg_foreign_table;“时,我看到了所有的外部表。

我尝试了以下几点:

代码语言:javascript
复制
grant usage on schema ...
grant select on table...
GRANT USAGE ON FOREIGN SERVER ...

任何想法。

EN

回答 1

Stack Overflow用户

发布于 2017-04-18 16:19:36

我能够解决这个问题,以下是几个步骤:

  1. 在本地DB上创建只读用户
  2. 在远程DB上创建只读用户
  3. 为只读用户创建fdw和用户映射
  4. 授予远程和本地db上的使用权限(本地数据库中缺少此权限)
  5. 将本地和远程数据库上的特权授予只读用户。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43458479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档