如何在没有管理员用户的情况下在Active Directory中通过JNDI更改过期密码

时间:2015-04-28 14:10:15

标签: java active-directory ldap

我想使用JNDI在Active Directory中更改用户的密码。问题是,该用户的密码已过期。当我创建InitialDirContext时,它会立即给我一个错误(data 773表示密码已过期):

  

javax.naming.AuthenticationException:[LDAP:错误代码49 -   80090308:LdapErr:DSID-0C0903A9,评论:AcceptSecurityContext   错误,数据773,v1db1

我知道IBM LDAP有特殊的绑定来解决这个问题,但我找不到AD的东西。

是否可以为没有管理员帐户的用户更改过期密码?我想提供当前和新密码并进行更改。

1 个答案:

答案 0 :(得分:1)

好的 - 我已经弄清楚了:

AD中的密码有两种方式可以过期:

  1. 管理员通过设置标记
  2. 将其设置为已过期
  3. 已达到到期日期
  4. 在第一种情况下,无法通过LDAP更改密码,我将收到data 773。在第二种情况下,应该可以改变。