To solve this issue I usually encapsulate the step that uses the password inside of a macro. That way you can turn off SYMBOLGEN, MLOGIC, MPRINT, MACROGEN while you are expanding the password. You can store the passwords in a dataset or file and restrict access to the file using your operating system. Something like this: %macro oracle(passwordfile); %local userid password optstore; %let optstore = %sysfunc(getoption(symbolgen)) ; options nosymbolgen ; data _null_; infile "&passwordfile" ; input userid &$20. password &$20. ; call symputx('user',userid); call symputx('password',password); run; proc sql ; connect to oracle (user="&user" password="&password" path="mydatabase"); options &optstore; %mend oracle;
... View more