Built-in Basic Security Features [ Controlling System Activity ] MPE/iX 5.0 Documentation
Controlling System Activity
Built-in Basic Security Features
The account structure contains four important, built-in security
features: passwords, lockwords, capabilities, and file access
restrictions.
Passwords and Lockwords
The account structure provides for passwords at the account, group, and
user level, and lockwords at the file level. If you name a password for
an account or group when you create it, users must supply that password
to log on to the account or group. Without a password, an account or
group is open to access by anyone who knows its name. User passwords add
an additional level of security to your system.
When an account, group, or user does not have a password, it is said to
have a blank password.
Passwords must contain from five to eight alphanumeric characters,
beginning with an alphabetic character. When assigning passwords, system
managers should not assign names of friends or relatives. User passwords
should be changed quarterly or when someone leaves the organization. All
other MPE passwords should be changed every 3, 6, or 12 months depending
on the data sensitivity on your system. For more security information,
refer to "The Security Maintenance Checklist" in appendix B.
Lockwords act as passwords for files. The creator of a file can assign a
lockword. If a file has a lockword, you must supply it before you can
access that file. If you are a system manager (with SM capability) or
account manager (with AM capability), you can determine file lockwords
with the LISTF command (documented in MPE XL Commands Reference Manual
(32650-90003)).
Figure 2-4 illustrates how lockwords and passwords work at different
levels.
Figure 2-4. Passwords
Capabilities
A variety of people use HP 3000 Computer Systems. They range from those
who use the system only to run simple application programs to system
programmers who modify MPE XL. The user who runs application programs,
for example, needs only to be able to log on, run a particular program or
set of programs, and log off. A system programmer, on the other hand,
needs access to special system functions.
Capabilities help you control who has access to what parts of the system.
In order to create permanent files, for example, a user must have save
files permanently (SF) capability. To begin a session on a terminal from
within a session, a user must have programmatic sessions (PS) capability.
Refer to Table 2-1 for a list of all capabilities and their standard
abbreviations later in this chapter. Refer to appendix A for a complete
description of each capability.
Account, Group, and User Capabilities
You assign capabilities at the account, group, and user level. Account
capabilities are the capabilities available to account users and groups.
Group capabilities are the subset of account capabilities available to
users logged on to a group and to files within the group. Notice, in
Table 2-1, that only a subset of the capabilities applies to groups.
User capabilities are the subset of account capabilities available to a
particular user. When a user issues an MPE command or an intrinsic call,
the system checks the user's account, group, and user capabilities
against those required for the command or intrinsic.
Files also have capabilities, especially program files. For example, a
user does not need privileged mode (PM) capability to run a privileged
mode program, but the program itself must have PM capability and the
group in which the program file resides must have PM capability.
Listing Capabilities
Three commands allow the system manager to list capabilities of accounts,
groups, and users: LISTACCT, LISTGROUP, and LISTUSER.
Listing Account Capabilities With the LISTACCT Command
Use LISTACCT to check the capabilities of an account. To check the
capabilities for the SMITH account, including the password, enter
LISTACCT SMITH;PASS
The following account information appears on the screen:
______________________________________________________________________
| |
| |
| *************** |
| ACCOUNT: SMITH |
| |
| DISC SPACE: 754115 (SECTORS) PASSWORD: ACCTPASS |
| CPU TIME: 33330 (SECONDS) LOC ATTR: $00000000 |
| CONNECT TIME: 102 (MINUTES) SECURITY-- READ :ANY |
| DISC LIMIT: UNLIMITED WRITE : AC |
| CPU LIMIT: UNLIMITED APPEND :AC |
| CONNECT TIME: UNLIMITED LOCK :ANY |
| MAX PRI: 150 EXECUTE :ANY |
| GROUP UFID: $0000001 $800001050 $00138A20 $00000008 $000001FA |
| USER UFID : $0004001 $800001050 $00138C20 $00000008 $000001FB |
| CAP: AM,AL,GL,DI,CV,UV,LG,CS,ND,SF,IA,BA,PH,DS,MR,PM |
| |
______________________________________________________________________
Refer to appendix A for definitions of the capabilities.
Users with system manager (SM) capability can list any account on the
system; all other users can list only their own accounts .
Refer to the MPE XL Commands Reference Manual (32650-90003) for more
information on the LISTACCT command.
Listing Group Capabilities With the LISTGROUP Command
Use LISTGROUP to display capabilities for one or more groups. For
account managers (AM) and system managers (SM), the default is all (@)
groups within the user's logon account; for general users, the default is
the logon group. Use the wildcard characters to specify more than one
group.
To check group capabilities and the password of the group ENGR in the
account you are logged on to, enter:
LISTGROUP ENGR;PASS
The screen displays:
______________________________________________________________________
| |
| |
| THE "PASS" OPTION REQUIRES AM OR SM CAPABILITIES (CIWARN 720) |
| |
| ****************** |
| GROUP: ENGR.SMITH |
| |
| DISC SPACE: 5752 (SECTORS) PASSWORD: * * |
| CPU TIME: 102(SECONDS) SECURITY-- READ : GU |
| CONNECT TIME: 0(MINUTES) WRITE : GU |
| DISC LIMIT: UNLIMITED APPEND : GU |
| CPU LIMIT: UNLIMITED LOCK : GU |
| CONNECT TIME: UNLIMITED EXECUTE : GU |
| PRIV VOL : n/a SAVE : GU |
| FILE UFID: $OOOD401 $80001050 $OOOFF620 $00000008 $OOOOOOOA |
| MOUNT REF CNT: n/a |
| HOME VOL SET : MPE_SYS_VOL_SET |
| CAP: IA,BA |
| |
______________________________________________________________________
Refer to appendix A for definitions of the capabilities.
In this example, the user does not have AM or SM capability, so the
password does not appear on the screen.
Refer to the MPE XL Commands Reference Manual (32650-90003) for more
information on the LISTGROUP command.
Listing User Capabilities With the LISTUSER Command
Use the LISTUSER command to check the capabilities of a user. The
default is all (@) users and accounts within the user's capabilities (AM
or SM). For example, to review the capabilities of the user BORIS in the
JONES account, enter:
LISTUSER BORIS;PASS
The screen displays:
_____________________________________________________________________
| |
| |
| ******************** |
| USER: BORIS.JONES |
| HOME GROUP: DEVELOP PASSWORD: MYPASS |
| MAX PRI : 150 LOC ATTR: $00000000 |
| CONNECT TIME: 0(MINUTES) WRITE : GU |
| LOGON CNT : 1 |
| CAP: AM,AL,GL,DI,DV,UV,LG,CS,ND,SF,IA,BA,PH,DS,MR,PM |
| |
_____________________________________________________________________
Refer to appendix A for definitions of the capabilities.
Users with system manager (SM) capability can list any user in the
system. Users with account manager (AM) capability can list any user in
their account. Other users can list only their logon user.
For more information on the LISTUSER command, refer to the MPE XL
Commands Reference Manual (32650-90003).
Table 2-1. Capabilities
----------------------------------------------------------------------------------------------------
| | | | | |
| Capability | Abbreviation | Account | Group | User |
| | | | | |
----------------------------------------------------------------------------------------------------
| | | | | |
| System manager | SM | X | | X |
| | | | | |
| System supervisor | OP | X | | X |
| | | | | |
| Account manager | AM | X | | X |
| | | | | |
| Account librarian | AL | X | | X |
| | | | | |
| Batch access | BA | X | X | X |
| | | | | |
| Use communications software | CS | X | | X |
| | | | | |
| Diagnostician attribute | DI | X | | X |
| | | | | |
| Extra data segments | DS | X | X | X |
| | | | | |
| Group librarian | GL | X | | X |
| | | | | |
| Interactive access | IA | X | X | X |
| | | | | |
| Multiple RIN | MR | X | X | X |
| | | | | |
| Network administrator | NA | X | | X |
| | | | | |
| Node manager | NM | X | | X |
| | | | | |
| Use nonshareable devices | ND | X | | X |
| | | | | |
| Use private disk volumes | UV | X | | X |
| | | | | |
| Privileged mode | PM | X | X | X |
| | | | | |
| Process handling | PH | X | X | X |
| | | | | |
| Programmatic sessions | PS | X | | X |
| | | | | |
| Save user files permanently | SF | X | | X |
| | | | | |
| Use user logging facility | LG | X | | X |
| | | | | |
| Create volume sets | CV | X | | X |
| | | | | |
----------------------------------------------------------------------------------------------------
Restricting File Access
Associated with each account, group, and individual file is a list of
file access restrictions. Access restrictions apply to disk files only.
Their restrictions are based on the following:
* File access modes, such as reading, writing, saving, executing,
locking, and appending.
* User types, such as account librarians, group librarians, and account
members for whom certain access modes are allowed.
The access restrictions for any file describe who can access it and in
what manner.
Access Modes
Table 2-2 lists file access modes, the codes used to reference them, and
their meanings.
Table 2-2. File Access Modes
-----------------------------------------------------------------------------------------------
| | | |
| Access Modes | Mnemonic Code | Meaning |
| | | |
-----------------------------------------------------------------------------------------------
| | | |
| READ | R | Allows users to read files. |
| | | |
| LOCK | L | Permits a user to prevent concurrent access to a |
| | | file. Specifically, it permits the use of the |
| | | FLOCK and FUNLOCK intrinsics, and the |
| | | exclusive-access option of the FOPEN intrinsic, all |
| | | described in the MPE XL Intrinsics Reference Manual |
| | | (32650- 90028)). |
| | | |
| APPEND | A | Allows users to add information and disk extents to |
| | | files, but prohibits them from altering or deleting |
| | | information already written. This access mode |
| | | implicitly allows the LOCK (L) access modes |
| | | described above. |
| | | |
| WRITE | W | Allows users general writing access, permitting |
| | | them to add, delete, or change any information in |
| | | files. This includes removing entire files from |
| | | the system with the PURGE command. WRITE (C) |
| | | access also implicitly allows the LOCK (L) and |
| | | APPEND (A) access modes described previously. |
| | | |
| SAVE | S | Allows users to declare files within a group as |
| | | permanent, and to rename such files. This includes |
| | | the ability to create new permanent files with the |
| | | BUILD command. |
| | | |
| EXECUTE | X | Allows users to run programs stated in files with |
| | | the RUN command or the CREATE and CREATEPROCESS |
| | | intrinsics. |
| | | |
-----------------------------------------------------------------------------------------------
User Types
Table 2-3 lists user types, the codes used to reference them, and their
complete descriptions.
Table 2-3. User Types
-----------------------------------------------------------------------------------------------
| | | |
| User Type | Mnemonic Code | Meaning |
| | | |
-----------------------------------------------------------------------------------------------
| | | |
| Any user | ANY | Any user defined in the system. This |
| | | includes all categories defined below. |
| | | |
| Account librarian | AL | User with account librarian capability, who |
| user | | can manage certain files within the account |
| | | which may include more than one group. |
| | | |
| Group librarian user | GL | User with group librarian capability, who |
| | | can manage certain files within a home |
| | | group only. |
| | | |
| Creating user | CR | The user who created this file. |
| | | |
| Group user | GU | Any user allowed to access this group as |
| | | the logon or home group, including all GL |
| | | users applicable to this group. |
| | | |
| Account member | AC | Any user authorized access to the system |
| | | under this account. This includes all AL, |
| | | GU, and CR users under this account. |
| | | |
-----------------------------------------------------------------------------------------------
Users with system manager or account manager capability bypass the
standard file access restrictions. A system manager has unlimited access
to any file in the system, but can only save files in the manager's own
account. An account manager has unlimited access to any file in the
account, except one with a negative file code. The account manager must
have privileged mode (PM) capability to access a file with a negative
file code.
A file's group and account as well as your capabilities determine whether
you have access to the file. For example, group librarian capability
gives you special access to files in your home group. You do not have
special access to files in other groups.
Specifying File Access Restrictions
When a user tries to access a file, the system checks the account-level,
group-level, and file-level file access restrictions. Those restrictions
must give the user access rights at all three levels. If the user fails
to pass the security check at any level, the system denies the user
access to the file.
You set account file access restrictions when you create an account. You
set group file access restrictions when you create a group. As the
creator of a file, you can change its file level access restrictions with
the ALTSEC command.
When you specify file access restrictions at a certain level, you list
the file access modes available to each type of user. This listing has a
special format. For example, at the account level, you might assign READ
and EXECUTE access to any user and APPEND, WRITE, and LOCK access only to
account users. These sample file security provisions have the following
format:
(R,X:ANY;A,W,L:AC)
In this example, READ and EXECUTE access are permitted to any user.
APPEND, WRITE, and LOCK access are permitted to account members only.
Account-level File Security
The system manager sets the access restrictions that apply to all files
within a given account when creating the account. A system manager can
change the initial restrictions at any time (with the ALTACCT command).
For more information, refer to "System Manager Tasks" described later in
this chapter.
At the account level, the system recognizes two user types and five
access modes. You can assign the access modes to the user types in any
way you choose. The account-level user types are:
* Any user (ANY)
* Account member (AC)
The five account level access modes are:
* READ (R)
* LOCK(L)
* APPEND (A)
* WRITE (W)
* EXECUTE (X)
Refer to Table 2-2 for access mode descriptions and to Table 2-3 for user
type descriptions.
If you do not explicitly state file access restrictions for an account,
the system assigns the following default restrictions:
* For the SYS account, READ and EXECUTE access are permitted to all
users. APPEND, WRITE, and LOCK access are limited to account
members. Symbolically, these access restrictions are expressed as
follows: (R,X:ANY;A,W,L:AC).
* For all other accounts, READ, APPEND, WRITE, LOCK, and EXECUTE access
are limited to account members (R,A,W,L,X:AC).
Group-level Security
The account manager sets the file access restrictions that apply to all
files within a group when creating the group. They can be equal to or
more restrictive than the provisions specified at the account level. The
group's file access restrictions can also be less restrictive than those
of the account; such provisions effectively equate the group restrictions
with the account restrictions, because a user who fails a security check
at the account level is denied access at that point. The account manager
can change initial group file access restrictions at any time.
At the group level, the system recognizes five user types and six access
modes. You can assign the access modes to the user types in any
combination.
The five group-level user types are:
* Any user (ANY)
* Account librarian(AL)
* Group librarian (GL)
* Group user (GU)
* Account member (AC)
The group level file access modes are:
* READ (R)
* LOCK(L)
* APPEND (A)
* WRITE (W)
* SAVE(S)
* EXECUTE (X)
Refer to Table 2-2 for access mode descriptions and to Table 2-3 for user
type descriptions.
If you do not specify group file access restrictions, the following
default restrictions apply:
* For a public group (named PUB) whose files are normally accessible in
some way by all users within the account, READ and EXECUTE access are
permitted to any user; APPEND, WRITE, SAVE, and LOCK access are
limited to account librarian users, and group users (including group
librarians) (R,X:ANY;A,W,S,L:AL,GU).
* For a public group (named PUB) of an account (named SYS), the
following default restrictions apply: R,X,L:ANY;W,A,S:A,GU.
* For all other groups in the account, READ, APPEND, WRITE, SAVE, LOCK,
and EXECUTE access are limited to group users (R,A,W,S,L,X:GU).
File-level Security
When you create a file, it has the default file-level security provisions
assigned by MPE and the provisions assigned by the account and the group
to which it belongs. The creator of the file, and no one else, can
change the file-level security provisions with the ALTSEC command. All
access modes and all user types apply at the file level. Refer to Table
2-2 and Table 2-3 for their descriptions.
If no security provisions are explicitly specified by the creating user,
READ, APPEND, WRITE, LOCK, and EXECUTE access are permitted to all users
(R,A,W,L,X:ANY), for all files, by default.
Default File Access Restrictions
Because the total security for a file always depends on security at all
three levels, a file not explicitly protected from a certain access mode
may benefit from the default protection at a higher level. For example,
the default access restrictions at the file level allow the file to be
read by any user, but the restrictions at the group level allow access
only to group users. Thus, the file can be read only by a group user.
In summary, the default file access restrictions at the account, group,
and file levels combine to result in overall default file access
restrictions as shown in Table 2-4.
Table 2-4. Default File Access Restrictions
---------------------------------------------------------------------------------------------------
| | | | |
| | File | | Save Access |
| File | Reference | Access Permitted | To Group |
| | | | |
---------------------------------------------------------------------------------------------------
| | | | |
| Any file in public group | filename. PUB.SYS | (R,X:ANY; W:AL, GU) | AL, GU |
| of system account. | | | |
| | | | |
| Any file in any group in | filename. groupname.SYS | (R,W,X:GU) | GU |
| system account. | | | |
| | | | |
| Any file in public group | filename. PUB | (R, X:AC; W:AL, GU) | AL, GU |
| of any account. | accountname | | |
| | | | |
| Any file in any group in | filename.groupname. | (R,W,X:GU) | GU |
| any account. | accountname | | |
| | | | |
---------------------------------------------------------------------------------------------------
In other words, when the default security provisions are in force at all
levels, the standard user, with default user attributes, has:
* Unlimited access (in all modes) to all files in the logon group and
the home group.
* READ and EXECUTE access (only) to all files in the PUB group of the
individual's account, and in the SYS account's PUB group.
File Security Rules
Here is a summary of some important file security rules:
* General users can only create files in their own account.
* Only the creator can modify a file's security or rename the file.
* If a file has a lockword, that lockword is required to open the file.
* An account manager has unlimited access to every file within an
account. When accessing a protected file created by any other user
of the account, the manager must supply the lockword, but can use the
LISTFILE command to discover it. For example, the following command
will list the lockword for a file called SECRET:
LISTFILE SECRET
* The system manager has unlimited access to any file in the system, if
able to supply the lockword (which can be discovered with the
LISTFILE command). However, the system manager can save files only
in the logon account.
* The RELEASE command allows unlimited file access, and the SECURE
command secures a file that has been released. To release all
security provisions on a file called FREEME, enter:
RELEASE FREEME
To restore security provisions that were previously in effect for
FREEME, enter:
SECURE FREEME
* The ALTSEC command restricts access to specific files in a group to
which access is normally not restricted. This command can only be
used by the creator of the file. To allow WRITE access provision for
yourself only to a file named ACCESS that you created, enter:
ALTSEC ACCESS; (W:CR)
Refer to the MPE XL Commands Reference Manual (32650-90003) for further
information about the ALTSEC, LISTF, RELEASE, and SECURE commands.
MPE/iX 5.0 Documentation