Subprograms for Access Verification and User Authentication

These subprograms can be used for the following.

Subprograms for Access Verification

Subprogram Description
NSC---L   Check if logon to a library is allowed, and which modules in a library are available to a user.
NSCCHCK   Check if access to external object is allowed.
NSCDEF   Check if object is defined to Natural Security.

Subprograms for User Authentication

Subprogram Description
NSC---P Check if password is valid.
NSC----P Check if password is valid, and change it.
NSC--PH Check if passphrase is valid.
NSC--PHS Check if passphrase is valid, and change it.
NSC---SP Check if password is valid - in RPC server environments.
NSCSSX Check if password is valid - in an LDAP user authentication context.

NSC---L

The subprogram NSC---L is used to:

  • check whether a specific user is allowed to log on to a specific library;

  • ascertain which modules in a library are available to a user.

It is invoked as follows:

CALLNAT 'NSC---L' PAPPLID PUSERID PRC PPARM1 PNSC-MESSAGE

Example programs PGM---L and PGM---LM of how to invoke this subprogram are provided in source form in the library SYSSEC. They include descriptions of the individual CALLNAT parameters.

Example Program Description
PGM---L Check whether a specific user is allowed to log on to a specific library.
PGM---LM Check whether a specific user is allowed to execute a module in a library.

NSCCHCK

The subprogram NSCCHCK is used to check whether a specific user is allowed to access a specific external object.

It is invoked as follows:

CALLNAT 'NSCCHCK' PCLASSID PUSERID POBJID PACCESS-TYPE PRC PPARM1 PNSC-MESSAGE

An example program PGMCHCK of how to invoke this subprogram is provided in source form in the library SYSSEC. It includes descriptions of the individual CALLNAT parameters.

Example Program Description Code
PGMCHCK Check whether a specific user is allowed to access a specific external object. DS, JB, ND, OP, PR, VA, VS
Code Function
DS Dataset
JB Batch jobs
ND Nodes
OP Operations
PR Printers
VA VTAM applications
VS Volume serials

NSCDEF

The subprogram NSCDEF is used to check whether a specific object is defined under Natural Security, that is, whether a security profile for the object exists.

It is invoked as follows:

CALLNAT 'NSCDEF' POBJID POBJTYPE PRC PNSC-MESSAGE PPARM1

An example program PGMDEF of how to invoke this subprogram is provided in source form in the library SYSSEC. It includes descriptions of the individual CALLNAT parameters.

Example Program Description
PGMDEF Check whether a certain object is defined under Natural Security (whether a security profile for the object exists).

NSC---P

The subprogram NSC---P is used to check if the password supplied together with a user ID is valid.

Note
To perform this function in a Natural RPC server environment, is it recommended that NSC---SP (see below) be used instead. To check a passphrase, use NSC--PH (see below).

NSC---P is invoked as follows:

CALLNAT 'NSC---P' PUSERID PPASSWORD PUSER_NAME PRC PNSC-MESSAGE

An example program PGM---P of how to invoke this subprogram is provided in source form in the library SYSSEC. It includes descriptions of the individual CALLNAT parameters.

Example Program Description
PGM---P Check the password of a specific Natural Security user.

Note:
For the execution of this subprogram, the general option Maximum Number of Logon Attempts applies, that is, each invalid password will be considered an unsuccessful logon attempt.

NSC----P

The subprogram NSC----P is used to check if the password supplied together with a user ID is valid; in addition, it is used to change the password.

Note
To perform this function for a passphrase, use NSC--PHS (see below).

NSC----P is invoked as follows:

CALLNAT 'NSC----P' PUSERID PPASSWORD(*) PUSER_NAME PPARM PRC PNSC-MESSAGE

An example program PGM----P of how to invoke this subprogram is provided in source form in the library SYSSEC. It includes descriptions of the individual CALLNAT parameters.

Example Program Description
PGM----P Check and change the password of a specific Natural Security user.

Note:
For the execution of this subprogram, the general option Maximum Number of Logon Attempts applies, that is, each invalid password will be considered an unsuccessful logon attempt.

NSC--PH

The subprogram NSC--PH is used to check if the passphrase supplied together with a user ID is valid.

It is invoked as follows:

CALLNAT 'NSC--PH' PUSERID PPASSWORD_PHRASE PUSER_NAME PRC PNSC-MESSAGE PNSC-MESSAGE_2

An example program PGM--PH of how to invoke this subprogram is provided in source form in the library SYSSEC. It includes descriptions of the individual CALLNAT parameters.

Example Program Description
PGM--PH Check the passphrase of a specific user ID.

Note:
For the execution of this subprogram, the general option Maximum Number of Logon Attempts applies, that is, each invalid passphrase will be considered an unsuccessful logon attempt.

NSC--PHS

The subprogram NSC--PHS is used to check if the passphrase supplied together with a user ID is valid; in addition, it is used to change the passphrase.

It is invoked as follows:

CALLNAT 'NSC--PHS' PUSERID PPASSWORD_PHRASE(*) PUSER_NAME PPARM PRC PNSC-MESSAGE PNSC-MESSAGE_2

An example program PGM--PHS of how to invoke this subprogram is provided in source form in the library SYSSEC. It includes descriptions of the individual CALLNAT parameters.

Example Program Description
PGM--PHS Check and change the passphrase of a specific Natural Security user.

Note:
For the execution of this subprogram, the general option Maximum Number of Logon Attempts applies, that is, each invalid passphrase will be considered an unsuccessful logon attempt.

NSC---SP

The subprogram NSC---SP is only to be used in Natural RPC server environments. On the whole, it corresponds to NSC---P (described above). It is used to check if the password supplied together with a user ID is valid.

It is invoked as follows:

CALLNAT 'NSC---SP' PUSERID PPASSWORD PLIBRARYID PUSERNAME PPARM1 PRC PNSC-MESSAGE

An example program PGM---SP of how to invoke this subprogram is provided in source form in the library SYSSEC. It includes descriptions of the individual CALLNAT parameters.

Example Program Description
PGM---SP Check the password of a specific Natural Security user.

This Natural Security API can be used in a Natural server session (that is,when *SERVER-TYPE is not blank) as well as in a non-Natural server session.

Note:
For the execution of this subprogram, the general option Maximum Number of Logon Attempts applies, that is, each invalid password will be considered an unsuccessful logon attempt. In addition, Natural Security will react as if the Lock User Option were set to X, that is, it will "remember" unsuccessful logon attempts across sessions. Unlike the Lock User Option, however, the locking of user IDs will not include the user ID as contained in the Natural system variable *INIT-USER. When the maximum number of logon attempts is exceeded, the Natural RPC server session will not be terminated.

NSCSSX

The subprogram NSCSSX is only available on Windows and Linux. It is used to check if the password supplied together with the user ID is valid.

A prerequisite for the use of this subprogram is that the user authentication via an LDAP server has been activated; see Authentication Options (LDAP).

NSCSSX is invoked as follows:

CALLNAT 'NSCSSX' PUSERID PPASSWORD PNSC-USERID PNSC-USERNAME PNSC-USERTYPE PPARM PRC PNSC-MESSAGE

An example program PGMSSX01 of how to invoke this subprogram is provided in source form in the library SYSSEC. It includes descriptions of the individual CALLNAT parameters.

Example Program Description
PGMSSX01 Verify the password of a specific user ID.

Note:
For the execution of this subprogram, the general option Maximum Number of Logon Attempts applies, that is, each invalid password will be considered an unsuccessful logon attempt.