Skip site navigation (1) Skip section navigation (2)

Re: Разделение прав

From: "Andrey N(dot) Oktyabrski" <ano(at)antora(dot)ru>
To: "Andrey N(dot) Oktyabrski" <ano(at)antora(dot)ru>
Cc: pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org>
Subject: Re: Разделение прав
Date: 2006-02-14 14:51:57
Message-ID: 43F1EE8D.30806@antora.ru (view raw or flat)
Thread:
Lists: pgsql-ru-general
Andrey N. Oktyabrski wrote:
> Здравствуйте.
> 
> Стоит такая задача:
> есть несколько таблиц, записи в них имеют признак типа "такой-то юзер 
> постгреса имеет право на select/update этой записи", надо сделать 
> как-то, чтобы юзер не мог сделать то, что ему запрещено.
> 
> Я планировал сделать это так:
> create table _tbl (...);
> create view tbl as select * from _tbl where owner = session_user();
> revoke all on tbl from <юзер>;
> grant select on tbl to <юзер>;
> revoke all on _tbl from <юзер>;
> grant insert, update, delete on _tbl to <юзер>;
> 
> Но тогда
> update _tbl set fld = 123 where id = 21;
> не работает - постгрес говорит, что нет прав. grant select on _tbl to 
> <юзер> спасает, но я не хочу чтобы юзер читал из таблицы, для этого 
> сделано представление-подмножество таблицы.
> 
> Как выйти из положения? Или есть какое-то решение без view?
Да, мысль пришла... Может ли кто-нибудь подсказать, в каком месте хачить 
исходники постгреса на предмет разрешения update без прав на select? С 
целью соорудить патч и попытаться попросить Олега закоммитить его :-) 
Если это, конечно, politically correct solution.

Responses

pgsql-ru-general by date

Next:From: Oleg BartunovDate: 2006-02-14 15:43:43
Subject: Re: Разделение прав
Previous:From: Andrey N. OktyabrskiDate: 2006-02-14 12:08:13
Subject: Re: Разделение

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group