web-dev-qa-db-ja.com

ターミナルサーバーへの最後のログインのタイムスタンプを決定する(2003)

サーバーを移行していますが、ユーザーが最後にログインした時間のリストが必要です。現在ログインしているユーザーを取得するだけでは、リモートターミナルサーバーとしては役に立たず、特にグローバル企業では全員が同時にログインするわけではないためです。 login.batでスクリプトを作成できることは理解していますが、時間の経過とともにデータを入力するには時間がかかります。 ADまたはコマンドラインからこれを行う簡単な方法はありますか?

ADはすべてのサーバーで使用されるため、特定の1つのサーバーに最後にログインした場合にのみ関心があります。

ありがとうございました

4
Jon Weinraub

PowerShellを使用しないのはなぜですか?このような何かがあなたを始めるはずです:

Get-EventLog -LogName Security -Newest 1000 | Where-Object {$_.EventID -eq 4624 -or 4634 } | ForEach-Object { $_.Message -split '\n' } | Select-String "Account Name"


監査ポリシー を適切に設定して、Windowsが最初にイベントをログに記録するようにする必要があります(これがデフォルト設定ではない理由は私を超えています)。さらに、別の EventIDs528および540)Windows Server2003の場合。

4
user62491