|Communications Access Methods for SAS/CONNECT and SAS/SHARE Software|
As an alternative method to signing on through the TELNET daemon, the UNIX spawner program allows SAS/CONNECT sessions on UNIX systems without requiring that username and password pairs be passed over the network in clear text mode.
If the local SAS session is running Release 6.09E or a subsequent release or Release 6.11 TS040 or a subsequent release, all data that flow from the local host to the spawner program during sign on are encrypted.
Unlike the TELNET sign-on process, the UNIX spawner program allows sign ons to a UNIX system without scripts. In most cases, you should run the UNIX spawner using the root privilege in order to start the remote SAS processes with the privileges of the user who connects to the spawner.
For connections to a UNIX remote host with the TCP/IP access method, SAS/CONNECT uses the default authentication program to verify the remote host's userid and to verify that the password is correct for the specified userid. A SAS/CONNECT user implicitly invokes the authentication program when making a connection to a UNIX remote host by means of the UNIX spawner program.
The spawner program is stored on the remote host in the !sasroot/
Here is the syntax for the command to start the UNIX spawner program:
If you start a spawner with the -INHERITANCE option, you then define the port that the spawner is listening on to the firewall and map it to the server machine's port. This will enable any number of SAS/CONNECT clients to connect through this single port and SIGNON to a remote host on the inside of the firewall. Each client just opens a unique socket on the defined port. This eliminates the need to define an individual port for each client that may need to come in through the firewall. In this configuration you set your REMOTE= value to a two-level name where the first level is the name of the host running the firewall and the second level is the well-known service name of the port that you have enabled for connections.
Set this option at the remote host and, optionally, at the local host to specify one or more encryption algorithms to use in a SAS/CONNECT session. However, the local host and the remote host must share an encryption algorithm in common. If you specify the option in the remote host session only, the local host attempts to select an algorithm that was specified at the remote host. If you also set the option at the local host and specify an algorithm that is not specified at the remote host, the local host's attempt to connect to that remote host fails when the local host assigns a library.
Valid values for this option are
See the SAS/CONNECT User's Guide or the SAS/SHARE User's Guide for more information about the -NETENCRALG option.
The default for this option is that encryption is used if the NETENCRALG option is set and if both the local host and the remote host are capable of encryption. If encryption algorithms were specified but either the local host or the remote host is incapable of encryption, then encryption will not be performed.
Encryption may not be supported at the local host or the remote host for the following reasons:
See the SAS/CONNECT User's Guide or the SAS/SHARE User's Guide for more information about the -NETENCRYPT option.
Valid values for this option are
|128||specifies 1024-bit RSA and 128-bit RC2 and RC4 key algorithms.|
|40||specifies 512-bit RSA and 40-bit RC2 and RC4 key algorithms.|
|0||no value is set. This is the default.|
If you require extra security, then set the -NETENCRKEY option to 128. If you prefer to save CPU, then set the -NETENCRKEY option to 40.
By default, if you try to connect a host that is capable of only a 40-bit key length with a host that is capable of both a 40-bit and a 128-bit key length, then the connection is made using the lesser key length. If both hosts are capable of 128-bit key lengths, then a 128-bit key length is used.
See the SAS/CONNECT User's Guide or the SAS/SHARE User's Guide for more information about the -NETENCRKEY option.
This option may be set at either the local host or the remote host. The default is -NETMAC.
See the SAS/CONNECT User's Guideor the SAS/SHARE User's Guide for more information about the -NETMAC option.
For the TCP/IP access method, the spawner program requires a script file, or it will verify the supplied userid and the password. This option requires that the user set security in the local SAS session prior to sign on. For details about setting security (for example, by means of the USER= and PASSWORD= options in an appropriate statement), see Setting Security for SAS/CONNECT and SAS/SHARE.
If you use the -NOSCRIPT option, you must also use the -SASCMD option.
Here is an example of the content of an executable file that starts a SAS session:
#---------------------------------- # mystartup #---------------------------------- #!/bin/ksh . ~/.profile sas -dmr -noterminal -no\$syntaxcheck -device grlink -comamid tcp #------------------------------
The service name must be defined identically in the
/etc/services file on both the local and remote
hosts. See Configuring the SERVICES File
for more information about the
Note: Because some UNIX systems require root privilege in order to validate
passwords, this option may not work on all UNIX systems.
|Examples of Starting and Connecting to the UNIX Spawner Program|
The following examples illustrate how to start the spawner program and how to connect to it.
The following command starts the spawner program at the remote UNIX
host with the service
spawner and allows connections
only from local hosts that support username and password encryption.
sastcpd -service spawner -nocleartext
At a UNIX local host host, the following statements specify a script
that makes a connection to the spawner program named
monarch.spawner. The value
monarch for REMOTE= is the name of the UNIX
node, or it can be a macro variable that contains the Internet address of
the UNIX node where the spawner program is running.
options comamid=tcp; options remote=monarch.spawner; filename rlink '!sasroot\connect\saslink\tcpunix.scr'; signon;
From the UNIX node that will be the remote side of a SAS/CONNECT session,
the following command starts the spawner program with the service name
spawner, which supports only
sign ons without scripts.
sastcpd -service spawner -noscript -sascmd /u/username/mystartup
starts the remote SAS session. See the -SASCMD option for an example of the
content of the
At an OS/390 local host, the TCP/IP access method is used to connect
to the remote host named
rmthost, which must be either the node name of the OS/390 node or a macro
variable that contains the Internet address of the OS/390 node where the spawner
program is running. The USER= option to the SIGNON statement prompts the
user for a userid and password when connecting to
rmthost on which the OS/390 spawner named
options comamid=tcp; signon rmthost.spawner user=_prompt_;
|Ending the UNIX Spawner Program|
To end the spawner program, enter the interrupt signal, which typically is CTRL-C. If the UNIX spawner is running in the background, kill its process.
Top of Page
Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.