Skip to main content
Version: 23.1

LSAM Object Authority Matrix

The IBM i LSAM Installation instructions advise that an object authority matrix must be configured if the LSAM Administrator will not be QSECOFR or another super user profile with *ALLOBJ authority. This section describes the resources available and the procedures that can be used to implement the object authority matrix.

LSAM Object Authority Table

The basis for a revised object authority matrix is provided by SMA in a pair of LSAM Object Authority tables. These tables are distributed and installed with the original LSAM software product object authority matrix data already loaded. That is, the object authority table files include data that describe the actual object authority assigned to each table and file in the LSAM software product, wherever the default authorities do not apply.

The default authority rules for LSAM object authority are these:

  • All libraries and objects are owned by user SMANET, except where the object authority table designates QSECOFR as the owner of certain programs.
  • *PUBLIC is granted *USE authority to the LSAM libraries, but is excluded from any authority to most of the objects they contain. In other words, all authority for *PUBLIC is revoked for all objects, and only the authorities specified in the object authority table are granted.
  • The LSAM Restricted Mode user profile, SMASAV, is granted certain authorities that are defined in the object authority table.
  • The IBM i system operator, QSYSOPR, is registered in the default LSAM object authority tables with authority to use only some very basic LSAM features that are normally required for daily (or periodic) LSAM operation. The name of this user profile could be replaced in the object authority table, for example, with a user-defined operator name such as SMAOPER.
  • The object authority table contains definitions of all special authorities that will be granted to any file, program or other object. If a special authority is not egistered in the LSAM object authority tables, that authority may be lost (revoked) whenever the LSAM authority management utilities are used or when LSAM software updates are applied.

The LSAM function that may be used to modify the object authority tables is explained in more detail in the Screens and Windows section of this topic below.

LSAM Operator Authorities

The IBM i LSAM default installation delivers the LSAM software with sufficient authority for the default IBM i system operator, QSYSOPR, to perform the following minimal LSAM operations:

  • Enter the LSAM menu system (but use only the authorized functions)
  • Start or stop the LSAM subsystem and server jobs, including the SMA File Transfer server
  • Check the status of the LSAM server subsystem and jobs
  • Work with Tracked Jobs (refer to the topic about Job Tracking for more information about the WRKTRKJOB command)

To enable QSYSOPR to perform these minimal operator functions, the LSAM software objects listed in the LSAM object authority table have *USE authority granted specifically to the user profile QSYSOPR. It is possible to disable QSYSOPR from performing these LSAM operator functions by changing the LSAM object authority table to remove or replace the authority granted to User ID 1, or other User ID field that names QSYSOPR. Whether QSYSOPR is removed or replaced, the LSAM Set Object Authority functions (or command) is then used to apply the new object authorities. This procedure is explained in more detail in a following section of this topic.

To view the specific object authorities required for the minimal list outlined above, use the LSAM menu 9, function 8: Work with object authority. From the list display, function key <F15> may be used to access the subset window. Specify subset option 6, then type QSYSOPR in the window user name field. Once <Enter> is pressed to apply the subset rule, the list of object authorities will be limited to only the objects that have authority granted to QSYSOPR. The actual fields that enable the authority for QSYSOPR are typically not visible in the list display. Use option 5=Display to examine each object detail in order to see the authority granted to QSYSOPR.

danger

Only the site security officer should be allowed to use the LSAM function of Work with Object Authority. The information displayed by this function should be kept confidential. The action options and function keys supported by this function provide direct access to IBM i commands such as GRTOBJAUT.

LSAM Special Authorities

IBM i LSAM user sites with high security requirements may need to be aware of some special authorities that have been programmed into the LSAM software. This proprietary information is made available to the site security officer in the LSAM object authority table, where it may be viewed using the LSAM menu function Work with object authority.

Use the Subset function (F15) from the Work with object authority list to discover the lists of programs that are owned by QSECOFR, and/or programs that run under the authority of OWNER (rather than USER). Wherever possible, programs that adopt the *OWNER authority are owned by the LSAM user SMANET rather than by QSECOFR. However, the programs owned and operated under authority of QSECOFR were created so that critical functions could be performed by either the LSAM features or by an LSAM Administrator without requiring that the IBM i user be granted certain general authorities that could be deemed risky. So the feature of using this form of adopted authority should actually help to assure system security.

Although it is possible for the site security officer to use the LSAM object authority tools to change these parameters and disable the adopted authority techniques, SMA does not recommend making these changes. SMA cannot assure that the LSAM software will operate as designed without these authorities. If it appears necessary to consider this type of change to the special object authorities, please contact SMA Support first and request a consultation so that the implications of any such changes can be discussed.

SMA, while it cannot warrant or guarantee fitness for a particular purpose, does state that it has made an effort to assure that programs designed to use adopted authority are (1) specifically limited in purpose and (2) designed to prevent their use as a means of gaining access to unauthorized authority or other functions. Some additional, SMA proprietary information about the purposes of each program adopting special authority can be made available to the site security officer of licensed SMA software users upon request.

LSAM Menu Function Authorities

The table below lists the primary command or program that is called by each of the IBM i LSAM Menu functions. This information provides a useful starting point for the purpose of granting or restricting authority to the various LSAM functions. This information is required for the purpose of defining the object authority matrix that is mentioned in this topic and in the IBM i LSAM Installation instructions. The object authority matrix is based on two tables of object authority information supplied as part of the LSAM software database. User-defined extensions to these tables of authorities can be granted or revoked by using the LSAM menu 9, option 8. Work with object authorities.

In addition to the table of LSAM Menu functions below, the security officer who will modify the object authority matrix will need to use the Object Reference Flow Chart utility (command REFFLOW) that has been provided with the IBM i LSAM software. This utility is explained in a section that follows the menu functions table.

LSAM Menu Functions

Menu/FunctionDescriptionProgram or Command
LSAM Main MenuLSAM menus have *USE authority granted to *PUBLIC. Menu system security is enforced at the object level (command or program) of each menu function. The STRSMA command in library SMAGPL and its command processor program are restricted from public use, so that authority can be granted on a per-user basis to control who has access to the LSAM Menu system. The same applies to the alternate direct access command to the LSAM menu system: LSAMENU. (See LSAMENU Command.)LSAMNUE0 (menu)
1.Job track menuLSAMNUE1 (menu)
2.Message management menuLSAMNUE2 (menu)
3.Events menuLSAMNUE3 (menu)
4.Operator replay menuLSAMNUE4 (menu)
5.Restricted mode menuLSAMNUE5 (menu)
6.LSAM management menuLSAMNUE6 (menu)
7.LSAM ParametersCALL LSAPARR00
8.SMA File Transfer menuLSAMNUE8 (menu)
9.PTF and Security menuLSAMNUE9 (menu)
Job Track Menu LSAMNUE1 (menu)
1.Job track parametersCALL TRKPARR00
2.Job track logs (WRKTRKJOB)CALL LSALOGR00
3.Start job track (STRJOBTRK)STRJOBTRK
4.End job track (ENDJOBTRK)ENDJOBTRK
5.Check job track status (JOBTRKSTS)JOBTRKSTS
6.Maintain dynamic variablesCALL LSAVARR00
7.Job tracking configurationCALL TRKJOBR30
8.Start job capture (STRCAPJOB)STRCAPJOB
9.End job capture (ENDCAPJOB)ENDCAPJOB
10.Display captured jobs (DSPCAPJOB)DSPCAPJOB
11.Work with captured jobs (WRKCAPJOB)WRKCAPJOB
Message Management Menu LSAMNUE2 (menu)
1.Message management parametersCALL TRPMSGR03
2.Message management logsCALL LSALOGR10
3.Start Message management (STRMSGMNG)STRMSGMNG
4.End Message management (ENDMSGMNG)ENDMSGMNG
5.Check Message management status (TRPMSGSTS)TRPMSGSTS
6.View job completion message table (DSPPFM LSAMSGF00)DSPPFM (IBM i)
7.Message Management Performance ParametersCALL TRPMSGR40
8.Display Captured Message Data logCALL OPRLOGR40 PARM('M')
9.Display Data Capture Debug log (response rules log)CALL CAPLOGR10 PARM('M')
10.Work with Message Data Capture DefinitionsCALL TRPMSGR30
11.Work with Captured Data Response RulesCALL OPRRPYR50 PARM('M')
12.Maintain Dynamic VariablesCALL LSAVARR00
Events and Utilities Menu LSAMNUE3 (menu)
1.Event ManagementCALL LSAEVTR02
2.External Event PasswordCALL LSACONR00
3.Work with SCANSPLF ApplicationsCALL LSAJORR50
4.Work with SPLF Scan RulesCALL LSAJORR40
5.Work with Captured Data Response RulesCALL OPRRPYR50
6.Maintain dynamic variablesCALL LSAVARR00
7.LSAM Utility configurationCALL LSAUTLR30
8.Display Captured Data logCALL OPRLOGR40
9.Display data capture debug logCALL CAPLOGR10
10.Data Export/Import Utilities menuGO LSAMNUEA
11.Client eMail Management menuGO LSAMNUEB
Data Export/Import Utilities Menu LSAMNUEA (menu)
1.Work with Export batchesvCALL EXIEXPR00
2.Export a data set (LSAEXPDTA)LSAEXPDTA
3.Display Export Activity/Error LogCALL EXILOGR00 PARM('E')
4.Work with Import batchesCALL EXIIMPR00
5.Import new data set (LSAIMPDTA)LSAIMPDTA
6.Display Import Activity/Error LogCALL EXILOGR00 PARM('I')
7.Export/Import options configurationCALL EXICFGR30
Client eMail Management Menu LSAMNUEB (menu)
1.Work with Client eMail Data (WRKCLTEML)WRKCLTEML
2.Work with Message Text Source MembersCALL EDTEMLTXTC PARM('*LIST')
3.Generate eMail Request (GENEMLREQ)?GENEMLREQ ??OPCONJOB('0')
4.Display eMail Activity LogsCALL EMLLOGR00
5.Display Error Log (DSPPFM EMLLOGF10)DSPPFM EMLLOGF10
6.Maintain Dynamic VariablesCALL LSAVARR00
7.Client eMail ConfigurationCALL CLTEMLR30
There is no menu 7Main menu function 7 is a call to the LSAM Parameters function.CALL LSAPARR00
Operator Replay Menu LSAMNUE4 (menu)
1.User managementCALL LSAUSRR00
2.Operator Replay scriptsCALL OPRRPYR10
3.Operator Replay logsCALL OPRLOGR00
4.Operator Token/Variable managementCALL OPRVARR00
5.Work with Screen Capture definitionsCALL OPRRPYR40
6.Work with Captured Data Response RulesCALL OPRRPYR50
7.Operator Replay configurationCALL OPRRPYR30
8.Display Captured Data logCALL OPRLOGR40
9.Display data capture debug logCALL CAPLOGR10
10.Maintain Dynamic VariablesCALL LSAVARR00
11.Client eMail Management menuGO LSAMNUEB
Restricted Mode and Multi-step Job Menu LSAMNUE5 (menu)
1.Maintain scriptsCALL SAVRSTR20
2.Setup environmentCALL SAVRSTR21
3.History of the last useCALL SAVRSTR05
5.Maintain Multi-step job scriptsCALL MLTJOBR10
6.View Multi-step job logDSPPFM MLTLOGF00
7.Maintain dynamic variablesCALL LSAVARR00
LSAM Management Menu LSAMNUE6 (menu)
1.Start LSAM (STRSMASYS)STRSMASYS
2.End LSAM (ENDSMASYS)ENDSMASYS
3.Check LSAM subsystem statusCALL CHKLSAC00
4.Manage LSAM loggingCALL SMAMNGLOGR PARM('MANAGE')
5.View LSAM logsCALL SMAMNGLOGR PARM('VIEW')
6.Work with LSAM Servers (WRKSMASVR)WRKSMASVR
7.LSAM Parameters configurationCALL LSAPARR00
8.Alternate Job Notify menuGO LSAMENUEC
Alternate Job Notify Menu LSAMNUEC (menu)
1.Work with job notify subsystemsCALL JOBNFYR10
2.View job notify message logCALL JOBNFYR20
3.Start job notify serverSTRSMASVR SERVER(JOBNFY)
4.End job notify serverCALL JOBNFYC02
5.Check LSAM subsystem statusCALL CHKLSAC00
7.Job notify configurationCLAL JOBNFYR30
SMA File Transfer Menu LSAMNUE8 (menu)
1.Start SMAFT Server (STRSMAFT)STRSMAFT
2.End SMAFT Server (ENDSMAFT)ENDSMAFT
3.Work with SMAFT jobs (WRKSFTJOB)WRKSFTJOB
4.Manage SMAFT loggingCALL SFTMNGLOGR PARM('MANAGE')
5.View LSAM logsCALL SMAMNGLOGR PARM('VIEW')
6.View SMAFT logsCALL SFTMNGLOGR PARM('VIEW')
7.SMAFT ParametersCALL SFTPARR00
8.Work with SMAFT Network Address TranslationCALL SFTNATR00
PTF and Security Menu LSAMNUE9 (menu)
1.Work with LSAM PTFsWRKPTFCTL
2.Master PTF request, load and apply (SMAPTFINS)SMAPTFINS
3.Request PTF information or save files (SMAPTFREQ)SMAPTFREQ
4.Load PTF information or save files (SMAPTFLOD)SMAPTFLOD
5.Apply cumulative PTF (SMAPTFCUM)SMAPTFCUM
6.Apply single PTF (SMAPTFAPY)SMAPTFAPY
7.PTF options configurationCALL LSAPTFR30
8.Work with object authorityWRKSPLAUT

LSAM Object Reference Flow Chart

An object authority matrix must be defined in order to enable LSAM user profiles with restricted authorities or to add functions to the list of the LSAM-authorized operator. The task of creating this user-defined object authority matrix depends on granting or revoking authority to (1) the primary program or command listed in the table of LSAM Menu Functions and (2) all the sub-programs and files (and sometimes other objects) referenced by each of these.

Instead of publishing a hard list of LSAM software object references, SMA provides a database file that contains the analysis data of almost every object referenced by the LSAM software. The IBM i security officer can use either of the following commands to view a formatted list of objects referenced by LSAM menu functions.

REFFLOW -- Program Reference Flow Chart

The command REFFLOW displays a list of the programs, files and some other objects referenced by the named LSAM menu, command or program. This list may also be transferred to a printable report using the F9=Print function key from the interactive list display.

The REFFLOW command requires that the interactive job library list be set to the library list of an existing LSAM environment. This means the REFFLOW command can be used from the command entry line of the LSAM Menu system (if the user is not restricted from command line usage). From outside of the LSAM menu system, this command can only be used if the interactive job's library list was previously set equal to an LSAM environment. The interactive job library list can be set (outside of the LSAM menu system) by using the LSAM command in library SMAGPL: SMASETLIBL (refer to Commands and Utilities for more information about this command).

REFFLOW command syntax

REFFLOW OBJ(object_name) LEVELS(n) SAVE(x) WRKLIB(lib_name)
  • OBJ: The name of an LSAM menu, command or program.
  • LEVELS: The number of nesting levels to show in the reference flow chart, 1 -- 9, default is 5. Too few levels can omit important references, but too many levels may create a list that is too long if there are recursive program calls.
  • SAVE: Save analysis work file: Y = yes, N = no (discard temporary work file), E = use existing work file that was previously saved, to be found in the library named by the WRKLIB parameter. The default value is N. Each work file is named according to the OBJ name. Saving work files and using them as existing work files makes the command run much faster and it saves system disk space by avoiding creation of deleted objects (that are not removed from disk until the next IPL).
  • WRKLIB: Name of the library where the analysis work file will be saved. The default value is QTEMP. If the library is QTEMP, the work file will be discarded when the interactive job ends, although work files in QTEMP may be re-used as long as the same interactive session exists. The LSAM database library SMADTA may be used for this purpose, although increasing the size of the content of SMADTA will add extra size and time when the SMASUP command is used to extract a save file of the entire SMADTA LSAM database library. It is possible to use any other library name to which the user is authorized. This library name must be specified if the SAVE parameter is set to either Y=Yes or E=Existing.

REFFLOW command examples

REFFLOW OBJ(LSAPARR00)

This example shows that it is only necessary to name the LSAM menu, command or program in order to use this command. The default values for each other command parameter will be used.

REFFLOW OBJ(LSAPARR00) LEVELS(9) SAVE(E) WRKLIB(SMADTA)

This example requests that a full analysis up to the maximum of 9 levels be performed for the LSAM Parameters maintenance program that is called from the LSAM Main menu (refer to the table of LSAM Menu Functions, above). The SAVE parameter says that the analysis was previous run and the analysis data can be used again for this execution of the command. The existing analysis for this program had previously been saved to library SMADTA.

REFFLOW command usage

It is possible to perform an analysis of an entire LSAM menu from a single use of the REFFLOW command. However, a shorter list may be obtained by specifying one of the programs or commands that is called by the LSAM menu system, as listed in the LSAM Menu Functions table, above.

Each sub-program referenced by an LSAM menu command or called program must be authorized for USE by the user profile that will be authorized to use the menu function. Most of the database files that are reference by an LSAM menu function must be authorized for CHANGE (which includes the data authorities of Add, Update and Delete) by the user being authorized to use the function. Some files are only required for input to the referenced programs; this is shown in the REFFLOW list under the Format/Use/Description column. In this case, the authorized user only needs USE authority to that file, and CHANGE authority should not be provided if the file content is to be protected from update by the authorized user.

The values shown under the USE column of the REFFLOW display or report include:

  • I = input (requires only *USE authority, READ data authority)
  • O = output (requires ADD data authority)
  • U = update (requires UPDATE data authority)

The object references list produced by the REFFLOW command intentionally eliminates references to the many common IBM i system calls that are typically included in every compiled user program. The reference list may not include a reference to various IBM i functions that may be embedded within a program call to an IBM i API. Another example of a notably absent reference is that the LSAM validation list does not appear in the analysis of the LSAM function for User Management. These kinds of expected exceptions in the LSAM object reference analysis will become evident when the newly authorized user attempts to use a new function for the first time. It might be necessary for a system support technician to analyze the user's job log in order to determine which authorities are still required to fully enable an LSAM function for a new or restricted user profile.

The list display produced by the REFFLOW command also supports execution of the DSPOBJWU command for any object that is found in the displayed flow chart list.

A printed version of the REFFLOW list may be obtained using the function key F9=Print.

DSPOBJWU -- Display Object Where Used

It is possible to discover where a given program, database file or other LSAM software object is used in the LSAM software system with the LSAM utility command DSPOBJWU.

The DSPOBJWU command requires that the interactive job library list be set to the library list of an existing LSAM environment. This means the DSPOBJWU command can be used from the command entry line of the LSAM Menu system (if the user is not restricted from command line usage). From outside of the LSAM menu system, this command can only be used if the interactive job's library list was previously set equal to an LSAM environment. The interactive job library list can be set (outside of the LSAM menu system) by using the LSAM command in library SMAGPL: SMASETLIBL (refer to Commands and Utilities for more information about this command).

DSPOBJWU command syntax

DSPOBJWU OBJ(object_name) TYPE(object_type)
  • OBJ = the name of the LSAM object to be studied. The named object must be one of the valid types. LSAM objects that are not one of these types will not be found in the supplied LSAM object reference master file.
  • TYPE = must be one of the valid values:
    • *DTAARA = data area
    • *FILE = database file (physical or logical view). This is the default value for the TYPE parameter.
    • *PGM = program
    • *SRVPGM = service program
    • *MENU = one of the LSAM menus (refer to the table of LSAM Menu Functions, above)
    • *CMD = command

DSPOBJWU command examples

DSPOBJWU OBJ(LSAPARF00) TYPE(*FILE)

This example will produce a list of all programs and service programs that use the LSAM Parameters control physical file, LSAPARF00.

DSPOBJWU OBJ(SFTMNGLOGR) TYPE(*PGM)

This example will produce a list of all programs, service programs, commands and menus that call the program SFTMNGLOGR.

DSPOBJWU command usage

This command might be useful when it is necessary to revoke authority to a particular database file, such as an LSAM control file. This command lists every other LSAM program, command or menu that is found to make reference to the named object within the LSAM object reference master file that was provided with the LSAM software.

The DSPOBJWU command may be executed for most objects that show in the REFFLOW displayed list by typing option 6=DSPOBJWU next to the listed object.

The list display produced by the DSPOBJWU command also supports execution of the REFFLOW command for any menu, program or service program that is found in the displayed reference list.

A printed version of the DSPOBJWU list may be obtained using the function key F9=Print.