You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决OPEN LDAP中的LDAP错误代码19:pwdFailureTime不允许用户修改

解决LDAP错误码19:pwdFailureTime不允许用户修改的问题

错误码19属于LDAP的约束违反(constraint violation),核心问题是pwdFailureTime是由LDAP服务器密码策略模块自动维护的属性,普通操作账号甚至部分管理员没有直接修改它的权限——你之前只修改pwdAccountLockedTime,但没处理权限或关联的策略配置,所以报错依旧。

以下是具体解决步骤:

  • 确认操作账号的权限
    检查你用来解锁账号的LDAP账号是否拥有pwdFailureTime、pwdAccountLockedTime这两个属性的写权限。在Apache Directory Studio中,查看目标用户条目的ACLs(访问控制列表),确保操作账号被允许对这两个属性执行修改/删除操作。

  • 通过标准解锁流程操作,而非手动改属性
    多数LDAP服务器(比如Apache Directory Server、带ppolicy插件的OpenLDAP)都有内置的账号解锁逻辑,正确操作方式:

    1. 在Apache Directory Studio中找到被锁定的用户条目,右键选择「Modify Entry」
    2. 添加修改项:选中pwdAccountLockedTime属性,操作类型选「Delete」,提交修改
    3. 部分服务器会自动清除pwdFailureTime,如果无法手动删除该属性,不用强行操作——服务器会在解锁后重置失败时间记录
  • 检查LDAP服务器的密码策略配置
    登录LDAP服务器管理后台或查看配置文件,确认密码策略是否限制了pwdFailureTime的修改权限:

    • 比如OpenLDAP的ppolicy模块中,pwdAllowUserChange是否仅允许修改密码,禁止修改失败时间类属性
    • 确保策略没有限制管理员账号对这些属性的操作权限
  • 命令行工具验证(可选)
    用ldapmodify工具执行解锁操作(替换占位符为你的实际信息):
    创建unlock.ldif文件:

    dn: uid=lockeduser,ou=users,dc=example,dc=com
    changetype: modify
    delete: pwdAccountLockedTime
    -
    delete: pwdFailureTime
    

    执行命令:

    ldapmodify -x -D cn=admin,dc=example,dc=com -W -f unlock.ldif
    

    如果执行时提示pwdFailureTime无法删除,说明服务器策略限制,只需保留删除pwdAccountLockedTime的命令即可。

内容的提问来源于stack exchange,提问作者Premchand Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 05:45:39