Re: get username of user calling function? - Mailing list pgsql-general

From David Legault
Subject Re: get username of user calling function?
Date
Msg-id e0b20d410703010930s7a58e6fdi475cb9c13bae3637@mail.gmail.com
Whole thread Raw
In response to Re: get username of user calling function?  (George Nychis <gnychis@cmu.edu>)
Responses Re: get username of user calling function?  (George Nychis <gnychis@cmu.edu>)
List pgsql-general

On 3/1/07, George Nychis <gnychis@cmu.edu> wrote:


A. Kretschmer wrote:
> You can use the current_user - variable. Select current_user;

I'm trying to create a function in which users can only kill their own processes, it works
perfectly if i hardcode a username in such as this:
CREATE FUNCTION kill_process(integer) RETURNS boolean
AS 'select pg_cancel_backend(procpid)
     FROM (SELECT procpid FROM pg_stat_activity WHERE procpid=$1 and usename=''gnychis'')
AS kill;'
LANGUAGE SQL SECURITY DEFINER;


See the EXECUTE function in the pl/pgSQL language in the docs for dynamic queries.
 

But if i try to replace usename=''gnychis'' with usename=current_user it no longer works.

Any ideas?

- George

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

pgsql-general by date:

Previous
From: MargaretGillon@chromalloy.com
Date:
Subject: Re: PG periodic Error on W2K
Next
From: Bill Moran
Date:
Subject: Re: supporting 2000 simultaneous connections.