Re: Row-level security--is it possible? - Mailing list pgsql-general

From Doug McNaught
Subject Re: Row-level security--is it possible?
Date
Msg-id 87u0wqwgwx.fsf@asmodeus.mcnaught.org
Whole thread Raw
In response to Re: Row-level security--is it possible?  (Michal Taborsky <michal@taborsky.cz>)
List pgsql-general
Michal Taborsky <michal@taborsky.cz> writes:

> Doug McNaught wrote:
>> But why not create a "products_restricted" view that uses the
>> CURRENT_USER function to see who's running it?
>> CREATE VIEW products_restricted AS
>> SELECT * FROM products WHERE Producer_ID = get_producer_id(CURRENT_USER);
>> [CURRENT_USER returns a string, so you would need to map it to your
>> producer_id somehow.]
>
> This would work only for this case (limiting single producer to one
> user). But we want to have a bit more flexible system, so we'd be able
> define the restrictions freely (like "only producers 1 and 5 and price
> less than 100"). I'm sorry I did not mention this.

Have you looked into set-returning functions for this?  That would let
you basically put whever logic you need into the function.

-Doug

pgsql-general by date:

Previous
From: Michal Taborsky
Date:
Subject: Re: Row-level security--is it possible?
Next
From: Juan Jose Costello Levien
Date:
Subject: Re: Row values