In PostgreSQL, potresti forse cavartela con SECURITY DEFINER -funzioni che ragionano sull'utente corrente? Documentato qui:https://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.