使用 LDAP 提供程序设置和更改用户密码

若要设置用户密码,请使用 IADsUser.SetPassword 方法。

Active Directory 的 LDAP 提供程序使用三个进程之一来设置密码(iPlanet 等第三方 LDAP 目录不使用此密码身份验证过程)。 该方法可能因网络配置而异。 设置密码的方法顺序如下:

  • 首先,LDAP 提供程序尝试通过 128 位 SSL 连接使用 LDAP。 为了使 LDAP SSL 成功运行,LDAP 服务器必须安装相应的服务器身份验证证书,并且运行 ADSI 代码的客户端必须信任颁发这些证书的颁发机构。 服务器和客户端都必须支持 128 位加密。
  • 其次,如果 SSL 连接失败,LDAP 提供程序将尝试使用 Kerberos。 在 Windows 2000 上,Kerberos 可能不支持跨林身份验证。 Kerberos 的后期增强功能支持跨林身份验证。
  • 第三,如果 Kerberos 不成功,LDAP 提供程序将尝试 NetUserSetInfo API 调用。 在以前的版本中,ADSI 在线程运行的安全上下文中调用 NetUserSetInfo,而不是调用 IADsOpenDSObject.OpenDSObjectADsOpenObject 中指定的安全上下文。 在更高版本中,已更改此项,以便 ADSI LDAP 提供程序在调用 NetUserSetInfo 时模拟 OpenDSObject 调用中指定的用户。

若要更改用户密码,请使用 IADsUser.ChangePassword 方法。 与 SetPassword 一样,此方法可以使用多个进程来更改密码。 修改密码的方法顺序如下: