如何在 Active Directory 中查询密码过期的用户?

2024-01-08

我需要查询 Active Directory 以获取密码即将过期的用户列表。执行此操作的明显(且简单)方法是:

dsquery user -stalepwd n 

问题是我需要添加额外的过滤器以仅查找特定安全组中的用户。这对于具有内置 -stalepwd 选项的“dsquery user”语法来说很难做到,因此我一直在使用“dsquery * -filter”选项,它允许您使用 LDAP 查询语法。不幸的是,虽然通过 LDAP 查询应用其他过滤器相对容易,但我在过滤密码期限大于 n 的用户时遇到了麻烦。

有谁知道使用“dsquery * -filter”方法而不是“dsquery user -stalepwd”方法过滤旧密码的语法(或者甚至可能)。


您可以编写一个 LDAP 查询,通过比较用户对象上的 pwdLastSet 属性来比较“过时”密码:

(&(objectClass=person)(objectClass=User)(pwdLastSet<=n))

ActiveDirectory对此时间戳使用非常特定的格式。我相信这是一个文件时间,但我会在网上仔细检查。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Active Directory 中查询密码过期的用户? 的相关文章

随机推荐