亚洲国产欧美一区二区三区丁香婷,国产精品高潮呻吟久久av免费看 ,欧美无遮挡一区二区三区国产对白,日本一区二区免费不卡中文字幕

ps破解補丁沒有權限 關于 postgresql 權限的錯誤

PG中的bug允許模式包含由模式所有者以外的用戶擁有的對象。這種情況才會發(fā)生在,當模式擁有者將模式的權限授予其他人,或者超級用戶選擇在模式中創(chuàng)建對象。所以,就存在這么一種情況,一個對象屬于兩個owner,的owner可以直接drop其他用戶創(chuàng)建的對象。模式owner刪除非所屬對象uu1刪除掉了uu2創(chuàng)建的表對象。庫owner刪除非所屬對象...

PG 中的錯誤

根據(jù) SQL 標準ps破解補丁沒有權限,模式的所有者始終擁有其中的所有對象。 允許架構包含架構所有者以外的用戶擁有的對象。

僅當架構所有者將架構的“”權限授予其他人,或者超級用戶選擇在架構中創(chuàng)建對象時,才會發(fā)生這種情況。

因此ps破解補丁沒有權限,存在一種情況ps破解補丁沒有權限

瀏覽器之家

,一個對象屬于兩個所有者,并且所有者可以直接刪除其他用戶創(chuàng)建的對象。

同樣的情況也發(fā)生在。

模式所有者刪除非擁有的對象

創(chuàng)建一個庫和兩個用戶
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創(chuàng)建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


發(fā)現(xiàn)uu1可以刪除uu2創(chuàng)建的表
testdb=> drop table uu1schema.t1;
DROP TABLE

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

可以看出所有者uu1刪除了uu2創(chuàng)建的表對象。

?

庫所有者刪除非擁有的對象

賦予uu1創(chuàng)建database的權限
alter user uu1 createdb;

uu1創(chuàng)建庫
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

發(fā)表評論