Re: replacing role-level NOINHERIT with a grant-level option
Nathan Bossart <nathandbossart@gmail.com>
From: Nathan Bossart <nathandbossart@gmail.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Joe Conway <mail@joeconway.com>, Tom Lane <tgl@sss.pgh.pa.us>, "Bossart, Nathan" <bossartn@amazon.com>, Stephen Frost <sfrost@snowman.net>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2022-07-08T21:02:31Z
Lists: pgsql-hackers
On Fri, Jul 08, 2022 at 03:56:56PM -0400, Robert Haas wrote: > For those who may not have read the entire thread, the current patch > does not actually remove the role-level option as the subject line > suggests, but rather makes it set the default for future grants as > suggested by Tom in > http://postgr.es/m/1066202.1654190251@sss.pgh.pa.us I think this is an interesting approach, as it seems to move things closer to the end goal (i.e., removing [NO]INHERIT), but it also introduces a pretty significant compatibility break. With this change, you cannot keep using [NO]INHERIT like you do today. You will also need to individually update each GRANT. The advantage of using [NO]INHERIT as the fallback value in the absence of a grant-level option is that users don't need to adjust behavior right away. They can essentially ignore the new grant-level options for now, although presumably they'd need to adjust at some point. IMO we should either retain compatibility for existing scripts for now, or we should remove [NO]INHERIT completely in v16. I'm worried that keeping [NO]INHERIT around while changing its behavior somewhat subtly is only going to create confusion. -- Nathan Bossart Amazon Web Services: https://aws.amazon.com
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix a bug in roles_is_member_of.
- 0101f770a05b 16.0 landed
-
docs: Fix up some out-of-date references to INHERIT/NOINHERIT.
- 620ac285483f 16.0 landed
-
Allow grant-level control of role inheritance behavior.
- e3ce2de09d81 16.0 landed
-
Make role grant system more consistent with other privileges.
- ce6b672e4455 16.0 cited
-
Document basebackup_to_shell.required_role.
- 26a0c025e233 15.0 landed