Re: Allow CURRENT_ROLE in GRANTED BY

Peter Eisentraut <peter.eisentraut@2ndquadrant.com>

From: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
To: pgsql-hackers <pgsql-hackers@postgresql.org>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>
Date: 2020-08-26T11:00:57Z
Lists: pgsql-hackers

Attachments

On 2020-06-29 14:47, Peter Eisentraut wrote:
> On 2020-06-24 23:08, Alvaro Herrera wrote:
>> On 2020-Jun-24, Peter Eisentraut wrote:
>>
>>> I was checking some loose ends in SQL conformance, when I noticed: We
>>> support GRANT role ... GRANTED BY CURRENT_USER, but we don't support
>>> CURRENT_ROLE in that place, even though in PostgreSQL they are equivalent.
>>> Here is a trivial patch to add that.
>>
>> Hmm, since this adds to RoleSpec, this change makes every place that
>> uses that production also take CURRENT_ROLE, so we'd need to document in
>> all those places.  For example, alter_role.sgml, create_schema.sgml,
>> etc.
> 
> Good point.  Here is an updated patch that updates all the documentation
> places where CURRENT_USER is mentioned.

Here is another patch that also makes comprehensive updates to the 
rolenames tests under src/test/modules/unsafe_tests/.

I think this should now cover all the required ancillary changes.

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Commits

  1. Fix GRANTED BY support in REVOKE ROLE statements

  2. Allow GRANTED BY clause in normal GRANT and REVOKE statements

  3. Try to stabilize output from rolenames regression test.

  4. Allow CURRENT_ROLE where CURRENT_USER is accepted