DSPUSRPRF的UPCHGD字段异常更新原因及规避方案咨询
异常现象产生原因
UPCHGD(用户配置文件变更日期)字段记录的是用户配置文件对象本身的属性变更时间,和记录用户登录行为的*上次使用日期(LASTUSED)*是完全独立的两个字段,二者不存在关联,即使账户长期停用、无任何登录操作,只要用户配置文件的属性被修改,就会触发UPCHGD更新,常见触发场景包括:
- 管理员手动执行
CHGUSRPRF命令修改了该停用用户的任意属性,包括修改账户描述、所属用户组、权限限制、密码策略等非登录相关属性,都会触发UPCHGD更新 - 系统级批量用户调整操作,比如统一调整某批次用户的密码有效期、权限继承规则、对象访问权限等,已停用用户如果被纳入调整范围,也会触发字段更新
- 第三方权限管理、审计类工具的后台自动同步操作,若工具配置了全量用户属性同步规则,停用用户的属性被工具后台修改时也会更新UPCHGD
- 对用户配置文件对象本身的权限调整、所属所有者变更等操作,即使不修改用户的业务属性,同样会触发该字段更新
避免UPCHGD字段被随意更新的操作方案
- 对已确认停用的用户,完成
CHGUSRPRF USRPRF(目标用户名) STATUS(*DISABLED)停用操作后,额外调整该用户配置文件对象的访问权限:执行EDTOBJAUT OBJ(目标用户名) OBJTYPE(*USRPRF)命令,仅保留最高权限安全管理员组的更改权限,移除其他所有用户、角色的修改权限,从权限层面避免非授权修改 - 执行批量用户属性调整操作前,先通过
DSPUSRPRF *ALL *OUTFILE输出全量用户清单,过滤掉STATUS为*DISABLED的已停用用户后再执行批量操作,避免误调整停用用户属性 - 启用停用用户配置文件的操作审计:执行
CHGOBJAUD OBJ(目标用户名) OBJTYPE(*USRPRF) OBJAUD(*ALL)命令,监控所有对该对象的修改操作,出现非预期的UPCHGD变更时可直接追溯操作人、操作时间和执行的具体命令 - 若使用第三方用户管理类工具,单独配置停用用户同步排除规则,避免工具全量同步时自动修改停用用户的属性
内容的提问来源于stack exchange,提问作者Sergio Bannino
相关产品推荐
相关产品推荐

