Passwords changed through CA Identity Manager (IDM) remain in an Expired state in the RACF environment, requiring a password reset upon login. The following error is observed in the CA LDAP / RACF connector logs:
javax.naming.NamingException: [LDAP: error code 80 - ICH30001I UNABLE TO LOCATE USER ENTRY ####]; remaining name 'etracuserid=####,eTRACAdminGrp=Users,host=mf-sysa,o=org,c=us'
This issue occurs when the CA LDAP server is not configured to explicitly include the NOEXPIRE keyword during RACF ALTUSER commands. Without specific parameters in the slapd.conf file, RACF treats the password change as an administrative reset, which defaults to leaving the password in an expired state.
Additionally, an invalid or non-existent OWNER attribute in the environment can cause lookup failures (ICH30001I), preventing the connector from correctly processing the account update as a self-service or optimized change.
To ensure password changes do not trigger the RACF expiration flag, add the following parameters to the slapd.conf file. These should be placed immediately after the suffix line for your RACF database:
NOEXPIRE operand to the RACF ALTUSER command.A restart of the CA LDAP server is required for these configuration changes to take effect.
Ensure that the OWNER attribute for RACF accounts in Production is set to a valid RACF user or group (e.g., matching the connector user ID).
After the restart, perform a test password change through Identity Manager and verify that the user can log in to TSO without being prompted to change their password.
enableNoExpirePswd: When this is enabled in slapd.conf, the CA LDAP server automatically adds the NOEXPIRE operand to the RACF ALTUSER command during a password change. Without it, RACF defaults to an administrative reset which leaves the password expired.enableNoExpirePswdResume: This ensures that if an account is suspended due to expiration, it is resumed without the password being flagged as expired during the change.eTSelfChange: eTSelfChange and the OWNER attribute, these slapd.conf parameters act as a "global override" at the LDAP backend level. If they are missing, the backend will not generate the NOEXPIRE keyword, regardless of what IDM sends.