This page is a command-level reference for the three profile-lifecycle commands: CRTUSRPRF, CHGUSRPRF, and DLTUSRPRF. It covers parameters, defaults, and the mechanics of each command only. For what the special authorities, object authority, and adopted authority actually mean and how to design them, see IBM i Security in 2026: User Profiles, Object Authority, Adopted Authority, and Practical Security Patterns; this page assumes those concepts and focuses on the command syntax.
CRTUSRPRF
CRTUSRPRF USRPRF(name) PASSWORD(*NONE | *USRPRF | 'password')
STATUS(*ENABLED | *DISABLED) USRCLS(*USER | *SYSOPR | *PGMR | *SECADM | *SECOFR)
SPCAUT(*USRCLS | *NONE | special-authority-values)
INLPGM(program | *NONE) INLMNU(menu | MAIN | *SIGNOFF)
CURLIB(library | *CRTDFT) LMTCPB(*NO | *PARTIAL | *YES)
GRPPRF(name | *NONE) SUPGRPPRF(names | *NONE)
JOBD(job-description | QDFTJOBD) TEXT('description')
Verification level: IBM DOC CHECKED, against the IBM i 7.5 CRTUSRPRF command reference.
| Parameter | Default | What it decides |
|---|---|---|
USRPRF | None (required, positional 1) | The profile name |
PASSWORD | *NONE on the parameter table; *USRPRF-like behavior (password set to the profile name) is shown in IBM’s own example when PASSWORD is omitted — confirm the actual default on your release before relying on it | Sign-on password |
STATUS | *ENABLED | Whether the profile can sign on |
USRCLS | *USER | User class, which SPCAUT(*USRCLS) keys off |
SPCAUT | *USRCLS | Special authorities granted; *USRCLS derives them from USRCLS and the system’s QSECURITY level |
INLPGM | *NONE | Initial program run at sign-on |
INLMNU | MAIN | Initial menu |
CURLIB | *CRTDFT (resolves to QGPL) | Current library |
LMTCPB | *NO | Whether the user can change the initial program/menu/library or enter most commands at a command line |
GRPPRF | *NONE | Group profile |
SUPGRPPRF | *NONE | Up to 15 supplemental group profiles |
JOBD | QDFTJOBD in QGPL | Job description used when this user starts a job |
TEXT | *BLANK | Description |
A minimal create:
CRTUSRPRF USRPRF(JSMITH) PASSWORD('your-password-here') USRCLS(*USER) +
TEXT('J Smith - AP clerk')
Verification level: IBM DOC CHECKED. Not run.
Required authority to run CRTUSRPRF:
*SECADMspecial authority, which can be obtained through program adoption rather than held directly.*USEauthority to any initial program, initial menu, job description, message queue, output queue, or attention-key program named on the command.*CHANGEand*OBJMGTauthority to the group profile and any supplemental group profiles, if specified — adopted authority alone cannot supply*OBJMGTfor this.- Every special authority being granted to the new profile — the caller must already hold each one themselves.
The new profile automatically receives *CHANGE and *OBJMGT authority to itself; IBM’s documentation notes these should not be removed.
CHGUSRPRF
CHGUSRPRF USRPRF(user-profile) [PASSWORD(...)] [STATUS(...)] [USRCLS(...)]
[SPCAUT(...)] [INLPGM(...)] [INLMNU(...)] [CURLIB(...)] [LMTCPB(...)]
[GRPPRF(...)] [SUPGRPPRF(...)] [OWNER(...)] [GRPAUT(...)]
[USREXPDATE(...)] [USREXPITV(...)] [PTYLMT(...)]
Verification level: IBM DOC CHECKED, against the IBM i 7.5 CHGUSRPRF command reference.
USRPRF is the only required parameter; every other parameter defaults to *SAME, which leaves the current value untouched. That makes a targeted change safe to issue without restating the rest of the profile:
CHGUSRPRF USRPRF(JSMITH) STATUS(*DISABLED)
Verification level: IBM DOC CHECKED. Not run.
CHGUSRPRF USRPRF(JSMITH) PWDEXP(*YES) PASSWORD(*NONE)
Verification level: IBM DOC CHECKED. Not run. Forces a password reset and signs the profile out of password-based sign-on until a new password is set.
Parameters worth calling out:
| Parameter | Notes |
|---|---|
USREXPDATE / USREXPITV | Set an expiration date directly, or *USREXPITV with an interval of 1-366 days from the change. Defaults to *SAME like everything else |
OWNER | *USRPRF or *GRPPRF — who owns objects this user subsequently creates |
GRPAUT | Authority the group profile has to objects the user creates, when OWNER(*GRPPRF) |
MAXSTG / MAXSTGLRG | Storage limits in KB; specify only one of the two |
Required authority to run CHGUSRPRF:
*SECADMspecial authority.*OBJMGTand*USEauthority to the profile being changed.*USEauthority to any current library, program, menu, job description, message queue, print device, or output queue being set.- Every special authority being granted — the caller must already hold it.
- Granting
*SECADMto someone else requires the caller to hold both*ALLOBJand*SECADM. Granting*AUDITrequires*ALLOBJ,*SECADM, and*AUDIT. *OBJMGTand*CHANGEauthority to any group profile named inGRPPRForSUPGRPPRF.
DLTUSRPRF
Caution — destructive and not fully reversible.
DLTUSRPRFpermanently removes a user profile. WithOWNOBJOPT(*DLT)it also deletes every object the profile owns, not just the profile itself, and revoked authorities and EIM associations are not automatically restored by re-creating a profile of the same name. Confirm ownership transfer (OWNOBJOPT(*CHGOWN new-owner)) is what you actually want before running this against a production profile, and test against a non-production profile first.
DLTUSRPRF USRPRF(name) OWNOBJOPT(*NODLT | *DLT | *CHGOWN new-owner)
PGPOPT(*NOCHG | *CHGPGP new-group|*NONE)
EIMASSOC(*DLT | *NODLT)
Verification level: IBM DOC CHECKED, against the IBM i 7.5 DLTUSRPRF command reference.
| Parameter | Default | Behavior |
|---|---|---|
USRPRF | None (required) | The profile to delete. Several IBM-supplied profiles (QSYS, QSECOFR, QDFTOWN, and similar) cannot be named |
OWNOBJOPT | *NODLT | *NODLT blocks the delete if the profile owns any objects. *DLT deletes the owned objects along with the profile. *CHGOWN new-owner transfers ownership first |
PGPOPT | *NOCHG | *NOCHG blocks the delete if the profile is the primary group for any object. *CHGPGP new-group or *NONE reassigns that status first |
EIMASSOC | *DLT | Removes the profile’s Enterprise Identity Mapping associations. *NODLT leaves them |
The plain command fails as soon as the profile owns anything or is a primary group for anything:
DLTUSRPRF USRPRF(JSMITH)
Verification level: IBM DOC CHECKED. If JSMITH owns objects or is a primary group, this fails with the default NODLT/NOCHG options rather than deleting partially.
The practical pattern when a user is leaving and ownership should move to a caretaker profile:
DLTUSRPRF USRPRF(JSMITH) OWNOBJOPT(*CHGOWN QPGMR) PGPOPT(*CHGPGP *NONE)
Verification level: IBM DOC CHECKED. Not run. Transfers owned objects to QPGMR and clears JSMITH as primary group on anything that had it set.
Rules that change the outcome:
- A profile cannot be deleted while a user is actively running under it.
- Owned objects of type
*USRPRF,*RCT, and*AUTHLRalways pass toQDFTOWNregardless ofOWNOBJOPT; owned*PRDDFNobjects pass toQSYS. - A profile cannot simultaneously become both owner and primary group of the same object via a transfer —
*CHGOWN/*CHGPGPfail if that would be the result. - Granted authorities the deleted profile held are revoked automatically; there is no need to
RVKOBJAUTfirst. - With
OWNOBJOPT(*DLT), deletion follows the same restrictions asDLTLIB— for example, an owned object currently in use cannot be deleted, and the wholeDLTUSRPRFfails if it can’t complete.
Required authority to run DLTUSRPRF:
*SECADMspecial authority (obtainable via adoption), plus*OBJEXISTand*USEon the profile being deleted.*OBJEXISTon every object the profile owns that gets deleted, and for IFS objects without*ALLOBJ,*OBJEXISTplus*WXon the containing directory.- To delete a message queue the profile owns:
*OBJEXIST,*USE, and*DLTon that queue.
Common Mistakes
- Assuming
CHGUSRPRFwithoutOWNOBJOPT/PGPOPTapplies to a delete. Those two parameters belong toDLTUSRPRFonly;CHGUSRPRFhas no equivalent — it changes attributes of a profile that continues to exist. - Running
DLTUSRPRFon a profile that still owns objects, with the defaultOWNOBJOPT(*NODLT). It fails outright rather than deleting the profile and orphaning the objects. - Granting a special authority with
CHGUSRPRF SPCAUT(...)that the caller doesn’t hold themselves. The command fails — a profile can’t hand out authority it doesn’t have. - Expecting
PASSWORDto default predictably onCRTUSRPRF. IBM’s parameter table and its own worked example disagree on whether an omittedPASSWORDdefaults to*NONEor to the profile name; set it explicitly rather than relying on the default.
Summary
CRTUSRPRFneeds*SECADMand every special authority it grants; most attribute parameters default sensibly (STATUS(*ENABLED),USRCLS(*USER),LMTCPB(*NO)).CHGUSRPRFdefaults nearly every parameter to*SAME, so a targeted change only needsUSRPRFplus the parameters actually changing.DLTUSRPRFrefuses to delete a profile that owns objects or is a primary group unlessOWNOBJOPT/PGPOPTare set to transfer or delete that state first.
Sources: IBM i 7.5 CRTUSRPRF command, IBM i 7.5 CHGUSRPRF command, and IBM i 7.5 DLTUSRPRF command. All examples are documentation-checked only; none were compiled or run.
For the authority concepts behind these commands, read IBM i Security in 2026.