Chapter Contents

Previous

Next
Communications Access Methods for SAS/CONNECT and SAS/SHARE Software

SAS/SHARE


Client Tasks

User and Applications Programmer
To prepare for accessing a SAS/SHARE server, perform the following tasks:
  1. Configure the server in the client SERVICES file.

  2. Set security for connecting clients, as desired.

  3. Specify the TCP/IP access method.

  4. Specify the server name.


Configuring the Server in the SERVICES File

Each server must be defined as a service in the SERVICES file on each host node from which a client session will access the server. This file usually is located in the directory in which the TCP/IP software is installed. See TCP/IP SERVICES File for information about editing the SERVICES file.


Setting Security for Connecting Clients

Requiring connecting clients to supply a valid userid and password enforces server security. At the client, set the preferred security method for relaying a userid and password that are valid on the server host. For details, see Setting Security for SAS/CONNECT and SAS/SHARE.


Specifying the TCP/IP Access Method

You must specify the TCP/IP communications access method at the client before you access a server.

Use the following syntax to specify the TCP/IP access method at each connecting client:

OPTIONS COMAMID=access-method-id;

Where COMAMID is an acronym for Communications Access Method Identification. access-method-id is an abbreviation for the method used by the client to communicate with the server. TCP (which is short for TCP/IP, is an abbreviation for Transmission Control Protocol/Internet Protocol) is an example of an access-method-id.

Example:

options comamid=tcp;

The server is accessed using the TCP/IP access method.

You may specify the COMAMID option in an OPTIONS statement, at a SAS invocation, or in a SAS configuration file.

Additionally, you may use the COMAUX1 and COMAUX2 options to designate auxiliary communications access methods. See SAS/CONNECT and SAS/SHARE: Supported Access Methods According to Host Release for the supported access methods by host. If the first method fails to access a server, the second method is attempted, and so on. You can specify up to two auxiliary access methods, depending on the number of methods that are supported between client and server hosts.

COMAUX options can be specified only at a SAS invocation or in a SAS configuration file. The syntax for the COMAUX options follows:

/COMAUX1=alternate-method /COMAUX2=alternate-method

An example of configuration file entries for an OpenVMS client connecting to a Windows NT server follows.

/comamid=tcp /comaux1=decnet

If the server cannot be reached using the TCP/IP method, a second attempt is made with the DECnet access method.


Specifying a Server Name

The server name that you specify in the PROC SERVER, PROC OPERATE, and LIBNAME statements must be a defined SAS/SHARE TCP/IP service on the hosts where the server and the user session run.

Note:   Do not use the pound sign (#) in a server node name.  [cautionend]

If the client and server sessions are running on different network nodes, you must include the TCP/IP node in the server identifier in the PROC OPERATE SET SERVER statement or in the LIBNAME and PROC OPERATE statements as follows:

SERVER=node.server

This representation is known as a two-level server name.

node must be a valid TCP/IP node name. If the server and the client sessions are running on the same node, you may omit the node name. If the TCP/IP node name is not a valid SAS name, you must assign the name of the server node to a SAS macro variable, then use the name of the macro variable for node in the two-level server name, or assign the node name to a DCL symbol, then use the DCL symbol for node in the two-level server name.

The access method evaluates the node name, using this order of precedence:

server can represent either a server-id or a port number.

The following examples show the use of a SAS macro variable and a DCL symbol, respectively, to contain a server node name:

Example 1:

%let srvnode=mktserve.acme.com;
libname sales server=srvnode.server1;

The macro variable SERVNODE is assigned to the fully qualified node name and is then used in the two-level node name.

Example 2:

$srvnode:==mktserve.acme.com

The DCL symbol SRVNODE is assigned to the fully qualified node name

Note:   Do not use an ampersand (&) in a two-level server name. An ampersand causes the macro variable to be resolved by the SAS parser prior to syntactic evaluation of the SERVER= option. The access method evaluates the node name in a two-level server name.  [cautionend]

See SAS Language Reference: Dictionary for details about SAS naming rules. See the SAS/SHARE User's Guide for details about the PROC SERVER, PROC OPERATE, and LIBNAME statements.


Client Example

The following example illustrates the statements that you specify in an OpenVMS client SAS session to connect to a server by using the TCP/IP access method:

options comamid=tcp; libname sasdata
[edc.prog2.sasdata] user=_prompt_ server=rmtnode.share1;

The COMAMID option declares the TCP/IP access method. The LIBNAME statement specifies the data library that is accessed through the server, which is specified by the two-level server name RMTNODE.SHARE1 by means of a prompt for a username and a password that are valid on the server.


Server Tasks

Server Administrator
To prepare for starting a SAS/SHARE server, perform the following tasks:
  1. Configure SAS/SHARE servers in the SERVICES file.

  2. Set server security through the TCPSEC variable.

  3. Set the AUTHENCR environment variable to enforce userid and password encryption, as needed.

  4. Specify the TCP/IP access method.

  5. Specify the server name.


Configuring the Server Service in the SERVICES File

Each server must be defined as a service in the SERVICES file on each remote host node on which a server runs and on each node from which a client will access the server. This file is located in the directory in which the TCP/IP software is installed. Find out the correct location of the TCP/IP software on your host system. See Configuring the SERVICES File for information about configuring a server in the SERVICES file.


Setting Server Security

You may use file permissions to restrict a user's access to libraries and files through a server. A secured server allows connections only from those clients that provide valid userids and passwords for the host at which the server is running. A secured server uses a valid userid and password pair to verify a user's authority to access a SAS library or file.

Requiring connecting clients to supply both a valid userid and password enforces server security. From a server session, set the TCPSEC variable to the value _SECURE_. See Providing Client Identification in a pre-Version 8 Session for more information about setting this variable.


Enforcing Server Userid and Password Encryption

As a security measure, you may set the AUTHENCR variable to enforce the encryption of userids and passwords when they are passed from the client to the server. See SAS/SHARE AUTHENCR Variable for details about setting the AUTHENCR variable.


Specifying the TCP/IP Communications Access Method

You must specify the TCP/IP communications access method at the server before you create a SAS/SHARE server.

Use the following syntax to specify the TCP/IP access method at the server:

OPTIONS COMAMID=access-method-id;

where COMAMID is an acronym for Communications Access Method Identification. access-method-id is an abbreviation for the method used by the server to communicate with the client. TCP (short for TCP/IP, which is an abbreviation for Transmission Control Protocol/Internet Protocol) is an example of an access-method-id.

For a server that is running on a host on which only one communications access method is available, use the COMAMID option.

Example:

options comamid=tcp;

The server will be available only to SAS/SHARE sessions that use the TCP/IP access method.

You may specify the COMAMID option in an OPTIONS statement, at a SAS invocation, or in a SAS configuration file.

If, however, the host on which a server runs supports multiple access methods, you may specify up to two auxiliary access methods by which clients may access the server by using the COMAUX1 and COMAUX2 options. See SAS/CONNECT and SAS/SHARE: Supported Access Methods According to Host Release for the supported access methods by host.

All of the access methods initialize when the server initializes. The activation of multiple access methods makes a server available to several groups of clients, each using a different communications access method simultaneously.

COMAUX options can be specified only at a SAS invocation or in a SAS configuration file. The syntax for the COMAUX options follows:

/COMAUX1=alternate-method /COMAUX2=alternate-method

Here is an example of configuration file entries for a server that is running on an OpenVMS host.

/comamid=tcp /comaux1=decnet

When the server starts, all of the communications access methods are initialized. The server is simultaneously available to client sessions that use the TCP/IP access method as well as to clients that use the DECnet access method.


Specifying a Server Name

The server name that you specify in the PROC SERVER statement must be a defined SAS/SHARE TCP/IP service on the hosts where the server and the user session run. Use the following syntax:

SERVER=server

server can represent either a server-id or a port number.


Server Example

The following example illustrates the statements that you specify in a SAS session on the OpenVMS host at which you start a server:

%let tcpsec=_secure_; 
%let authencr=required; 
options comamid=tcp;
proc server id=share1; 
run;

The _SECURE_ value for the TCPSEC macro variable requires clients to supply a userid and a password that are valid at the server. The AUTHENCR variable enforces encryption of userids and passwords when passed from the client to the server.

The TCP/IP access method is declared and the server SHARE1 is started on the OpenVMS host.


Chapter Contents

Previous

Next

Top of Page

Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.