Postgres:限制用户查看模式的能力

Postgres: Restricting users ability to view schemas

我目前在 Postgres 工作,并且正在创建一些用户。在创建这些用户并对其进行测试时,我注意到他们能够查看比他们有权访问的更多的模式。除此之外,他们还可以查看受限的 Schemas 表、视图和函数。这不理想。

在创建用户和他们的权限时,有没有办法让用户设置为他们只能查看某些模式,而不是我们数据库中的所有模式?

我还应该提到,这些用户将使用 PgAdmin 或 Tableau 查看我们的 postgres 数据库。

是的。使用命令 GRANT USAGE ON [schemaname] TO [username]REVOKE USAGE ON [schemaname] FROM [username] 来控制对架构本身的访问。

您可能还需要执行 REVOKE USAGE ON [schemaname] FROM public 以删除默认访问权限。

我建议查看 https://www.postgresql.org/docs/current/static/sql-grant.html 以获得完整的 GRANT 命令集,因为您可能还需要 grant/revoke read/write 访问某些表。