The password update tool is intended for use with deployments of the SAS Intelligence Platform (release 9.1.3 or later, with SAS Web Report Studio release 2.1 or later). The tool automates part of the password update process for required accounts, providing an alternative to the manual instructions in step 4 of that process. If you need assistance using this tool, please contact a SAS technical support consultant.
Note: The HTML topic that is linked to above is in the Security Administration guide, which is available in PDF format from support.sas.com/913administration.
Note: You must have a JDK to use the password update tool (we recommend that you use JDK 1.4.1 or 1.4.2).
The password update tool works like this:
The full paths to your site's 2 top-level locations for SAS Intelligence Platform configuration files (your configuration directory and your installation directory).
User ID and password information for each account that you are updating. You can provide these directly in the command line or by referencing a separate file. The passwords that you provide should be in clear text; the tool will encrypt the passwords for you.
Note: If you run the tool without providing user ID and password information, the program generates a list all of the userID/password pairs that it discovers in your configuration files.
The tool passes each userID/new-password pair to the authentication provider for the SAS Metadata Server to verify that the new password corresponds to a valid account.
The tool encrypts the passwords and then uses its internal pwfile.xml file to locate and update all instances of the passwords in your configuration files.
Note: In a multi-machine deployment, you must run this tool on each machine where the configuration wizard has been run. You must have read and write access to the files that you are going to modify.
Extract the contents of the downloaded file into a temporary directory.
For Windows, the downloaded file is 913configpasswd01wn.zip. Use WinZip to unzip the downloaded file, which will result in the following files being extracted to the temporary directory:
913configpasswd01\PwFile.jar
913configpasswd01\PwFileDoc.htm
For UNIX, the downloaded file is 913configpasswd01ux.tar. Extract the contents of the downloaded file using the tar command, for example
$> tar -xf $HOME/913configpasswd01ux.tar
where $HOME is the location to where the tar file was downloaded. The tar command will extract the following files to the directory from where the tar command is executed:
913configpasswd01/PwFile.jar
913configpasswd01/PwFileDoc.htm
A basic form of the command is:
java -jar PwFile.jar -sasHome path-to-installation-directory -sasConfig path-to-configuration-directory -configLevel directory -userID required-account-ID -password new-password -metadataServer server-name -metadataPort port-number
The command line options are:
userid="sastrust" password="new-password-for-sastrust"
userid="sassrv" password="new-password-for-sassrv"
userid="sasguest" epassword="new-encrypted-password-for-sasguest"
As an alternative to specifying options on the command line, you can create a file named pwfile.properties to store your values for metadataServer, metadataPort, pwFile, sasHome, and sasConfig. Values that you specify on the command line override values that you store in the properties file. You must use the -configPath option on the command line to specify the location of your pwfile.properties file.
For example, if you create a C:\PWupdate\pwfile.properties file that contains these lines:
metadataServer=d12345
metadataPort=8561
sasHome=C:\\Program Files\\SAS\\SAS
sasConfig=C:\\SAS\\EntETLServer
and you execute this command:
java -jar c:\PWupdate\PwFile.jar -configPath C:\PWupdate
then the tool produces a list of your configuration files that contain passwords.
Note: If you use a backslash in the pwfile.properties file, you must also use the escape character, as illustrated in the example.
For example, to update the password for the SAS Trusted User in the configuration files on a Windows machine, you could enter this command:
java -jar PwFile.jar -sasHome "C:\Program Files\SAS\SAS" -sasConfig C:\SAS\EntETLServer -userID d12345\sastrust -password sastrust1 -metadataServer d12345 -metadataPort 8561
Or, to update the passwords for the SAS Trusted User, the SAS Guest User, and the SAS Administrator, you could create a file named C:\PWupdate\PWchanges.txt that contains these lines:
userid="d12345\sastrust" password="sastrust1"
userid="d12345\sasguest" password="sasguest1"
userid="d12345\sasadm" password="sasadm1"
and then use this command:
java -jar PwFile.jar -sasHome "C:\Program Files\SAS\SAS" -sasConfig C:\SAS\EntETLServer -pwFile C:\PWupdate\PWchanges.txt -metadataServer d12345 -metadataPort 8561
Or, to update the same passwords and store options in a properties file, you could create a file named C:\PWupdate\pwfile.properties that contains these lines:
metadataServer=d12345
metadataPort=8561
sasHome=C:\\Program Files\\SAS\\SAS
sasConfig=C:\\SAS\\EntETLServer
pwFile=C:\\PWupdate\\PWchanges.txt
and then use this command:
java -jar PwFile.jar -configPath C:\PWupdate
To use encrypted passwords, you must first encrypt the password using a SAS program. Suppose you wanted to encrypt the password "SASTrust1", you would submit the following SAS program:
proc pwencode in='SAStrust1' method=sasenc;
run;
{sasenc}FB97993B3B333F205863FD3D4A8539E91A162A2B
"
which you then put into the PWChanges.txt file like this:userid="d12345\sastrust" epassword="{sasenc}FB97993B3B333F205863FD3D4A8539E91A162A2B"