Windows Server
Terminalserver-Anmeldungen eines Benutzers per PowerShell auslesen
Mit dem folgenden PowerShell-Befehl siehst du, wann sich ein bestimmter Benutzer per RDP am Terminalserver angemeldet hat und von welcher IP-Adresse. Den gewünschten Benutzer trägst du in $filterUser ein.
![]()
# Benutzer, dessen Anmeldungen angezeigt werden sollen
$filterUser = "benutzername"
Get-WinEvent -LogName 'Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational' -FilterXPath "*[System[(EventID=1149)]]" |
ForEach-Object {
$event = [xml]$_.ToXml()
[pscustomobject]@{
'Time' = $_.TimeCreated
'Username' = $event.Event.UserData.EventXML.Param1
'Source-IP' = $event.Event.UserData.EventXML.Param3
}
} |
Where-Object { $_.Username -eq $filterUser }Hinweis
Das Ereignis 1149 protokolliert eine erfolgreiche Netzwerk-Authentifizierung, also den Zeitpunkt, an dem sich jemand mit gültigen Anmeldedaten verbunden hat. Ein Abmeldezeitpunkt steht darin nicht, eine Sitzungsdauer lässt sich daraus deshalb nicht berechnen. Dafür brauchst du die Ereignisse 21 (Anmeldung), 23 (Abmeldung) und 24 (Trennung) im Protokoll Microsoft-Windows-TerminalServices-LocalSessionManager/Operational.