The security exits, FOP2OS00 and FOP2OS01, are distributed with Optim. FOP2OS00 determines access privilege on the basis of the owner and the security status for the object. FOP2OS01 uses System Authorization Facility (SAF) calls for security authorization and, if access privilege cannot be determined by the SAF call, the same security as provided by FOP2OS00 applies. If neither distributed exit meets the needs of a site, the site must write its own exit routine.
The distributed exit FOP2OS00 determines access privilege for an object on the basis of the owner and security status for the object. The owner is the user that last modified the object or, if the object has never been modified, the user that created the object.
A user can assign security for an object on the Object Attributes panel or the default security setting applies.
FOP2OS00 is distributed as a load module in the SFOPLLIB library. To use the supplied load module, specify 00 as the Object Security Suffix on the Site Options panel.
FOP2OS01 uses SAF calls for security authorization.
(It is assumed that the user reading this section has a working knowledge of SAF facilities; a detailed explanation of SAF processing is beyond the scope of this Customization Guide.)
FOP2OS01 is distributed in source format in the Optim™ sample library. To use FOP2OS01, you must assemble and link the exit into the Optim load library. To use the unmodified exit, name the load module FOP2OS01 and specify 01 as the Object Security Suffix on the Site Options panel. If you customize the exit to satisfy site requirements, rename the load module to FOP2OSnn, where nn is any two-digit number from 02 through 99. You can then enable the new exit by specifying the two-digit number as the Object Security Suffix on the Site Options panel.
The FOP2OS01 security exit establishes access privilege in three steps. Privilege is established as follows:
When you use the FOP2OS01 exit for security, and a user who requests access to an object is not the owner of the object, Optim executes an SAF call using a parameter list.
The SAF call used by FOP2OS01 uses the following parameter list.
PSTRT.objtype.ssn.objname
AD for Access Definition
CD for Compare Definition
CM for Column Map
TM for Table Map
AC for Archive Collection
PK for Optim Primary Key
RL for Optim Relationship
LT for Legacy Table
ED for IMS™ Environment Definition
RD for IMS Retrieval Definition
PR for Column Map Procedure
For example, FOPDEMO.TM1 for a Table Map, or FOPDEMO.SAMPLE.AD1 for an Access Definition. See Naming Conventions in the Common Elements Manual for more information about object names.
Using SAF, access to an object is denied if the user has no authority.
Access is granted according to the following rules:
DELETE
GET
INDEX
STATUS
UPDATE
INDEX
STATUS
UPDATE
INDEX