为远程连接设置PostgreSQL权限

时间:2018-05-02 10:16:47

标签: postgresql

我想设置一个我可以使用远程用户,用于数据库的用户可以:

  • 执行任何行操作
  • 无法添加新列
  • 无法删除/创建数据库或表格
  • 我不希望用户有权访问其他数据库

我执行了:

GRANT ALL PRIVILEGES ON DATABASE "example" to user_name;
REVOKE CREATE ON DATABASE "example" FROM user_name;

GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO user_name;

以下失败:

REVOKE CREATE ALL TABLES IN SCHEMA public FROM user_name;

    invalid privilege type CREATE for relation

请你加上所有必要的步骤。

另外,:

  1. 帮助设置pg_admin drop中的内容,远程导入数据。
  2. 在Ubuntu中设置/激活完整搜索

1 个答案:

答案 0 :(得分:1)

您可能希望让用户远离架构public中的crating表。

为此,您必须撤销该架构的CREATE权限,该权限默认授予所有人:

REVOKE CREATE ON SCHEMA public FROM PUBLIC;

如果您希望用户拥有将来创建的表的权限,请考虑使用ALTER DEFAULT PRIVILEGES