查询 AD 帐户密码到期的用户

悦享人永久链接:http://yxzhao.com/2013/find-password-expired-ad-users/
转载请注明出处:悦享人-《查询 AD 帐户密码到期的用户》

可以使用 dsquery 命令行工具来获取符合一定条件的查询。用 dsquery user 命令可以执行与域用户相关的条件查询,如可以查询域帐号密码到期的用户等。

dsquery 有一系列的命令(Dsquery computer、Dsquery contact、Dsquery group、Dsquery ou、Dsquery site、Dsquery server、Dsquery user、Dsquery quota、Dsquery partition、Dsquery *),用来查询不同的活动目录对象。

更多关于 dsquery 命令的用法,可以参考官方文档:
dsquery user
http://technet.microsoft.com/en-us/library/cc725702(v=ws.10).aspx
dsquery
http://technet.microsoft.com/en-us/library/cc732952(v=ws.10).aspx

示例1:返回超过89天未更改密码的用户

dsquery user "OU=UserOU,DC=domain,DC=com" -server dc.domain.com -limit 0 -stalepwd 89

示例说明:
1.基本用法:dsquery user [OU-可选]
2.-server,指定域控制器-可选,不指定则查询当前登录的域
3.-limit,默认返回100条符合条件的记录,0为返回所有记录
4.-stalepwd,至少未更改过密码的时间,单位为天。如指定值为89,则返回89天以上未更改过密码的用户

示例2:返回超过89天未更改密码的且必须更改密码的用户

dsquery user "OU=UserOU,DC=domain,DC=com" -server dc.domain.com -limit 0 -stalepwd 89 | dsget user -samid -mustchpwd | find "yes"

示例说明:
1.与上面示例前半部分一致,“|” 是 PipeLine 用法,意思是将 “|” 前面命令返回的结果作为 “|” 后面命令的参数运行
2.第一个 “|” 前面的命令返回超过89天未更改密码的用户
3.第一个 “|” 后面第二个 “|” 前面的命令,-mustchpwd 是查询用户是否必须更改密码,返回 “yes” 或 “no”
4.第二个 “|” 后面的命令,查找前面的命令返回的结果里是否包含 “yes”
注意:如果用户名里包含字符 “yes” 也会作为结果返回

你可能感兴趣的:(windows,命令行,活动目录,dsquery)