Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nUaeq-0000yu-Pv for pgsql-hackers@arkaria.postgresql.org; Wed, 16 Mar 2022 20:54:12 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nUadr-0005vw-OJ for pgsql-hackers@arkaria.postgresql.org; Wed, 16 Mar 2022 20:53:11 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nUadr-0005vn-FG for pgsql-hackers@lists.postgresql.org; Wed, 16 Mar 2022 20:53:11 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nUadn-0001kM-Py for pgsql-hackers@postgresql.org; Wed, 16 Mar 2022 20:53:11 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.15.2/8.15.2) with ESMTP id 22GKr2dJ675778; Wed, 16 Mar 2022 16:53:02 -0400 From: Tom Lane To: Andrew Dunstan cc: Mark Dilger , Joshua Brindle , Robert Haas , Jeff Davis , PostgreSQL-development , Joe Conway Subject: Re: Granting SET and ALTER SYSTE privileges for GUCs In-reply-to: <0e512c3b-31c2-7ff5-b80e-760d8ff8060e@dunslane.net> References: <3D691E20-C1D5-4B80-8BA5-6BEB63AF3029@enterprisedb.com> <9DB8DABC-0E1E-4AB0-BB11-9BC48E4C71BE@enterprisedb.com> <2D6C1081-DB7D-4260-8987-5B4912E95917@enterprisedb.com> <1A6DA47B-2D5F-427E-AD72-1D8BD23BF94C@enterprisedb.com> <79685.1646604824@sss.pgh.pa.us> <83814.1646607430@sss.pgh.pa.us> <78889A65-CA7A-4015-866D-33460967071D@enterprisedb.com> <92485.1646609263@sss.pgh.pa.us> <43857434-3f9b-3! 66f-0401-7aea558827e1@dunslane.net> <664799.1647456444@sss.pgh.pa.us> <0e512c3b-31c2-7ff5-b80e-760d8ff8060e@dunslane.net> Comments: In-reply-to Andrew Dunstan message dated "Wed, 16 Mar 2022 16:07:43 -0400" MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-ID: <675776.1647463982.1@sss.pgh.pa.us> Content-Transfer-Encoding: 8bit Date: Wed, 16 Mar 2022 16:53:02 -0400 Message-ID: <675777.1647463982@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Andrew Dunstan writes: > On 3/16/22 14:47, Tom Lane wrote: >> I'm also fairly allergic to the way that this patch has decided to assign >> multi-word names to privilege types (ie SET VALUE, ALTER SYSTEM). There >> is no existing precedent for that, and I think it's going to break >> client-side code that we don't need to break. It's not coincidental that >> this forces weird changes in rules about whitespace in the has_privilege >> functions, for example; and if you think that isn't going to cause >> problems I think you are wrong. Perhaps we could just use "SET" and >> "ALTER", or "SET" and "SYSTEM"? > That's going to look weird, ISTM. This is less clear about what it's > granting. >      GRANT ALTER ON SOMETHING shared_buffers TO myuser; True. I think "GRANT SET" is clear enough, and it fits with the custom of using the name of the SQL statement that the privilege allows you to invoke. (I gather from Mark's comments that Bison gave him problems with that, but maybe that can be dealt with.) But I concede that "ALTER" by itself is pretty vague. > If you don't like that maybe ALTER_SYSTEM and SET_VALUE would work, > although mostly we have avoided things like that. > How about MODIFY instead of SET VALUE and CONFIGURE instead of ALTER SYSTEM? I thought about ALTER_SYSTEM too. It's not great but maybe the best we can do. Not sure that CONFIGURE is better. > Personally I don't have problem with the use of SETTING. I think the > meaning is pretty plain in context and unlikely to produce any confusion. I'm just unhappy about the disconnect with the documentation. I wonder if we could get away with s/configuration parameter/setting/g in the docs. regards, tom lane