Re: replacing role-level NOINHERIT with a grant-level option
От | Robert Haas |
---|---|
Тема | Re: replacing role-level NOINHERIT with a grant-level option |
Дата | |
Msg-id | CA+Tgmoaw_k2jooV214S=2bOBDPPLo7Nnq27-UGp6MNTfk11x5g@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: replacing role-level NOINHERIT with a grant-level option (Joe Conway <mail@joeconway.com>) |
Ответы |
Re: replacing role-level NOINHERIT with a grant-level option
|
Список | pgsql-hackers |
On Fri, Jul 1, 2022 at 8:22 AM Joe Conway <mail@joeconway.com> wrote: > Hmm, maybe I am misunderstanding something, but what I mean is something > like: > > 8<---------------- > CREATE TABLE t1(f1 int); > CREATE TABLE t2(f1 int); > > CREATE USER A; --defaults to INHERIT > CREATE USER B; > CREATE USER C; > > GRANT select ON TABLE t1 TO B; > GRANT select ON TABLE t2 TO C; > > GRANT B TO A; > GRANT C TO A; > > SET SESSION AUTHORIZATION A; > > -- works > SELECT * FROM t1; > -- works > SELECT * FROM t2; > > RESET SESSION AUTHORIZATION; > REVOKE INHERIT OPTION FOR C FROM A; > SET SESSION AUTHORIZATION A; > > -- works > SELECT * FROM t1; > -- fails > SELECT * FROM t2; > 8<---------------- > > So now A has implicit inherited privs for t1 but not for t2. Yeah, I anticipate that this would work in the way that you postulate here. -- Robert Haas EDB: http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: