From: Tom Lane <tgl@sss.pgh.pa.us>
To: David G. Johnston <david.g.johnston@gmail.com>
Cc: Swanand Kshirsagar <swanandon@gmail.com>
Cc: pgsql-admin@lists.postgresql.org <pgsql-admin@lists.postgresql.org>
Subject: Re: Restrict permissions on schema to hide pl/pgsql code
Date: Wed, 24 Jul 2019 13:15:39 -0400
Message-ID: <30893.1563988539@sss.pgh.pa.us> (raw)
In-Reply-To: <CAKFQuwak90CZEsyuCqGeibmRsH-9pzer8O086mzgomdGtF-TSA@mail.gmail.com>
References: <CAMn6ZARbP+r=AdDpFG1xC217=+mMVOsqnVBLL4Pf+ktDJt33gA@mail.gmail.com>
<CAKFQuwasburx+UXm9Do9CFVRKFtET=US2zrYnrJcGW9aob5xrg@mail.gmail.com>
<CAMn6ZASyECgGPn1TtPnimgBXjFY--=Ay7SYFouvVG4PV3NSrJQ@mail.gmail.com>
<CAKFQuwak90CZEsyuCqGeibmRsH-9pzer8O086mzgomdGtF-TSA@mail.gmail.com>
"David G. Johnston" <david.g.johnston@gmail.com> writes:
> You can consider this email to have accomplished both. Lacking someone
> saying they they are working on it and pointing you to a patch you can
> safely operate under the assumption that this behavior isn’t going to
> change.
It isn't. We've considered complaints like this before and determined
that we're not going to do anything about it. For better or worse, the
PG catalogs are readable by any authorized user, with only narrow
exceptions (like password columns).
A sufficiently determined person could perhaps do something like creating
their own PL that stores encrypted function source text in pg_proc, and
just hands it off to an existing PL after decryption. I'm not exactly
sure where you'd keep the decryption key though.
regards, tom lane
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-admin@postgresql.org
Cc: tgl@sss.pgh.pa.us, david.g.johnston@gmail.com, swanandon@gmail.com, pgsql-admin@lists.postgresql.org
Subject: Re: Restrict permissions on schema to hide pl/pgsql code
In-Reply-To: <30893.1563988539@sss.pgh.pa.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox