BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
kruzewski
Calcite | Level 5

Is it possible to either mask the sas code of a stored process for an EG user OR prevent them from looking at its metadata while still allowing them to run it...?

1 ACCEPTED SOLUTION

Accepted Solutions
Quentin
Super User

Hi,

On the server, you can compile the macro and store the definition in a permanent macro catalog.  In v9.2, you can even encrypt the compiled catalog, but that may be overkill for your needs.

See http://support.sas.com/techsup/technote/ts739.pdf, search for SECURE.

So the only thing on the server the user needs read access to is the encrypted macro catalog holding the definition of %KillSession().

Pretty sure that should work for you.

Not sure what you will put as the definition of %KillSession(), or how the stored process server or workspace server will feel to have somebody else killing jobs...

--Q.

BASUG is hosting free webinars Next up: Jane Eslinger presenting PROC REPORT and the ODS EXCEL destination on Mar 27 at noon ET. Register now at the Boston Area SAS Users Group event page: https://www.basug.org/events.

View solution in original post

5 REPLIES 5
Quentin
Super User

Hi,

I suppose one way to hide the "source code" of a stored process would be to have the actual stored process be just a macro call.  Then macro definition could be stored in another file, or even a compiled macro catalog, or similar.

--Q.

BASUG is hosting free webinars Next up: Jane Eslinger presenting PROC REPORT and the ODS EXCEL destination on Mar 27 at noon ET. Register now at the Boston Area SAS Users Group event page: https://www.basug.org/events.
kruzewski
Calcite | Level 5

wouldn't the user still need access to the "source code" of the macro?....btw, I wanted to create a SP which would allow an end user to kill their own sessions if something hangs, BUT I don't want them to know how to run an x command on the windows server...

Quentin
Super User

Hi,

On the server, you can compile the macro and store the definition in a permanent macro catalog.  In v9.2, you can even encrypt the compiled catalog, but that may be overkill for your needs.

See http://support.sas.com/techsup/technote/ts739.pdf, search for SECURE.

So the only thing on the server the user needs read access to is the encrypted macro catalog holding the definition of %KillSession().

Pretty sure that should work for you.

Not sure what you will put as the definition of %KillSession(), or how the stored process server or workspace server will feel to have somebody else killing jobs...

--Q.

BASUG is hosting free webinars Next up: Jane Eslinger presenting PROC REPORT and the ODS EXCEL destination on Mar 27 at noon ET. Register now at the Boston Area SAS Users Group event page: https://www.basug.org/events.
kruzewski
Calcite | Level 5

I just key it off of &sysuser. so they they are only able to kill their own

kruzewski
Calcite | Level 5

...and thanks!

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

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
  • 1077 views
  • 0 likes
  • 2 in conversation