From: | Jeff Davis <pgsql(at)j-davis(dot)com> |
---|---|
To: | Robert Haas <robertmhaas(at)gmail(dot)com> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Jacob Champion <jchampion(at)timescale(dot)com>, Stephen Frost <sfrost(at)snowman(dot)net>, "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>, Mark Dilger <mark(dot)dilger(at)enterprisedb(dot)com>, Andrew Dunstan <andrew(at)dunslane(dot)net>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: pg_auth_members.grantor is bunk |
Date: | 2022-09-07 01:27:32 |
Message-ID: | 79b225aa7d721b31fbe0fe518f434f9bb16a6c12.camel@j-davis.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, 2022-09-06 at 16:26 -0700, Jeff Davis wrote:
> In other words, omitting
> GRANTED BY is the same as specifying "GRANTED BY current_user".
Let me correct this thinko to distinguish between specifying GRANTED BY
and not:
* Let the granting user be the one specified in the GRANTED BY clause
if it exists; otherwise the current user.
* If the granting user has privileges to be the grantor (ADMIN OPTION
for roles, GRANT OPTION for other objects) then the granting user is
the grantor.
* Else if GRANTED BY was *not* specified, infer the grantor:
- If the granting user inherits from a role with the privileges
to be the grantor, then it selects a role with the fewest inheritance
hops as the grantor.
- Else if the current user is any superuser, the grantor is the top
"owner" (bootstrap superuser for roles; object owner for other objects)
* Else error (or if an error would break important backwards
compatibility, silently make it work like before and perhaps issue a
WARNING).
The basic idea is to use superuser privileges as a last resort in order
to maximize the cases that work normally (independent of superuser-
ness).
Regards,
Jeff Davis
From | Date | Subject | |
---|---|---|---|
Next Message | Jonathan S. Katz | 2022-09-07 01:40:23 | PostgreSQL 15 Beta 4 release announcement draft |
Previous Message | Reid Thompson | 2022-09-07 00:25:06 | Re: Add the ability to limit the amount of memory that can be allocated to backends. |