【问题标题】:Create database administrator role创建数据库管理员角色
【发布时间】:2019-06-24 18:16:29
【问题描述】:

我正在使用 postgres 9.6。 我有具有 postgres 角色所有者的数据库。我需要另一个用户,该用户将成为该数据库的管理员。这个用户可以做任何事情,比如 dml 或 ddl 查询。 此外,我首先使用实体​​框架代码,并且其中的新模式和对象将来会出现在我的数据库中。 那么如何创建这个角色呢?

我看到了有关 postgres 安全性的文档,但我不明白为什么这么简单的事情很难实现。

我需要更改数据库所有者或授予所有表中的所有权限,好的(但新对象可以由我的用户或 postgres 创建)。 有“更改默认权限”命令,但它仅用于特定模式(不是全部) 那么我该如何实现这个场景呢?

【问题讨论】:

  • 您可以让其他用户成为数据库的所有者。

标签: postgresql


【解决方案1】:

只有对象的所有者或超级用户才能对对象执行 DDL 语句。

因此,无论是谁创建了对象,创建第二个用户的唯一方法就是让第二个用户成为超级用户。

这很简单,但是您当然应该永远不要让应用程序与超级用户连接。

在安全方面,您可以选择:

  1. 你不想花任何心思在这上面,你也不在乎是否有安全问题。

  2. 你想一想,想出一个合理的安全概念。

【讨论】:

    猜你喜欢
    • 2015-05-28
    • 2016-09-10
    • 1970-01-01
    • 1970-01-01
    • 2021-10-06
    • 2017-08-10
    • 1970-01-01
    • 2011-09-26
    • 1970-01-01
    相关资源
    最近更新 更多