サーバーを移行していますが、ユーザーが最後にログインした時間のリストが必要です。現在ログインしているユーザーを取得するだけでは、リモートターミナルサーバーとしては役に立たず、特にグローバル企業では全員が同時にログインするわけではないためです。 login.batでスクリプトを作成できることは理解していますが、時間の経過とともにデータを入力するには時間がかかります。 ADまたはコマンドラインからこれを行う簡単な方法はありますか?
ADはすべてのサーバーで使用されるため、特定の1つのサーバーに最後にログインした場合にのみ関心があります。
ありがとうございました
PowerShellを使用しないのはなぜですか?このような何かがあなたを始めるはずです:
Get-EventLog -LogName Security -Newest 1000 | Where-Object {$_.EventID -eq 4624 -or 4634 } | ForEach-Object { $_.Message -split '\n' } | Select-String "Account Name"
監査ポリシー を適切に設定して、Windowsが最初にイベントをログに記録するようにする必要があります(これがデフォルト設定ではない理由は私を超えています)。さらに、別の EventIDs (528
および540
)Windows Server2003の場合。