我无法从 postgres 数据库中删除角色。运行 DROP ROLE 语句会输出以下错误:
DROP ROLE read_only;
SQL Error [2BP01]: ERROR: role "read_only" cannot be dropped because some objects depend on it
Detail: privileges for table orgs.client
当我尝试从表中撤销这些权限时,REVOKE 语句成功(没有任何错误):
REVOKE ALL PRIVILEGES ON TABLE orgs.client FROM read_only;
但是,如果我再次尝试放弃该角色,我会收到上述相同的错误。
我不知道为什么 REVOKE 语句没有按预期工作。或者也许它正在工作,但问题是其他的。关于如何解决此问题,有什么想法吗?
输出\z orgs.client
:
Access privileges
Schema | Name | Type | Access privileges | Column privileges | Policies
--------+--------+-------+---------------------------------------------------------------------------------+-------------------+----------
orgs | client | table | "prisma-beta-gsa@REDACTED"=arwdDxt/"[email protected]" +| |
| | | REDACTED_dev=arwdDxt/"[email protected]" +| |
| | | landlord=a*r*w*d*D*x*t*/"[email protected]" +| |
| | | read_only=r/landlord +| |
| | | read_write=arwd/landlord +| |
| | | landlord=a*r*w*d*D*x*t*/costa +| |
| | | landlord=arwdDxt/landlord +| |
| | | REDACTED_read_only=r/"[email protected]" +| |
| | | REDACTED_read_write=arwdD/"[email protected]" +| |
| | | REDACTED_admin=arwdDxt/"[email protected]" | |
注意:我正在使用托管在 Google Cloud SQL 实例中的 postgres 11。因此,我无法访问超级用户角色。但我可以访问postgres
最接近超级用户的用户(文档)。