Получить sid из события и преобразовать его обратно в имя пользователя
Я пытаюсь использовать команду ниже, чтобы получить sid пользователя из определенного события, преобразовать его в имя пользователя и после этого выставить его значение.
$sid = Get-Winevent -FilterHashtable @{Logname='system';ID=1065} -MaxEvents 1 | Select User -ExpandProperty Userid
$objSID = New-Object System.Security.Principal.SecurityIdentifier ($sid)
$objUser = $objSID.Translate( [System.Security.Principal.NTAccount])
$objUser.Value
Я не мог найти причину, почему это не работает. Он не может декодировать имя пользователя.$objUser
должен хранить имя пользователя для SID. Я пытаюсь использовать его для пользователей домена. SID должен быть действительным, потому что я получаю его из существующего события.