加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

active-directory – “dsquery computer -inactive x”忽略非常

发布时间:2020-12-13 23:55:27 所属栏目:Windows 来源:网络整理
导读:我继承了一个包含数百个长期死计算机帐户的AD环境.我想开始清理它们.如果我使用dsquery computer -inactive命令,它似乎忽略这些计算机,并且仅返回在最近几个月/周内处于活动状态但在给定时间段内未处于活动状态的计算机. 例如,如果我运行dsquery computer -i
我继承了一个包含数百个长期死计算机帐户的AD环境.我想开始清理它们.如果我使用dsquery computer -inactive命令,它似乎忽略这些计算机,并且仅返回在最近几个月/周内处于活动状态但在给定时间段内未处于活动状态的计算机.

例如,如果我运行dsquery computer -inactive 4,我会得到一台计算机.如果我运行dsquery计算机-inactive 3我得到大约五.如果我运行dsquery computer -inactive 1,我会得到一个大的列表.这些列表都没有显示非常旧的计算机帐户.

我误解了这个命令应该做什么吗?

dsquery computer -inactive x使用LastLogonTimeStamp属性来确定计算机是否处于非活动状态. LastLogonTimeStamp的两个特性是:

1)它非常松散,即无处接近实时.每次计算机登录到域时都不会更新此属性,即使更新它,也不会立即将其复制到其他域控制器.

2)它可以为null,在这种情况下,dsquery很可能会忽略它.

-stalepwd开关还可以帮助您识别不活动的计算机帐户.计算机帐户应每30天自动更新一次密码.但请注意,它使用pwdLastSet LDAP属性,该属性也可以为null. pwdLastSet是一个恼人的文件时间,但.Net / Powershell可以轻松地将其转换为人性化的日期:

PS C:Usersryan> Get-ADComputer -Filter * -Properties PasswordLastSet,LastLogonTimeStamp | ? { $_.PasswordLastSet -LT $(Get-Date).AddDays(-180) } | Select Name,PasswordLastSet,LastLogonTimeStamp | Sort-Object PasswordLastSet -Descending

上面的Powershell行将为您提供所有计算机帐户,其中pwdLastSet属性(Powershell将其转换为人类可读的PasswordLastSet)超过180天,最新的帐户将位于顶部.最旧的帐户和具有null pwdLastSets的帐户将位于底部.

(当然,您可以在计算机上禁用密码更改,但这是相对罕见的事情.)

这些具有空值的帐户通常意味着他们从未登录过域和/或从未更改过他们的密码.我确定可能会出现其他一些奇怪的用例,例如管理员预先安排计算机帐户,然后决定永远不会真正将计算机加入域,来自同一个林的其他子域的计算机帐户等你只需要调查那些.

如果您想阅读它,请参阅AskDS的LastLogonTimeStamp的更多信息:

http://blogs.technet.com/b/askds/archive/2009/04/15/the-lastlogontimestamp-attribute-what-it-was-designed-for-and-how-it-works.aspx

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读