如何在没有管理员用户的情况下通过 JNDI 在 Active Directory 中更改过期密码
Howto change expired password over JNDI in Active Directory without admin user
我想使用 JNDI 更改 Active Directory 中用户的密码。问题是,该用户的密码已过期。当我创建 InitialDirContext
时,它立即给我一个错误(data 773
表示密码已过期):
javax.naming.AuthenticationException: [LDAP: error code 49 -
80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext
error, data 773, v1db1
我知道 IBM LDAP 有解决这个问题的特殊绑定,但我找不到 AD 的东西。
是否可以为没有管理员帐户的用户更改过期密码?我想提供当前密码和新密码并更改它。
好的 - 我已经弄明白了:
AD 中的密码有两种过期方式:
- 管理员通过设置标志将其设置为过期
- 到期日期已到
在第一种情况下无法通过 LDAP 更改密码,我将收到 data 773
。在第二种情况下应该可以改变。
我想使用 JNDI 更改 Active Directory 中用户的密码。问题是,该用户的密码已过期。当我创建 InitialDirContext
时,它立即给我一个错误(data 773
表示密码已过期):
javax.naming.AuthenticationException: [LDAP: error code 49 - 80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 773, v1db1
我知道 IBM LDAP 有解决这个问题的特殊绑定,但我找不到 AD 的东西。
是否可以为没有管理员帐户的用户更改过期密码?我想提供当前密码和新密码并更改它。
好的 - 我已经弄明白了:
AD 中的密码有两种过期方式:
- 管理员通过设置标志将其设置为过期
- 到期日期已到
在第一种情况下无法通过 LDAP 更改密码,我将收到 data 773
。在第二种情况下应该可以改变。