Peter Eisentraut wrote:
On tor, 2009-12-10 at 17:20 -0500, Andrew Dunstan wrote:
Some time later it came up again, this time when someone wanted to use a readonly database (hence no pg_dump required) with an application and wanted to keep the database layout and the source code of stored functions hidden as they regarded it as proprietary information.

Well, the information schema already implements a policy of this sort,
because it only shows information about things you have some kind of
access to. (I assume you are allowed to know about the things you have
access to.)

The problem in this sort of scheme is always that the system catalogs
are world readable, and changing that would break about every tool and
driver in existence.  It's not clear how to fix that, at least not
without row-level security.  Or how did your old patch address this?



Well, it will certainly break plenty of things. But it didn't prevent the client from doing the things we wanted to allow it to do, i.e. make a few function calls.

Basically what I did was to revoke public privileges from just about everything I could lay my hands on and regrant the same privileges to a group called pseudopublic, which contained every user but the one I wanted to restrict. The client I tested with was psql, and I recall being surprised that I was still able to do what I wanted - I had thought I would break things completely. I haven't tried to repeat the experiment recently, though.

cheers

andrew

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to