IBM Support

File Server Security Exit Programs and Use of QPWFSERVER AUTL Considerations

Troubleshooting


Problem

OS/400® V3R1M0 introduced the IFS as well as the ability to access all file systems under the root IFS. Previous to this release, there was only the QSYS.LIB file system which was commonly indirectly secured through the command line instead

Resolving The Problem

OS/400 V3R1M0 introduced the IFS as well as the ability to access all file systems under the root IFS. Previous to this release, there was only the QSYS.LIB file system which was commonly indirectly secured through the command line instead of object level authorities. The QPWFSERVER authorization list (AUTL) was also introduced at this time to help system administrators secure the QSYS.LIB file system from being accessed by remote clients through System i Access file server, and later NetServer file server or file serving between System i systems. By setting Public authority on the QPWFSERVER AUTL to *EXCLUDE, the users are restricted from accessing QSYS.LIB file system by these methods, unless the user is explicitly listed as an authorized user or has *ALLOBJ special authority.

Another method of securing a System i system is with security exit programs. The QIBM_QPWFS_FILE_SERV exit point is used for System i Access file serving, NetServer file serving, QFileSvr.400 access and QNTC access. Regardless of the programming language being used to write the exit program, there is the potential that the program will need to access the QSYS.LIB file system, most commonly for global locale information. The method to access QSYS.LIB file system is dependent on the runtime of the program language being used and how the runtime references QSYS.LIB file system, either by native I/O or by IFS naming.

A situation may occur when Public authority on the QPWFSERVER AUTL has been set to *EXCLUDE and a security exit program compiled to use adopted authority to include *ALLOBJ special authority still encounters CPFA09C "Not authorized to object. Object is /QSYS.LIB/QLGPCMA.LOCALE" or a similar file. There will also be a matching AF audit journal entry for each occurrence. Although the program should have sufficient authority to use QSYS.LIB with the program owner having *ALLOBJ special authority, the processing of the security check on the QPWFSERVER AUTL does not seem to take the adopted authority into consideration.

This issue occurs when the security exit program was compiled to use an activation group other than *CALLER, like *NEW, default or specifically named. You may use DSPPGM to verify what activation group the program is using. If the activation group is other than *CALLER, the program must be recompiled to use *CALLER.

[{"Type":"MASTER","Line of Business":{"code":"LOB57","label":"Power"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG60","label":"IBM i"},"Platform":[{"code":"PF012","label":"IBM i"}],"Version":"7.1.0"}]

Historical Number

498608553

Document Information

More support for:
IBM i

Software version:
7.1.0

Operating system(s):
IBM i

Document number:
635373

Modified date:
11 November 2019

UID

nas8N1013485

Manage My Notification Subscriptions