Re: allowing for control over SET ROLE

Поиск
Список
Период
Сортировка
От Peter Eisentraut
Тема Re: allowing for control over SET ROLE
Дата
Msg-id 747244eb-0321-bc41-0177-7b31df240427@enterprisedb.com
обсуждение исходный текст
Ответ на allowing for control over SET ROLE  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: allowing for control over SET ROLE  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
On 31.08.22 14:56, Robert Haas wrote:
> In some circumstances, it may be desirable to control this behavior.
> For example, if we GRANT pg_read_all_settings TO seer, we do want the
> seer to be able to read all the settings, else we would not have
> granted the role. But we might not want the seer to be able to do
> this:
> 
> You are now connected to database "rhaas" as user "seer".
> rhaas=> set role pg_read_all_settings;
> SET
> rhaas=> create table artifact (a int);
> CREATE TABLE
> rhaas=> \d
>                  List of relations
>   Schema |   Name   | Type  |        Owner
> --------+----------+-------+----------------------
>   public | artifact | table | pg_read_all_settings
> (1 row)

I think this is because we have (erroneously) make SET ROLE to be the 
same as SET SESSION AUTHORIZATION.  If those two were separate (i.e., 
there is a current user and a separate current role, as in the SQL 
standard), then this would be more straightforward.

I don't know if it's possible to untangle that at this point.




В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Can we avoid chdir'ing in resolve_symlinks() ?
Следующее
От: Peter Eisentraut
Дата:
Сообщение: Re: preserve timestamps when installing headers