CPF1393: User profile disabled after too many sign-on attempts
CPF1393 is the message IBM i sends to QSYSOPR when it disables a user profile because the number of failed sign-on or password attempts reached the QMAXSIGN limit. The message names the profile and, when there is one, the device and subsystem.
Other names for this code
Also written as MSGCPF1393, CPF1393 user profile disabled, user profile has been disabled, AS400 profile disabled QSYSOPR, iSeries CPF1393, subsystem disabled user profile.
What it means
When failed attempts for a profile reach the QMAXSIGN value, and QMAXSGNACN is set to 2 or 3, the system changes the profile's status to *DISABLED. It then sends CPF1393 to the QSYSOPR message queue, and to QSYSMSG too if you've created that queue in QSYS. The user doesn't see CPF1393. The user sees CPF1394 the next time they try to sign on.
The message tells you who was disabled and where the last attempt came from. If a device name is shown, the failures came from an interactive session or a communications device. If no device is shown and the subsystem is QSYSWRK, QUSRWRK or QSERVER, a server job disabled the profile. That usually means a PC client was sending a wrong password, often retrying on its own.
A profile can also be disabled by hand with CHGUSRPRF. That doesn't send CPF1393.
Common causes
- A user typed the wrong password too many times on the sign-on display.
- A PC client, ODBC or JDBC data source, FTP script or mapped drive kept sending an old password after a change.
- A client that retries automatically used up the allowed attempts in seconds.
- Someone tried to guess the password for the profile.
How to find the problem
- Display QSYSOPR with
DSPMSG QSYSOPR, or QSYSMSG if you have it. Put the cursor on CPF1393 and press F1 to see the profile, device and subsystem. - From the help screen, press F9 for message details. It shows the job that sent the message. A server job name such as QZDASOINIT (database server) or QZLSFILE (file server) tells you which kind of client caused it.
- Search the history log with
DSPLOG LOG(QHST) MSGID(CPF1393)to see how often it happens and for which profiles. - If *AUTFAIL auditing is on, PW entries in QAUDJRN show each failed attempt with its source.
DSPUSRPRF USRPRF(name)shows the profile's current status and its count of attempts that weren't valid.
How to fix it
- Confirm with the user that the failures were theirs. If not, treat it as a security event.
- Re-enable the profile with
CHGUSRPRF USRPRF(name) STATUS(*ENABLED). Reset the password at the same time if the user has forgotten it, addingPWDEXP(*YES)to force a change at sign-on. - Fix the client that sent the bad password before you re-enable, or it will disable the profile again within minutes.
- Create QSYSMSG in QSYS (
CRTMSGQ QSYS/QSYSMSG) if you don't have it, so critical security messages don't get lost in QSYSOPR.
IBM documentation
IBM Display Message Descriptions (DSPMSGD). Use the documentation for your installed release.
This link opens the relevant IBM reference library or lookup instructions. Match the complete code and your installed product release; it is not a code-specific review.
Read the installed message description:
DSPMSGD MSGID(CPF1393) MSGF(QSYS/QCPFMSG)
Also inspect the full job log and second-level message text, including substitution values.
Related codes
Questions
Does the user see CPF1393?
No. CPF1393 goes to the system operator's message queue. The user sees CPF1394 when they next try to sign on.
Why does CPF1393 show no device?
A server job, not a display, disabled the profile. That points to a PC client or network service sending a wrong password, often from the QUSRWRK, QSYSWRK or QSERVER subsystem.
How do I re-enable the QSECOFR profile if it is disabled?
IBM documents that QSECOFR can still sign on at the console even when disabled, so sign on there and enable it with CHGUSRPRF.