Skip to main content

Migrating users from SAS 9.4 to SAS 9.4



Migrating or Promoting users


In this article you will find the step by step procedure to migrate user from one environment to other in SAS 9.4. In this tutorial I have migrated users from Test Environment to Production Environment. Here I am doing partial promotion as only user is migrated. For partial promotion, we can do using Export SAS Package, Import SAS Package wizards and batch tools. In this tutorial I have used Export/Import SAS package method. Let’s start the tutorial.

In Test Environment – Exporting SAS Package

Open SAS Management Console, and click on the Folders tab. Expand the folder System. Inside the System folder you will find a folder named as Security (white in color) where all the security related objects like Access Control Template, Authentication Domains, Roles, User Groups and User.
Tip: While migration, you will always wonder which object to migrate first. Always remember to migrate as in the folder hierarchy. See the below image.

Security Folder in SAS 94
In above image, ACT is in the higher hierarchy so it should be migrated first then authentication domain then roles to users groups to users.

Step 1: Right click on the Security folder and click on Export SAS Package.
Step 2: Specify the location where you need to store the .spk file (export file). Give a name to the package, by default it will be saved as Package1.spk.
As we are going to migrate users alone, click the filter button in the same window. Select only user as shown in below image.

Filtering only User
Step 3: In the next window, you will the list of available user object. You can further filter by selecting only the user object you need. Click next after selecting the required user object.

Select the user which you want to migrate
Step 4: It is summary window. It shows you how many object are exported and where the export package is located in your local PC.

Export package summary
Step 5: You can also see the logs which will contain detailed information of the object you exported. It is better to copy and paste the log contents in notepad for future reference.


Save the log file for Export package



In Production Environment – Importing SAS Package

Step 1: Go to /system/Security. Right click on Security and select Import SAS Package
Import SAS Package
Step 2: In Import SAS Package Window, browse and select the package you exported.  You will need to check ‘Include access control’ if you didn’t migrate them before.
Click on the New Objects Only and click next.
Import SAS package - All object or New Object

Step 3: Will list the all the users that you are about to migrate.

Note: If you get Red color exclamation mark near the user icon, it means the object will be overwritten.

Step 4: Then finish the final steps for the migration to take place.

Some pre-requisite

You should be an unrestricted user.
Migration should happen in the order ACT -> Authorization Domain -> Role -> User Group -> Users to avoid dependency conflict.
Keep both import and export log. They will explain where you have messed up.
You cannot do these same steps in earlier version like SAS 9.2 and SAS 9.3. However, in some version of SAS 9.3 (as per SAS support) you have this virtual security folder but I worked only in SAS 9.2 and SAS 9.4.

Comments

Popular posts from this blog

Insufficient authorization to access PIPE error in SAS EG

Issue: When I tried to run SAS code in SAS Enterprise Guide it throws following errors: ERROR: Insufficient authorization to access PIPE. ERROR: Error in the FILENAME statement. Screenshot of error: Solution: This error occurs when you try to run OS commands in SAS code. To run the OS commands in SAS code you need to enable XCMD option. You check it in SAS Management Console by following below steps.   Open SMC -> Expand Servers -> Expand   In SASApp , expand Logical Workspace Server -> right click on Workspace Server. Click properties -> option tab -> advanced options -> launch properties. Check whether Allow XCMD is checked. The issue arises if the Allow XCMD is not checked. In above image, Allow XCMD option is not checked. It should be checked to run OS commands from SAS code. In Unix /Linux machines, this XCMD option can be enabled by using system option XCMD in sasv9 config file or workspaceserver.sh script f...

The authentication server is not SETUID ROOT error in SAS

Question: When validating the SAS Server from SAS Management Console, I received the following error: The authentication server is not SETUID ROOT.  So, I ran the setuid.sh utility and restarted the services many times. I just checked the elssrv sasauth sasperm setuid bit. There were no error in sasauth-debug.log, sasauth-access.log, sasauth-error.log.  Any suggestions? Answer: Please do the following:    1) Run /<SASConfig>/Lev<X>/ObjectSpawner/ObjectSpawner.sh stop  2) Edit /<SASConfig>/Lev<X>/ObjectSpawner/ObjectSpawner.sh and add the code shown below right after SCRIPT=`basename $0`:  if [ -n ""$TKPATH"" ]; then  unset TKPATH  fi   if [ -n ""$TK_PATHLIST"" ]; then  unset TK_PATHLIST  fi    3) Run /<SASConfig>/Lev<X>/ObjectSpawner/ObjectSpawner.sh start  The above code change in ObjectSpawner.sh should fix the issue.

SAS - CLI error trying to establish connection

Issue: User asked me to make a database connectivity to SQL Server. They provided following details SQL server hostname and ip address Database/DSN name Username Password I made entry in ODBC.ini file. You know, SQL Server entries were made in ODBC.ini and Oracle entries were made in TNS.ora file. Everything went fine, took back up of odbc.ini, made entry and saved the file. So to test this connection I ran the libname statement in SAS Enterprise Guide 6.1. It throwed following error. Error Message: My DB team showed that they are able to login   14 GOPTIONS ACCESSIBLE; 15 LIBNAME test ODBC DATASRC=SGE_DS SCHEMA=VST USER=sales PASSWORD=XXXXXXXXX; ERROR: CLI error trying to establish connection: [SAS/ACCESS to SQL Server][ODBC SQL Server Legacy Driver][SQL Server]Login failed for user 'sales'. Solution: First I suspected that Login failed for user 'sales' meant the password provided by DB team was wrong. They responded that they were able to login wi...