From: | Noah Misch <noah(at)leadboat(dot)com> |
---|---|
To: | Bruce Momjian <bruce(at)momjian(dot)us>, Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Erki Eessaar <erki(dot)eessaar(at)taltech(dot)ee>, "pgsql-docs(at)lists(dot)postgresql(dot)org" <pgsql-docs(at)lists(dot)postgresql(dot)org> |
Subject: | Re: SQL-standard function bodies and creating SECURITY DEFINER routines securely |
Date: | 2022-09-12 04:46:47 |
Message-ID: | 20220912044647.GA1404410@rfd.leadboat.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-docs |
On Thu, Sep 08, 2022 at 01:20:31PM +0200, Peter Eisentraut wrote:
> On 01.09.22 03:11, Bruce Momjian wrote:
> >On Tue, Aug 16, 2022 at 03:38:13PM -0400, Bruce Momjian wrote:
> >>On Tue, Aug 16, 2022 at 03:34:22PM -0400, Tom Lane wrote:
> >>>Bruce Momjian <bruce(at)momjian(dot)us> writes:
> >>>>I have written the attached patch to mention this issue about sql_body
> >>>>functions.
> >>>
> >>>Spell-check, please. Seems OK otherwise.
> >Patch applied back to PG 10. Thanks.
>
> This feature is new in PG 14, so backpatching further than that doesn't make
> sense.
Even an sql_body function should override search_path, because it may call
other code that reacts to search_path. Separately, the new sentence is near
the start of a section that addresses more than just search_path. The section
ends with the "revoke the default PUBLIC privileges" topic, which is no less
relevant to sql_body functions.
Documentation needn't explain cases that make a best practice optional, and it
should explain only valuable ones. Omitting search_path on sql_body SECURITY
DEFINER functions isn't that valuable. If it were valuable, the patch's
sentence gives too little detail for the reader to decide what's safe for a
given function. I think this section should not attempt such detail. It's
enough to give the best practice, as the documentation did before this change.
From | Date | Subject | |
---|---|---|---|
Next Message | Joe Conway | 2022-09-12 19:23:38 | Re: how to check specific user_name have “SELECT ON ALL TABLES IN SCHEMA <tableschema>” privilege or not ? |
Previous Message | David G. Johnston | 2022-09-11 16:03:23 | Re: how to check specific user_name have “SELECT ON ALL TABLES IN SCHEMA <tableschema>” privilege or not ? |