Powershell远程计算机中的最后一个登录用户

Powershell远程计算机中的最后一个登录用户,powershell,Powershell,我想要一个脚本,该脚本收集来自组织计算机的所有登录,并显示最后一次用户登录以及计算机中最多用户的访问权限 我从域控制器运行此脚本,但我只获得计算机和上次登录,没有上次用户登录或登录频率 Get-ADComputer -Filter * -Properties * | FT Name, LastLogonDate, user -Autosize 您可以搜索计算机上的安全事件日志以获取其上次登录 $startDate = (Get-Date) - (New-TimeSpan -Day 5) $Us

我想要一个脚本,该脚本收集来自组织计算机的所有登录,并显示最后一次用户登录以及计算机中最多用户的访问权限

我从域控制器运行此脚本,但我只获得计算机和上次登录,没有上次用户登录或登录频率

Get-ADComputer -Filter * -Properties * | FT Name, LastLogonDate, user -Autosize

您可以搜索计算机上的安全事件日志以获取其上次登录

$startDate = (Get-Date) - (New-TimeSpan -Day 5)
$UserLoginTypes = 2,7
Get-WinEvent  -FilterHashtable @{Logname='Security';ID=4624;StartTime=$startDate}  | SELECT TimeCreated, @{N='Username'; E={$_.Properties[5].Value}}, @{N='LogonType'; E={$_.Properties[8].Value}} | WHERE {$UserLoginTypes -contains $_.LogonType}  | Sort-Object TimeCreated | SElect -last 1
这将搜索过去7天的交互式登录或解锁,并返回最近一次

更新以获得最多登录次数:

$startDate = (Get-Date) - (New-TimeSpan -Day 7)
$UserLoginTypes = 2,7
Get-WinEvent  -FilterHashtable @{Logname='Security';ID=4624;StartTime=$startDate}  | SELECT TimeCreated, @{N='Username'; E={$_.Properties[5].Value}}, @{N='LogonType'; E={$_.Properties[8].Value}} | WHERE {$UserLoginTypes -contains $_.LogonType}  | group UserName |  Sort-Object Count | Select -last 1

您可以搜索计算机上的安全事件日志以获取其上次登录

$startDate = (Get-Date) - (New-TimeSpan -Day 5)
$UserLoginTypes = 2,7
Get-WinEvent  -FilterHashtable @{Logname='Security';ID=4624;StartTime=$startDate}  | SELECT TimeCreated, @{N='Username'; E={$_.Properties[5].Value}}, @{N='LogonType'; E={$_.Properties[8].Value}} | WHERE {$UserLoginTypes -contains $_.LogonType}  | Sort-Object TimeCreated | SElect -last 1
这将搜索过去7天的交互式登录或解锁,并返回最近一次

更新以获得最多登录次数:

$startDate = (Get-Date) - (New-TimeSpan -Day 7)
$UserLoginTypes = 2,7
Get-WinEvent  -FilterHashtable @{Logname='Security';ID=4624;StartTime=$startDate}  | SELECT TimeCreated, @{N='Username'; E={$_.Properties[5].Value}}, @{N='LogonType'; E={$_.Properties[8].Value}} | WHERE {$UserLoginTypes -contains $_.LogonType}  | group UserName |  Sort-Object Count | Select -last 1

您无法从get-ADComputer登录用户。您需要解析计算机的安全日志,或使用登录脚本记录某些内容以收集此信息。您知道获取此信息的代码吗?您可以使用Get-EventLog security-InstanceId528@RanadipDutta事件ID随Windows Vista更改,现在为4624。您无法从get-ADComputer登录用户。您需要解析计算机的安全日志,或使用登录脚本记录某些内容以收集此信息。您知道获取此信息的代码吗?您可以使用Get-EventLog security-InstanceId528@RanadipDuttaWindows Vista更改了活动ID现在是4624。非常感谢,这段代码对我很好,但我需要最后一件事:我需要知道谁是从计算机多次登录的用户。例如,在一台计算机上的Active directory场景中,许多用户可以登录到一台计算机,但我需要知道谁是使用最多的用户。请帮帮我!!!!!您可以选择用户的$\ userid/sid。如果您想要一个计数,只需添加一个组即可。更新帖子真的很感谢,这段代码对我很好,但我需要最后一件事:我需要知道谁是从计算机多次登录的用户。例如,在一台计算机上的Active directory场景中,许多用户可以登录到一台计算机,但我需要知道谁是使用最多的用户。请帮帮我!!!!!您可以选择用户的$\ userid/sid。如果您想要一个计数,只需添加一个组即可。更新帖子