# Security Features

Password Protection |

There are several places in PxPlus to assign passwords for restricting access to programs and data files at the language level and in the development environment.

## Program Security

The PASSWORD directive may be used to place a user-specified password on the current program code. Simply load the program, enter the PASSWORD directive, followed by the desired password, and then save the program. Once saved with a password, the program may not be listed or modified in any way without first removing the password by re-entering the PASSWORD directive with the correct password string.

If the password string is preceded by an * asterisk, the PASSWORD directive defines a common password which will be automatically applied to all passworded programs as they are loaded and assigned to all new programs.

Passwords are maintained within the actual object code of the program and are encrypted. If a password is placed on a program and subsequently forgotten, there is no simple way to remove it. If you need to remove a password, contact PxPlus Support for assistance.

The 'EL'= system parameter can be used to check the current encryption setting or set encryption to a new level.

## Data Passwording and Encryption

The PASSWORD directive can also be used to assign passwords to files with the option to encrypt data. The KEY=pswd$ option is required to OPEN files that have been passworded. Encryption is only available for VLR and EFF files. To define/change a password, you must have exclusive access to the file and it must be empty.

The different syntax formats for passwording data via the PASSWORD directive are listed and described in the PxPlus Language Reference.

The following table shows the usage, access level, and encryption associated with each syntax format used to assign a password to a data file:

PASSWORD Format | Access Level | Without Password | With Correct Password | Encrypted
Open | Read | Write | Open | Read | Write |  |
OPEN | 0 | No | No | No | Yes | Yes | Yes | No
WRITE | 1 | Yes | Yes | No | Yes | Yes | Yes | No
OPEN AND ON DATA | 2 | No | No | No | Yes | Yes | Yes | Yes
WRITE AND ON DATA | 3 | Yes | Yes | No | Yes | Yes | Yes | Yes

Another level of data security may be added by introducing the hash function into the process. See Hash Function.

## Other Passwording in PxPlus

The following are some of the other password-related mechanisms used in the PxPlus development suite:

Data Dictionary | The Data Dictionary Maintenance interface in the NOMADS toolset includes a Data File Password Utility that allows you to add, change or remove passwords in PxPlus data dictionary files.
Views System | The PxPlus Views System allows you to lock View definitions with a password to control modification.
Application Server | The administrator is able to set passwording for server-side access, as well as on remote user access to the application server.
Multi-Lines | Creating a Multi-Line control in NOMADS and at the language level includes the option to cover password entries using the $ dollar sign symbol as substitute for each character entered. The Auto Complete feature is disabled when the Multi-Line is used for a password field.