ps破解补丁没有权限 关于 postgresql 权限的错误

PG中的bug允许模式包含由模式所有者以外的用户拥有的对象。这种情况才会发生在,当模式拥有者将模式的权限授予其他人,或者超级用户选择在模式中创建对象。所以,就存在这么一种情况,一个对象属于两个owner,的owner可以直接drop其他用户创建的对象。模式owner删除非所属对象uu1删除掉了uu2创建的表对象。库owner删除非所属对象...

PG 中的错误

根据 SQL 标准ps破解补丁没有权限模式的所有者始终拥有其中的所有对象。 允许架构包含架构所有者以外的用户拥有的对象。

仅当架构所有者将架构的“”权限授予其他人,或者超级用户选择在架构中创建对象时,才会发生这种情况。

因此ps破解补丁没有权限,存在一种情况ps破解补丁没有权限

浏览器之家

,一个对象属于两个所有者,并且所有者可以直接删除其他用户创建的对象。

同样的情况也发生在。

模式所有者删除非拥有的对象

创建一个库和两个用户
postgres=# create database tesedb;
CREATE DATABASE
postgres=# \conninfo
You are connected to database "postgres" as user "postgres" via socket in "/tmp" at port "5432".
postgres=# create user uu1;
CREATE ROLE
postgres=# create user uu2;
CREATE ROLE

赋予uu1 create的权限
testdb=> \c testdb postgres;
You are now connected to database "testdb" as user "postgres".
testdb=# grant create on database testdb to uu1;
GRANT


uu1创建schema
testdb=# \c testdb uu1;
You are now connected to database "testdb" as user "uu1".
testdb=> create schema uu1schema;
CREATE SCHEMA
testdb=> \dn+
List of schemas
Name | Owner | Access privileges | Description
-----------+----------+----------------------+------------------------
public | postgres | postgres=UC/postgres+| standard public schema
| | =UC/postgres |
uu1schema | uu1 | |



赋予uu2 create权限
postgres=# \c testdb
You are now connected to database "testdb" as user "postgres".
testdb=# grant create on schema uu1schema to uu2;
GRANT

uu在uu1的schema下去建表
postgres=# \c testdb uu2;
testdb=> create table uu1schema.t1(id int);
CREATE TABLE


发现uu1可以删除uu2创建的表
testdb=> drop table uu1schema.t1;
DROP TABLE

更能直接删除
testdb=> drop schema uu1schema cascade;
NOTICE: drop cascades to table uu1schema.t1
DROP SCHEMA

可以看出所有者uu1删除了uu2创建的表对象。

库所有者删除非拥有的对象

赋予uu1创建database的权限
alter user uu1 createdb;

uu1创建库
testdb=> create database db1;
CREATE DATABASE


uu2连接上db1
\c db1 uu2
create table t1(id int);

切换到uu1
db1=> \c db1 uu1;
You are now connected to database "db1" as user "uu1".
db1=> drop table t1; 无法删除表
ERROR: must be owner of table t1

但是却能直接删库
testdb=> drop database db1;
DROP DATABASE

相关文章

发表评论