Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / TRUNCATE для не владельца? / 4 сообщений из 4, страница 1 из 1
07.04.2005, 14:39
    #33002779
Hordi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TRUNCATE для не владельца?
Не могу выполнить TRUNCATE для таблицы из-под пользователя, который не является ее владельцем.Возможно ли это в принципе?
...
Рейтинг: 0 / 0
08.04.2005, 03:32
    #33003874
фффф
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TRUNCATE для не владельца?
Через функцию с SECURITY DEFINER всё возможно.
...
Рейтинг: 0 / 0
08.04.2005, 10:05
    #33004071
Hordi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TRUNCATE для не владельца?
А подробнее можно? Плз.
...
Рейтинг: 0 / 0
08.04.2005, 11:17
    #33004288
фффф
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TRUNCATE для не владельца?
Пожалуйста:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
test=> \c - postgres
You are now connected as new user "postgres".
test=> create table testtrunc(i int);
CREATE TABLE
test=> grant select on testtrunc to user1;
GRANT
test=> insert into testtrunc values ( 1 );
INSERT  0   1 
test=> CREATE OR REPLACE FUNCTION truncate_testtrunc() RETURNS void AS
test-> 'truncate table testtrunc' LANGUAGE sql SECURITY DEFINER;
CREATE FUNCTION
test=> grant execute on function truncate_testtrunc() to user1;
GRANT
test=> \c - user1
You are now connected as new user "user1".
test=> select * from testtrunc;
 i 
---
  1 
( 1  row)
test=> truncate table testtrunc;
ERROR:  must be owner of relation testtrunc
test=> select truncate_testtrunc();
 truncate_testtrunc 
--------------------
 
( 1  row)
test=> select * from testtrunc;
 i 
---
( 0  rows)
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / TRUNCATE для не владельца? / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]