IBM Support

CPF2225 Received Running Security Commands

Troubleshooting


Problem

Why do I get a CPF2225 error message when running a security-related command (for example, the CHGUSRPRF command)?

Resolving The Problem

Why do I get a CPF2225 error message when running a security-related command (for example, the CHGUSRPRF command)?

This is the result of the object Authorized User Table being used by another security-related command. A DLTUSRPRF or DSPAUTUSR command that takes a long time locks the Authorized User Table. Ending the job that has a lock on the Authorized User Table allows the other command to run successfully.
Method 1:

The following command can be used to display locks on the Authorized Table:
CALL QTNDSPLS ('QSYS/QSYUPTBL' *AUT)
The command will return one of the following messages:
'THERE ARE NO LOCKS ON THE SPECIFIED OBJECT/LOCATION/RRN'
or something similar to:
'STATUS OF ALL JOBS FOR THE ABOVE SPACE LOCATION:        
                                                         
999999/QUSER/QSQSRVR                         LSRD  HELD  
999999/QUSER/QSQSRVR                         LEAR  HELD'
The job indicated in the message is the one that is holding the lock on the Authorized User Table.  
Ending the job holding the lock on the Authorized User Table allows the other commands to run successfully.
Method 2:
If library QSPTLIB is installed, take the following steps:
Add QSPTLIB library to the library list using:
ADDLIBLE QSPTLIB
                                           
Once the library is added, run:                                                
QSPTLIB/DSPLCKSTS JOB(*ALL) OBJ(QSYS/QSYUPTBL) OBJTYPE(*ALL)      
The command will return one of the following messages:
'THERE ARE NO LOCKS ON THE SPECIFIED OBJECT/LOCATION/RRN'
or something similar to:
'STATUS OF ALL JOBS FOR THE ABOVE SPACE LOCATION:        
                                                         
999999/QUSER/QSQSRVR                         LSRD  HELD  
999999/QUSER/QSQSRVR                         LEAR  HELD'
The job indicated in the message is the one that is holding the lock on the Authorized User Table.  
Ending the job holding the lock on the Authorized User Table allows the other commands to run successfully.
Note:  If QSPTLIB is not currently installed, it can be installed by using option 22. QSPTLIB menu under the GO QMGTOOLS/MG menu:
To obtain QMGTOOLS follow the steps on the following link:
Method 3:
Call an IBM Support Representative to help you create an altered WRKOBJLCK to Use with Authorized User Table. You can create a WRKOBJLCK that allows you to find out what has a lock on the authorized user table (object type *AUT). The WRKOBJLCK that comes shipped with the system does not have the option to perform and WRKOBJLCK against an object of type *AUT; however, the command can be altered to perform a WRKOBJLCK against an object type of *AUT. After you create the new version of WRKOBJLCK, you can run WRKOBJLCK OBJ(QSYUPTBL) OBJTYPE(*AUT) and find out what job is locking the authorized user table.

[{"Type":"MASTER","Line of Business":{"code":"LOB68","label":"Power HW"},"Business Unit":{"code":"BU070","label":"IBM Infrastructure"},"Product":{"code":"SWG60","label":"IBM i"},"ARM Category":[{"code":"a8m0z0000000CHyAAM","label":"Security"}],"ARM Case Number":"","Platform":[{"code":"PF012","label":"IBM i"}],"Version":"All Versions"}]

Historical Number

24955111

Document Information

Modified date:
07 October 2024

UID

nas8N1017200