Re: Need OS User from Web Service call

From: Rich Jesse <rjoralist2_at_society.servebeer.com>
Date: Fri, 11 Jan 2013 13:00:34 -0600 (CST)
Message-ID: <689bd231eb9bea235152da3a76a4dd0d.squirrel_at_society.servebeer.com>



Jeff writes:

> Currently for our .Net applications call a web service that runs in IIS
> which then access the Oracle database. When I query v$session the OS User
> listed as making the call shows as "SYSTEM". Does anybody know if it is
> possible to have the actual OS User that made the originating call? I am
> not sure if this is possible because the call is going through a middle
> tier.

This isn't my area of expertise, but I'll offer up this mess:

The OS user is coming up as SYSTEM because that's the Windows account that's running the IIS service or whatever service is making the Oracle connection.  Any other information that you'd like to present from the Oracle client is going to have to be coded from the application. In a client/server app with direct Oracle connections (i.e. each user has their own connection to the DB), you could simply populate V$SESSION using the DBMS_APPLICATION_INFO package.

However, since you're using an n-tier model (stateless?), your Oracle connections are probably pooled so that any application user can use any free pooled Oracle connection for any SQL. In that case, the DB connections are not tied to any specific real user, so the information might not be meaningful.

It depends on how your app authenticates to the web that connects to the DB.

Clear as mud?

Rich

--
http://www.freelists.org/webpage/oracle-l
Received on Fri Jan 11 2013 - 20:00:34 CET

Original text of this message