当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 使用 PowerShell 获取 AD 中过期用户帐户的列表

作者:精品下载站 日期:2024-12-14 06:14:00 浏览:15 分类:玩电脑

使用 PowerShell 获取 AD 中过期用户帐户的列表


最初发布于 2017 年 7 月,更新于 2019 年 8 月

如何使用 PowerShell 获取过期用户帐户的列表

Active Directory 管理员执行的最重要的任务之一是确保及时报告过期的用户帐户,并采取措施立即删除或禁用它们。请注意,您为其设置到期日期的用户帐户只是临时创建的。例如,您可能创建了多个用户帐户以允许供应商登录到 Active Directory。同样,您可能已经为承包商创建了用户帐户。如果您想查看哪些帐户已过期,请执行以下 PowerShell 命令:

Search-ADAccount -Server $ThisDomain -Credential $Creds -AccountExpired -UsersOnly -ResultPageSize 2000 -resultSetSize $null| Select-Object Name, SamAccountName, DistinguishedName

请注意再次使用 Search-ADAccount PowerShell cmdlet,但这次使用了不同的开关。我们使用的开关是AccountExpired。顾名思义,AccountExpired 开关可帮助您收集已过期的用户帐户。

如何使用 PowerShell 获取帐户到期日期

要获取 Active Directory 中所有已启用用户的 AD 帐户到期日期,您可以使用带有 -AccountExpirationDate 属性的 Get-ADUser cmdlet。在 Windows Server 上的 PowerShell ISE 中运行以下脚本:

Get-ADUser -Filter 'enabled -eq $true' -Properties AccountExpirationDate | Select sAMAccountName, distinguishedName, AccountExpirationDate

您将获得 AD 用户的完整列表的到期日期和时间。

如果您需要特定组的摘要,则需要通过添加 -SearchBase 参数来修改脚本。您可以通过添加 |export-csv -NoTypeInformation 将数据通过管道传输到 .csv 文件(例如,将其导入 Excel 或在文本编辑器中打开)

假设我们需要导出 enterprise.com 域的“IT”组织单位的帐户到期日期列表,我们将在 DC 上执行的表达式如下:

Get-ADUser -Filter 'enabled -eq $true' -Searchbase "OU=IT,DC=enterprise,DC=com" -Properties AccountExpirationDate | Select SAMAccountName, distinguishedName, AccountExpirationDate |export-csv C:TempExpiryDate.csv -NoTypeInformation

总而言之,只需最少的 Microsoft Powershell 脚本技能 Search-ADAccount,结合 Get-ADUser 就可以帮助您解决许多临时 AD 清理和分析任务。

需要更多适用于 Active Directory 的 PowerShell 脚本吗?在一篇博文中查找所有最需要的 Active Directory PowerShell 命令。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯