BookmarkSubscribeRSS Feed
JDMTX
Fluorite | Level 6

I need to obtain the user id and if possible the user name and e-mail address of the user who is running a job in Enterprise Guide via a workspace server.

At this time, I am considering using proc metaoperate or a call to the macros dictionary table.  Do I have anyother options and what is the recommended best practice?

Many Thanks,

JDM

5 REPLIES 5
SASKiwi
PROC Star

For any SAS EG session you can do this:

data ids;

  length name $ 16 purpose $ 40;

  label name="Value Name" purpose="Purpose";

  infile datalines dsd;

  input name purpose;

datalines;

SYSUSERID, SAS session host account

_CLIENTUSERID, Windows user ID in SAS EG

_CLIENTUSERNAME, Windows user name in SAS EG

_METAUSER, SAS metadata user ID

run;

proc sql;

  select t1.name,

    t2.value,

    t1.purpose

   from work.ids t1

   inner join sashelp.vmacro t2 on (t1.name = t2.name);

quit;

You can also query SAS metadata like so:

options metaserver=sasmetadata metauser="sasadm@saspw" metapass="password";

%mduextr(libref=work);

This gives you all users and their details defined in the SAS metadata - do you want a snapshot of all EG users who are currently connecting to a SAS workspace server, or just all users who are defined in metadata?

JDMTX
Fluorite | Level 6

Great idea on the %mduextr macro!!!  It kills me to embedded the metapass in open code though.

SASKiwi
PROC Star

You could encrypt it then:

proc pwencode in='password';

run;

Then paste the output from the procedure into your metapass string. This does not stop anyone using the encrypted password in code but would prevent them using it in a user tool like SAS Management Console.

ChrisHemedinger
Community Manager

If you are using SAS Enterprise Guide and querying metadata "as you", you don't need the META* options (including the password).  But if you are needing to use a different identity (such as sasadm@saspw), then you do need it.  See this article:

Five strategies to eliminate passwords from your SAS programs - The SAS Dummy

Chris

SAS Innovate 2025: Call for Content! Submit your proposals before Sept 25. Accepted presenters get amazing perks to attend the conference!
SASKiwi
PROC Star

That's an excellent tip Chris!

%mduextr(libref=work); works fine without the metadata credentials when run in EG. I had just assumed credentials were required because it was in an example on SAS Support.


SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

SAS Enterprise Guide vs. SAS Studio

What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 5 replies
  • 12467 views
  • 3 likes
  • 3 in conversation