上一次AD用户登录?


26

我注意到,Active Directory中的用户数比公司的实际员工数多。

有没有一种简单的方法来检查多个Active Directory帐户,并查看是否有一段时间没有使用过的帐户?这应该可以帮助我确定是应该禁用还是删除某些帐户。


如果在MMC中使用AD Snapin,并且能够查看用户对象,则将获得“属性编辑器”选项卡,在其中可以看到“ lastLogin”的属性。
bgmCoder 2015年

Answers:


22

O'Reiley的Active Directory食谱在第6章中进行了解释:

6.28.1问题:您想确定哪些用户最近未登录。

6.28.2解决方案

6.28.2.1使用图形用户界面

  1. 打开“ Active Directory用户和计算机”管理单元。
  2. 在左窗格中,右键单击该域,然后选择“查找”。
  3. 在“查找”旁边,选择“常见查询”。
  4. 选择自上次登录以来的天数旁边的天数。
  5. 单击立即查找按钮。

6.28.2.2使用命令行界面

dsquery用户-inactive <NumWeeks>

要获取更多信息,请参见配方6.28


1
+1我一直在避免除草,因为我不知道怎么做。谢谢。
cop1152 2009年

不要指望过时的帐户始终处于非活动状态。通常会创建“测试”帐户,以供单元测试使用或作为有效用户的辅助帐户。这些帐户可能看起来不活跃,但是应该删除,因为它们提供了未经审核的系统访问权限。
克里斯·纳瓦

1
顺便说一下,这仅在森林/域为2003 Native或更高版本的情况下有效。在2003年之前,DC对每个用户都有自己的上次登录记录。Dumpsec(如下所述)很不错,它通过向每个域控制器发送垃圾邮件来获得最后的真实登录,并汇总了每个DC上登录者的列表。
2009年

@marty希望,由于Server 2003即将终止,因此2003年之前的安装量不会太多。
乔尔·科尔

6

该脚本源自http://synjunkie.blogspot.com/2008/08/powershell-finding-unused-ad-accounts.html;自2015年12月7日起,该URL不再可用。您可以将此信息输出到CSV文件,您可以在Excel中查看/过滤。

get-qaduser * -sizelimit 0 | select -property name,accountexpires,pass*,accountisdisabled,lastlog*,canonicalname | export-csv -path d:\Passwords.csv

假设您不想#Type blah blah blah在CSV文件的开头,请-notypeexport-csv
northben

网址已损坏。:(
2015年

该URL已损坏,但您仍然可以访问它的存档:Powershell-查找未使用的AD帐户
PeteWiFi

3

值得注意的是,每个域控制器上存储的上次登录时间都不会在域控制器之间复制,实际上有两个属性可以存储上次登录时间,一个属性可以复制,但是每14个(我认为)。如果准确的时间对您很重要,那么我将使用第三方工具来查询每个域控制器(我们有90个!),我们使用了一个称为True Last Logon的工具,我建议您使用它。


0

我使用DumpSec(来自Somarsoft的免费软件工具)来进行此操作:DumpSec 有用,可以找到陈旧的计算机帐户:)


0

在执行此过程时,请记录该文件,包括您运行的步骤以及禁用/删除的帐户。在某个时候,审核员会询问您如何删除旧帐户,并且您需要文档。


0

一种非常快速和肮脏的方法/建议:

将每个可疑帐户的密码设置为过期,并在下次登录时要求重置。在每个帐户的描述字段中放置一个星号。请等待一周左右,然后重新检查已标记的帐户,以查看哪些帐户仍需要重设密码。禁用违规者,等待服务台呼叫,然后重新启用那些正在休假的人。

另一个:

或者,您也可以将可疑用户列表发送给您的人事/人事部门,查看其中是否有任何人会验证他们是否确实还在工作。

多一个:

最后,我相信,如果您打开“ Active Directory用户和计算机”并展开AD查询工具,则可以创建一个查询,其中详细说明了您要查找的内容。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.