域控制器是如何验证客户端密码

为了说明身份验证过程,下图描述了登录尝试不起作用时发生的步骤。

image.png

  1. 客户端计算机将用户登录信息提供给域控制器。这包括用户帐户名和其密码的加密哈希。该信息可以发送到任何域控制器,并且通常发送到被标识为最接近客户端计算机的域控制器。

  2. 当域控制器检测到身份验证尝试不起作用并且返回STATUS_WRONG_PASSWORD,STATUS_PASSWORD_EXPIRED,STATUS_PASSWORD_MUST_CHANGE或STATUS_ACCOUNT_LOCKED_OUT的条件时,域控制器会将身份验证尝试转发给主域控制器(PDC)仿真器操作主机。本质上,域控制器查询PDC以权威性确定密码是否为当前密码。域控制器向PDC查询此信息,因为域控制器可能没有该用户的最新密码,但是根据设计,PDC仿真器操作主机始终具有最新密码。

  3. PDC仿真器操作主机将重试身份验证请求,以验证密码是否正确。如果PDC模拟器操作主机拒绝该错误密码,则PDC模拟器操作主机将为该用户对象增加badPwdCount属性。PDC是对用户密码有效性的授权。

  4. 失败的登录结果信息由PDC仿真器操作主机发送到身份验证域控制器。

  5. 身份验证域控制器还为用户对象增加了其badPwdCount属性的副本。

  6. 然后,进行身份验证的域控制器将响应发送到客户端计算机,以通知域控制器登录尝试无效。

只要该用户,程序或服务继续向身份验证域控制器发送错误的凭据,由于密码错误而失败的登录尝试将继续转发到PDC,直到达到错误登录尝试的阈值为止(如果您将其设置为政策)。发生这种情况时,该帐户将被锁定。


猜你喜欢

转载自blog.51cto.com/11258494/2491355