Re: Can user specification of a column value be required when querying a view ? - Mailing list pgsql-general

From Ron Johnson
Subject Re: Can user specification of a column value be required when querying a view ?
Date
Msg-id CANzqJaCcfpS+65ygYfmV9fUqHMrJXzt8r_pmo5hmoK+JxNBOLg@mail.gmail.com
Whole thread Raw
In response to Re: Can user specification of a column value be required when querying a view ?  (Alan Hodgson <ahodgson@lists.simkin.ca>)
Responses Re: Can user specification of a column value be required when querying a view ?
List pgsql-general
Or row level security.

On Mon, Nov 20, 2023 at 9:25 PM Alan Hodgson <ahodgson@lists.simkin.ca> wrote:
On Mon, 2023-11-20 at 13:44 -0800, Christophe Pettus wrote:


On Nov 20, 2023, at 13:41, David Gauthier <dfgpostgres@gmail.com> wrote:
I want the users to be required to provide a value for ssn in the following query...
"select * from huge_view where ssn = '106-91-9930' "
I never want them to query the view without specifying ssn.
It has to do with resources and practicality.

Is there a way to do that ?

Not in a way that PostgreSQL itself will enforce.  If you are concerned about a query running wild and taking up resources, setting statement_timeout for the user that will be running these queries is the best way forward.  A user that has general access to PostgreSQL and can run arbitrary queries will be able to craft a query that takes up a lot of system time and memory without too much trouble.

If it's really about SSN's it might be more about bulk access to PII than performance.

A function is probably the right choice in either case.

pgsql-general by date:

Previous
From: Merlin Moncure
Date:
Subject: Re: Prepared statements versus stored procedures
Next
From: KK CHN
Date:
Subject: Re: pgBackRest on old installation