以下是一个使用PowerShell脚本获取域管理员成员过去30天登录历史记录的示例:
# 设置日期范围
$startDate = (Get-Date).AddDays(-30)
$endDate = Get-Date
# 获取域管理员组名
$group = "Domain Admins"
# 获取域管理员成员
$members = Get-ADGroupMember -Identity $group | Where-Object {$_.objectClass -eq "user"}
# 遍历每个成员
foreach ($member in $members) {
# 获取成员的登录历史记录
$loginHistory = Get-WinEvent -FilterHashtable @{
LogName = "Security"
ID = 4624
StartTime = $startDate
EndTime = $endDate
UserID = $member.SamAccountName
}
# 显示成员的登录历史记录
foreach ($event in $loginHistory) {
$eventTime = $event.TimeCreated
$eventUser = $event.Properties[5].Value
Write-Host "用户 $eventUser 于 $eventTime 登录。"
}
}
请注意,为了运行此脚本,您需要具有域管理员权限或运行脚本的用户必须具有足够的权限来访问安全日志。