Re: Clarification on RLS policy

From: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
To: Vydehi Ganti <rayudugs(at)gmail(dot)com>, pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: Clarification on RLS policy
Date: 2025-04-25 12:43:22
Message-ID: 88804c921b425d37a3072b5698b558a763d80d63.camel@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Fri, 2025-04-25 at 12:38 +0530, Vydehi Ganti wrote:
> We are presently using Postgresql:PostgreSQL 15.12 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-23), 64-bit
> I have a scenario where
> 1.I need to enforce RLS policy on a table for Select by calling a Function
> 2.The function would return a character varying string which should be appended
> to the select as a filter.
> Ex: Select * from employee would be appended with where 1=1;
> 3.When we try to implement it says the below error.
> ERROR: invalid input syntax for type boolean: "1=1" CONTEXT: PL/pgSQL function function name(name,name) while casting return value to function's return type
> 4.It works fine on Oracle. Can you please suggest how to fix this issue?

You cannot add whole WHERE conditions to a query dynamically.
The only way to fix that is to solve the problem differently.
Since you didn't tell us details, we cannot tell you how.

Yours,
Laurenz Albe

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Dominique Devienne 2025-04-25 12:52:43 Re: Clarification on RLS policy
Previous Message Dominique Devienne 2025-04-25 09:07:48 Re: Clarification on RLS policy