phpPgAdmin,从一个用户查看/创建表等



我正在努力实现以下目标:

我有创建的user1。这个user1有数据库user1_db1、user1_db2、user1_db3

当我将user1的所有者授予所有数据库时,我可以对它们执行所有操作,除非我创建user1_user1,将all访问权限(无所有者(授予user1_db。然后user1_user1将抛出以下错误:user1_user1=>ALTER DATABASE";user1_ dbl";SET byta_output="转义";错误:必须是数据库user1_db1 的所有者

我需要的是一个特殊用户(在本例中为user1_user1(,以便在使用user1登录时能够对已授予所有访问权限的数据库执行所有操作,并且在phppgadmin中仍然可见(当设置了$conf['owned_only']=true;时(,或者如果需要,我可以为phppgadmin创建一个特殊的用户,但必须仅查看前缀为user1的数据库。

也许我的方法不合适,所以请让我知道我如何才能做到这一点。

目标是让1个用户能够访问/修改所有这些数据库,在相同的场景中,user1_user1能够执行相同的操作,但不能访问phppgadmin。我看到的限制只是所有权,我无法绕过它。。。谢谢你的建议!

您可以对所有数据库使用相同的用户,但您需要为该用户提供对每个数据库的访问权限。您可以通过运行以下SQL:来做到这一点

GRANT ALL PRIVILEGES ON DATABASE user1_db1 TO user1_user1; GRANT ALL PRIVILEGES ON DATABASE user1_db2 TO user1_user1; GRANT ALL PRIVILEGES ON DATABASE user1_db3 TO user1_user1;

您还可以通过运行以下SQL:为用户提供对所有数据库的访问权限

GRANT ALL PRIVILEGES ON ALL DATABASES TO user1_user1;

您还可以通过运行以下SQL:来允许用户访问数据库中的所有表

GRANT ALL PRIVILEGES ON user1_db1.* TO user1_user1;

您还可以通过运行以下SQL:来允许用户访问所有数据库中的所有表

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

您还可以通过运行以下SQL:,让用户访问数据库中的所有序列

GRANT ALL PRIVILEGES ON user1_db1 TO user1_user1;

您还可以通过运行以下SQL:,让用户访问所有数据库中的所有序列

GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO user1_user1;

您还可以通过运行以下SQL:来允许用户访问数据库中的所有函数

GRANT ALL PRIVILEGES ON user1_db1 TO user1_user1;

您还可以通过运行以下SQL:,让用户访问所有数据库中的所有函数

GRANT ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public TO user1_user1;

您还可以通过运行以下SQL:来允许用户访问数据库中的所有类型

GRANT ALL PRIVILEGES ON user1_db1 TO user1_user1;

您还可以通过运行以下SQL:,让用户访问所有数据库中的所有类型

GRANT ALL PRIVILEGES ON ALL TYPES IN SCHEMA public TO user1_user1;

您还可以通过运行以下SQL:来允许用户访问数据库中的所有运算符

GROMMySQL:如何将所有数据库和表的所有权限授予用户?

最好的方法是在上使用GRANT ALL PRIVILEGESTO'user'@'localhost'语法。

GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password';

这将赋予用户对所有数据库和表的所有权限。

我终于使用了成员身份:

postgres=# du
List of roles
Role name     |                         Attributes                         |      Member of
-------------------+------------------------------------------------------------+---------------------
user1          |                                                            | {user1_pgsqluser}
user1_pgsqluser |                                                            | {}

这可以通过以下方式授予:

psql -U postgres -c 'grant $dbuser to $user;'

相关内容

  • 没有找到相关文章

最新更新