In PostgreSQL, potresti forse cavartela con SECURITY DEFINER
-funzioni che ragionano sull'utente corrente? Documentato qui:http://www.postgresql.org/docs/ 8.4/static/sql-createfunction.html
Modifica:
plperl può essere utilizzato per variabili di sessione . Ci sono altre alternative (vedi link nel commento), ma plperl è la più semplice.