I PostgreSQL kan du kanske klara dig med SECURITY DEFINER
-funktioner som resonerar på den nuvarande användaren? Dokumenterat här:http://www.postgresql.org/docs/ 8.4/static/sql-createfunction.html
Redigera:
plperl kan användas för sessionsvariabler . Det finns andra alternativ (se länk i kommentar), men plperl är det enklaste av dem.