Da hilft nur ein regelmäßiger DSPUSRPRF in eine Outfile.
Da steht dann drin, wann das Kennwort abläuft (Anzahl Tage).
Dem User teilst du das mit und erstellst einen Dialog für die Änderung des Kennwortes (verschlüsselt).
Per SQL-CALL rufst du dann eine Prozedur oder per ProgrammCall ein Programm auf, dass unter *OWNER QSECOFR (oder anderen *SECOFR) läuft, dass dann einen CHGUSRPRF durchführt.

Vergisst der User das Ändern oder das Kennwort ist bereits abgelaufen kann man dies dann auch über eine interne andere Anmeldung an einem *SECOFR-Profil machen.